|
30 | 30 | | Registry operations | `api.registry.cellscript.dev` and `registry.cellscript.dev` run as an isolated self-hosted Postgres/Node/object-volume/read-only-nginx stack behind trusted TLS. | |
31 | 31 | | Registry retry safety | Pre-admission failures release only the failed request's nonce and retry reservation; accepted metadata commits transactionally, and readiness covers the actual managed object prefixes. | |
32 | 32 | | Registry verification | Publish transactionally queues a leased, bounded real-compiler verification job; verified evidence/status commit atomically before crash-safe static-index convergence, and default search stays hidden until the baseline passes. | |
| 33 | +| Production HTTP boundary | API/static JSON responses use HSTS, deny-all content policy, anti-framing, no-sniff, and restrictive browser permissions; the website ships a reproducible read-only nginx deployment with health checks and bounded logs/temp storage. | |
33 | 34 | | Registry install policy | Explicit unverified/quarantined install acknowledgements persist per dependency, so lock refresh and subsequent builds retain the same auditable risk choice. | |
34 | 35 | | Tooling | CLI, LSP, WASM, website bindings, examples, and package tooling use the same edition contract. | |
35 | 36 | | Syntax audit | Canonical type fields use trailing commas, checked examples use named `u64` boundaries, and compatibility plus CKB-VM regressions cover both source and witness placement. | |
@@ -316,6 +317,21 @@ four production containers remained healthy, and a checksum-verified backup |
316 | 317 | captured the migrated, cleaned state. This proves the live worker boundary but |
317 | 318 | still does not substitute for publisher-owned JoyID authorisation. |
318 | 319 |
|
| 320 | +The final production hardening pass makes the website deployment itself a |
| 321 | +tracked artifact instead of server-local configuration. Its nginx container |
| 322 | +runs read-only with bounded writable tmpfs mounts, health checks, log rotation, |
| 323 | +and `no-new-privileges`; the website, API, and static Registry preserve HSTS, |
| 324 | +anti-framing, no-sniff, cross-domain-policy, referrer, and permissions headers |
| 325 | +through the shared TLS proxy. JSON-only Registry responses additionally carry a |
| 326 | +deny-all content security policy. |
| 327 | + |
| 328 | +The post-migration backup is also restore-tested, not only checksum-tested. An |
| 329 | +isolated Postgres 17 container restored both numbered migrations and all seven |
| 330 | +core Registry tables, while an isolated object volume accepted the complete |
| 331 | +archive. Neither restore target shared the production database, object volume, |
| 332 | +network endpoint, or lifecycle; both temporary targets were removed after the |
| 333 | +drill. |
| 334 | + |
319 | 335 | These endpoints prove the deployed service boundary, not a publisher-owned |
320 | 336 | JoyID signature or first-package install. That interactive positive flow |
321 | 337 | remains the explicit adoption checkpoint. |
|
0 commit comments