carlos / platform Public

merge: app deletion — the trash, the 30-day cooloff, and the ceremonial purge (#56)

App deletion: trash, 30-day cooloff, purge — and the console remembers tombstones
Paul Campbell f11e8c5b0da09181b115f591a8743c10e158478a parent 749fc22parent b5a10fe
29 files changed, +5419 −42
  • apimode.go +72 −0
  • apps.go +318 −0
  • apps_test.go +370 −0
  • docs/superpowers/plans/2026-08-04-deletion-policy.md +697 −0
  • docs/superpowers/specs/2026-08-04-deletion-policy-design.md +321 −0
  • internal/console/apicli.go +200 −2
  • internal/console/apicli_test.go +401 −0
  • internal/console/authcli.go +6 −0
  • internal/console/deletion_test.go +306 −0
  • internal/console/materialize.go +221 −16
  • internal/console/materialize_test.go +311 −0
  • internal/console/ownership.go +232 −3
  • internal/console/server.go +17 −0
  • internal/console/store.go +218 −9
  • internal/console/store_test.go +239 −0
  • internal/console/templates/apps.html +2 −0
  • internal/console/templates/trash.html +54 −0
  • internal/console/view.go +46 −0
  • internal/domains/reconcile.go +123 −3
  • internal/domains/reconcile_test.go +443 −0
  • internal/host/agent.go +35 −4
  • internal/host/host_test.go +72 −5
  • internal/provision/reconcile.go +34 −0
  • internal/provision/reconcile_test.go +79 −0
  • internal/release/production.go +14 −0
  • internal/release/production_test.go +64 −0
  • internal/release/trash.go +165 −0
  • internal/release/trash_test.go +347 −0
  • main.go +12 −0
apimode.go

Loading diff…

apps.go

Loading diff…

apps_test.go

Loading diff…

docs/superpowers/plans/2026-08-04-deletion-policy.md

Loading diff…

docs/superpowers/specs/2026-08-04-deletion-policy-design.md

Loading diff…

internal/console/apicli.go

Loading diff…

internal/console/apicli_test.go

Loading diff…

internal/console/authcli.go

Loading diff…

internal/console/deletion_test.go

Loading diff…

internal/console/materialize.go

Loading diff…

internal/console/materialize_test.go

Loading diff…

internal/console/ownership.go

Loading diff…

internal/console/server.go

Loading diff…

internal/console/store.go

Loading diff…

internal/console/store_test.go

Loading diff…

internal/console/templates/apps.html

Loading diff…

internal/console/templates/trash.html

Loading diff…

internal/console/view.go

Loading diff…

internal/domains/reconcile.go

Loading diff…

internal/domains/reconcile_test.go

Loading diff…

internal/host/agent.go

Loading diff…

internal/host/host_test.go

Loading diff…

internal/provision/reconcile.go

Loading diff…

internal/provision/reconcile_test.go

Loading diff…

internal/release/production.go

Loading diff…

internal/release/production_test.go

Loading diff…

internal/release/trash.go

Loading diff…

internal/release/trash_test.go

Loading diff…

main.go

Loading diff…