In-flight work from 2026-06-05 that was sitting uncommitted on feat/agent-pipeline-bridge for 10 days. Moved here to a clean branch off main so the bridge branch can stay at its committed state (the DEFERRED Phase 2a snapshot, see stwl-labs/ubiquitous-invention#3). Touched areas: - apps/web/app/(app)/[workspaceSlug]/settings/runs/page.tsx — runs page UI iteration - apps/web/server/routers/{backlog,runs}.ts — router updates - apps/web/app/(app)/[workspaceSlug]/plans/[planSlug]/[epicSlug]/[taskSlug]/page.tsx — new deep-link route - apps/web/components/backlog/workflow-prompt-section.tsx — new component - config/CursorSync.md — coordination doc tweak - docs/operations/README.md + 2026-06-05-db-drift-reconcile-oauth-tables.sql — operations ops note + reconcile script - plans/Plan-agent-coordination/Epic-task-as-runnable-unit/Task-{workflow-prompt-task-detail-ui,deep-link-runs-to-task-detail}.md — 2 task specs This is a working-tree snapshot, not a finished PR. Rebase, split, or amend as needed when picking it back up. Co-authored-by: Cursor <cursoragent@cursor.com>
15 lines
1.3 KiB
Markdown
15 lines
1.3 KiB
Markdown
# Operations runbooks
|
|
|
|
One-shot scripts and notes for operational fixes that aren't part of the
|
|
normal app flow. Each file is dated so the chronology is obvious.
|
|
|
|
Anything in this folder is **historical**. Don't re-run scripts here
|
|
without reading them first — most assume a specific broken state and
|
|
will fail or corrupt a healthy one.
|
|
|
|
## Inventory
|
|
|
|
| Date | File | What it fixed |
|
|
|------|------|---------------|
|
|
| 2026-06-02 | [`2026-06-02-db-drift-reconcile.sql`](./2026-06-02-db-drift-reconcile.sql) | Reconciled CT 102 `tasks` DB after years of `drizzle-kit push` left the migration ledger empty. Created the two tables that had never made it in (`markdown_backlog_items`, `cursor_sync_mappings`) and stamped all 8 migrations as applied. |
|
|
| 2026-06-05 | [`2026-06-05-db-drift-reconcile-oauth-tables.sql`](./2026-06-05-db-drift-reconcile-oauth-tables.sql) | Authentik / GitHub / Google SSO was 500'ing on the OAuth callback with `relation "accounts" does not exist`. The 2026-06-02 reconcile had stamped 0000 as applied without verifying every 0000 table existed. Idempotently created the auth-adjacent tables that the OAuth path touches (`accounts`, `sessions`, `verification_tokens`, `user_email_identities`, `workspace_invites`, `audit_log`, `agent_runs`) and backfilled `user_email_identities` from `users`. Did not touch the ledger. |
|