Skip to content

Project notion decommission complete

As of 2026-07-03, the Notion decommission is complete (both phases). All bot reads/writes/crons that previously touched Notion now go through the CreatorTrack spine (forge_workspace_capture / /api/* endpoints) or lifeos Postgres wellness.* tables: habit check-ins -> /api/apps/habits, tasks -> /api/tasks PATCH, orient/food-log/fitness/tasks-checklist -> the CreatorTrack spine, wellness crons -> Postgres wellness.*, time-blocks -> CreatorTrack Calendar, Hevy->Notion mirror retired. Commit 5d88385 (31 files) deleted scripts/forge_notion_api.py; grep -rniE notion scripts/ returns zero live code references (only cosmetic comments/retired-tool-name literals remain). Three obsolete habit timers (instantiate/streaks/alias-backfill) are disabled; forge-wellness-pg-sync.timer and forge-morning-report-snooze-check.timer are kept. Six bots (inbox-capture, lifeos-coordinator, general-purpose, notify-bot, tasks-checklist, fitness-app) were restarted and confirmed healthy (NRestarts=0, no tracebacks, no Notion errors).

Why: Justin's real notes are now native in CreatorTrack; Notion was legacy and fully retired per his no-bulk-import/repoint-don't-copy preference.

Known gaps still open: (1) jwvr/nova/fishing/bass brand workspaces and orient "areas" have no CreatorTrack home yet, degrade to empty rather than erroring (parked in handoff creatortrack-brand-workspaces-todo-2026-07-03); (2) wellness daily summary and fitness retro have no CreatorTrack sink (log-only); (3) Meals API has no delete route (a "decommission-test-DELETE" test row and an "ZZTEST notion-decommission smoke" Inbox note were left for Justin to clean up manually). Full detail: memory/handoffs/notion-decommission-2026-07-03.md.

Transferable preferences (still apply to any future system, not Notion-specific): - Per-brand data isolation, not unified. Justin rejected a single unified Tasks DB with a Brand multi-select; he wants separate Tasks/Projects structures per brand with identical schemas (Life, JWVR, Nova, Fishing, Bass), so bot tooling can route by brand with one uniform tool. Cross-brand views should always be read-only aggregations on top of isolated source data, never a merged source-of-truth. Apply this same per-brand-isolation default when designing any new task/project surface (e.g. CreatorTrack workspaces). - Free-tier default. Justin ran Notion on the Free plan (no Notion AI, no full teamspaces) and routed AI-assisted sorting through the Telegram brain instead of paying for built-in AI. Default assumption for any SaaS evaluation: check the free tier's real limits before assuming a paid AI add-on is needed; Forge/Claude usually substitutes for it (see feedback_ai_native_tool_selection.md).

How to apply: Never suggest routing new work through Notion or forge_notion_api.py (it no longer exists). If asked about Notion integration, point to CreatorTrack instead.

Archived implementation detail (dead system, forensic reference only)

The following docs describe the pre-decommission Notion implementation in detail (DB scaffold + IDs, the internal-API client, the Habits schema, a view-calculation render bug, and the full API playbook). They all reference forge_notion_api.py, which is deleted. Moved to memory/general/_archive/superseded-2026-07-09/ 2026-07-09 rather than deleted outright, since the implementation pattern (public API vs undocumented internal API via token_v2 cookie) could be useful if a similar integration is ever built against another Notion-like tool: - reference_notion_scaffold.md (DB IDs, workspace shape) - reference_notion_internal_api.md (cookie-auth internal API client) - reference_notion_habits_schema.md (Habits log Option B schema) - reference_notion_view_calc_render_ui_trigger.md (calc footer needs one UI click to bootstrap render) - notion-api-playbook.md (full public+internal API usage playbook)

[merged 2026-07-09 from project_notion_decommission_complete.md (incl. its own duplicate addendum), feedback_notion_per_brand_tasks_preference.md, and reference_notion_free_plan_no_ai.md; originally auto-memory sessions a823ed9a-1ac8-45b0-abc9-b76a38c40030 and 79ab1f94-3ad7-4e81-a492-c5e849e3eb9e]