Skip to content

fix(deployment): align Neon root cutover automation - #54

Merged
xiaoland merged 2 commits into
mainfrom
agent/neon-project-root-migration
Aug 13, 2026
Merged

fix(deployment): align Neon root cutover automation#54
xiaoland merged 2 commits into
mainfrom
agent/neon-project-root-migration

Conversation

@xiaoland

Copy link
Copy Markdown
Member

What changed

  • record the completed Neon project-root migration and the new root/default production topology
  • reset a sanitized preview-base clone from production to runtime identity before PR branches inherit it
  • make preview and production Heroku delivery accept an already-running identical container image as an idempotent no-op
  • document the encrypted restore, recovery branch, preview lineage, retired project, and operational invariants

Why

The project migration removed the provider-required legacy master ancestry by moving production into a new Neon project whose root is production. During cutover, two pre-existing automation assumptions surfaced:

  1. a copied preview-base retained the immutable production database identity even after its application rows were sanitized, so preview bootstrap correctly refused it
  2. Heroku may decline to create a new release when the exact image is already running, while delivery incorrectly required every release command to increment the release version

Impact

  • production and open PR previews already run on the new Neon project
  • future preview-base replacement is atomic, data-free, and bootstrap-compatible
  • repeated delivery of an identical image no longer reports a false failure
  • no credential or production row data is committed

Validation

  • Ruff: passed
  • Pyrefly: 0 diagnostics
  • targeted Pytest suite: 23 passed
  • preview and production composite Action YAML: parsed successfully
  • migration evidence: matching value-free manifests and normalized schema dumps
  • production and rebuilt preview Core readiness: HTTP 200
  • production and PR feat(extension): add Twitter setup wizard backend #52 PostgREST read/write/JWT denial contract: passed

@xiaoland
xiaoland marked this pull request as ready for review August 13, 2026 13:02
@xiaoland
xiaoland merged commit 8b48b9b into main Aug 13, 2026
7 checks passed
@xiaoland
xiaoland deleted the agent/neon-project-root-migration branch August 13, 2026 13:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant