Summary
Repeated deploys hid the reserved demo farm and field behind soft deletion, then failed their unique slugs. The publisher now restores and reuses their IDs, preserves published imagery metadata, and refuses customer-owned reserved identities before business writes.
private Bun 1.4.4 and child check
-> native migration, failures stop startup
-> reserved-identity ownership check
-> restore stable demo identities and refresh derived catalogConsumes released Stacks 0.75.301 ORM and legacy-pivot fixes through the native upgrader. Each service uses its release-local runtime without changing the shared host runtime. Corrects stale BunPress static-theming and docs-build guidance using the published 0.2.25 behavior.
Evidence
- Before: main deployment failed with
UNIQUE constraint failed: farms.slug; host Bun was 1.4.2. - After: real installed CLI regression passes 56 assertions for repeat/tombstone recovery, imagery, customer preservation and three ownership conflicts. Native migration repairs empty legacy pivots and rejects a populated ambiguous pivot without assigning an owner.
- Full native app suite: 114 pass, 0 fail, 3,564 assertions. Native types pass. Lint has no errors and one existing class-order warning. Docs build 54 pages.
- Private host qualification: old guard reproduced parent 1.4.4/child 1.4.2; the new PATH and real-child guard resolve both to 1.4.4, with the global host still 1.4.2. Independent spec and standards reviews are clean.
Merge Danger
Deployment updates the shared application database through native migration and catalog commands. The demo's derived missions are rebuilt, while customer rows and published imagery metadata are protected. Native deployment backup and post-deploy verification are required; no manual production SQL edits or installed package patches.
Closes #40