Tracking issue for the deployment-architecture & release-discipline evolution. Full plan: docs/logos/evolution-plan.md. The locked decision below governs where historical plan sections still describe alternatives.
Historical starting state
main == production with no gate; releasing == merging; breaking-without-config changes become live incidents; infra is spread across Vercel + Render + Terraform/AWS + k8s (too much surface for a solo operator). Cloudflare account already runs 9 Workers / 3 D1 / 1 R2 — an underused strength.
Decision already locked
Option E: full Cloudflare, including D1, with a $0 floor was recorded on 2026-05-25 and remains explicit in the main-branch evolution plan and telos. See the original decision receipt. Implement through the existing cloudflare/ foundation and incremental endpoint migration. Later comments or historical phases that reopen hybrid/Render/Railway selection do not replace this recorded decision.
Release discipline (any option) — §4
Phases (sequences every open item)
Related: #234 #235 #230 #237 #236 #238 #233 #229
Current implementation ownership — 2026-09-09
Credential provisioning, credential scope and durable delivery are owned by Limen CLAVIS / credential wall #320, with merged implementations #1062 and #551. Use that existing owner; do not create another credential system or turn this technical dependency into a repeated user consent/platform-choice request.
This UCC epic owns provisioned D1/KV/Access bindings, migration, Worker deployment and live acceptance. Merged UCC #410 repaired account configuration and guards. Its staging execution verified the active token/account, observed D1 metadata 401/code10000 and unresolved D1/KV/Access bindings, then skipped migration and deployment. Preserve that evidence until an owner-executed successor supplies actual bindings and successful staging readback. A source merge or secret-presence check alone does not close this epic.
Accepted-main staging execution — 2026-09-09
Merged #419 implements dedicated resource reconciliation, generated real-binding configuration, schema migration/readback and live source/authentication verification. The final PR head and accepted main both passed CI Gate and dependency validation. Merge revision: 2a65f91435c3ca9d8c5852287f01d6ac71ae07a6.
The actual accepted-main staging run 34377834223 passed frozen installation and current-main verification, then attempted provisioning in apply mode. Provider receipt: exact account GET 200; Workers inventory GET 200; D1 inventory GET 401, code 10000. Only these three GET requests occurred; no resources were created. Migrations, deployment and live verification were skipped. The sanitized cloudflare-staging-34377834223-1 artifact preserves this receipt. Staging deployment remains unverified.
Limen #2595 adds the missing exact UCC sink, verifies candidate account/D1 capability before replacement, and attempts delivery through the exact authorized App principal. Its accepted-main execution is the credential-owner continuation; no repeat platform decision or user consent is needed. After successful delivery, rerun this staging workflow only while its source is still current main.
Tracking issue for the deployment-architecture & release-discipline evolution. Full plan:
docs/logos/evolution-plan.md. The locked decision below governs where historical plan sections still describe alternatives.Historical starting state
main== production with no gate; releasing == merging; breaking-without-config changes become live incidents; infra is spread across Vercel + Render + Terraform/AWS + k8s (too much surface for a solo operator). Cloudflare account already runs 9 Workers / 3 D1 / 1 R2 — an underused strength.Decision already locked
Option E: full Cloudflare, including D1, with a $0 floor was recorded on 2026-05-25 and remains explicit in the main-branch evolution plan and telos. See the original decision receipt. Implement through the existing cloudflare/ foundation and incremental endpoint migration. Later comments or historical phases that reopen hybrid/Render/Railway selection do not replace this recorded decision.
Release discipline (any option) — §4
main→ staging auto; prod = manual promotemain: full CI (typecheck + server tests + build) + review requiredPhases (sequences every open item)
main→staging)Related: #234 #235 #230 #237 #236 #238 #233 #229
Current implementation ownership — 2026-09-09
Credential provisioning, credential scope and durable delivery are owned by Limen CLAVIS / credential wall #320, with merged implementations #1062 and #551. Use that existing owner; do not create another credential system or turn this technical dependency into a repeated user consent/platform-choice request.
This UCC epic owns provisioned D1/KV/Access bindings, migration, Worker deployment and live acceptance. Merged UCC #410 repaired account configuration and guards. Its staging execution verified the active token/account, observed D1 metadata 401/code10000 and unresolved D1/KV/Access bindings, then skipped migration and deployment. Preserve that evidence until an owner-executed successor supplies actual bindings and successful staging readback. A source merge or secret-presence check alone does not close this epic.
Accepted-main staging execution — 2026-09-09
Merged #419 implements dedicated resource reconciliation, generated real-binding configuration, schema migration/readback and live source/authentication verification. The final PR head and accepted main both passed CI Gate and dependency validation. Merge revision:
2a65f91435c3ca9d8c5852287f01d6ac71ae07a6.The actual accepted-main staging run 34377834223 passed frozen installation and current-main verification, then attempted provisioning in apply mode. Provider receipt: exact account GET 200; Workers inventory GET 200; D1 inventory GET 401, code 10000. Only these three GET requests occurred; no resources were created. Migrations, deployment and live verification were skipped. The sanitized
cloudflare-staging-34377834223-1artifact preserves this receipt. Staging deployment remains unverified.Limen #2595 adds the missing exact UCC sink, verifies candidate account/D1 capability before replacement, and attempts delivery through the exact authorized App principal. Its accepted-main execution is the credential-owner continuation; no repeat platform decision or user consent is needed. After successful delivery, rerun this staging workflow only while its source is still current main.