Public: anyone can read this; the crew can change it.

Data migration: a platform app's Postgres goes into the drop and then into the forge app's store, with a receipt #647

open not picked up yet opened this
opened this

Pillar: P4 Forge in a link (#590), under Just go forge (#643). One run, fresh from main. Planned: held until the owner sends the crew (#642).

Outcome. For an app with a Postgres database on the platform, a guided export lands a dump in the app's drop and an import loads it into the forge app's own store, with row counts and checksums, reversible until cut-over.

Today. Nothing moves data between the platform and the forge.

The path: the owner on a migrating app reaches the data line; primary action import; next the receipt, then the checklist.

Acceptance.

  • [ ] Export: the owner runs one shown command (or the forge runs it with a connection string given once, never stored) producing a dump in the drop (#M2).
  • [ ] Import into the app's production data (its SQLite or the app's declared store), with a receipt: tables, row counts and checksums on both sides.
  • [ ] Undo restores the app's data from the snapshot taken before import, until cut-over.
  • [ ] Minimal, not bare: one primary next action; looks of the path at phone and desktop widths on the pull.

Done means reachable:

  • Page: the app page's migration checklist, data line
  • MCP: migrate_data {repo, dump, apply?} (dry-run first)
  • Test: import receipt matches; undo restores
  • Look: the receipt

Removes / says what it removes: nothing removed.

Start from: src/apps/data.ts, src/snapshot/, the drop (#M2), src/actions/migrate.ts.

Must not touch: the release workflow, the chart, the old platform's repositories (read only).

commented

Live triage (automatic, not written by a person): filed under P4 Forge in a link, which it names.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs