Whitepaper · ship bar · from code

Traffic decides

AI drafts. Recorded traffic decides. Shared bar from TRAFFIC-DECIDES-BAR.md, smoke-ut-spine.mjs, Convert/Secure bar smokes, and RFC-0022/0023.

Docs · Proof · CWL · Helix

Bar

  • Propose ≠ dispose — humans and LLMs face the same verify path.
  • Honest holes — unlabeled stubs fail.
  • No façades — demo finish over missing origin fails (D6447).
  • Language first — CWL tip pins Convert/Secure consumers.
  • Traffic decides — recorded behavior beats migration memos.

Helix canon: trust nothing until certified; DNA from traffic, not hope; change guilty until promoted.

Three pillars + shared bar

                 ┌─────────────┐
                 │     CWL     │  language + specs + tooling
                 └──────┬──────┘
        ┌───────────────┼───────────────┐
        ▼               │               ▼
┌───────────────┐       │       ┌───────────────┐
│    Convert    │◄──────┴──────►│    Secure     │
│  (translator) │   shared bar  │   (Helix)     │
└───────────────┘  propose/     └───────────────┘
                   verify/holes

Closed agent gates

GateOwnerTokenStatus
Propose ≠ dispose + oracle replayConvertTRAFFIC_DECIDES_CONVERT_OKDone
Helix shadow-readySecureTRAFFIC_DECIDES_SECURE_OKDone
Live customer soak → enforceOperatorReal SHADOW_LOGOpen

Ship bar for agents = the first two gates. Prefer “recorded traffic” for Convert/oracle. Do not overclaim finished customer soak until real SHADOW_LOG exists.

Declared vs observed

  • CWL effects: are declared; DNA proves observed traffic.
  • Seed may hint auth; certification still requires traffic or explicit promote (Helix-owned).
  • RFC-0022 identity: method + path_template (+ host from deploy profile).
  • CWL holes and DNA holes[] are different vocabularies — never auto-copy.
  • Content-class drift (JSON route returning HTML errors) is DNA/Helix, not grammar.
  • Static asset globs are DNA-only collapse via pathTemplate.
  • HTML body hashes not in DNA v0.

UT ↔ Helix spine — exact steps

Owner: engines/chrysalis-cwl/scripts/smoke-ut-spine.mjs (G10125). Report: reports/ut-spine/ut-spine.json. Invariant string: CWL owns surface contract; Helix disposes DNA; Convert does not own this spine.

  1. Assert gold fixtures/language-gold/24-dna-bridge/routes.cwl
  2. Validate optional deploy-profile.json (cwl-deploy-profile-v1)
  3. Always run gate-cwl-dna-bridge.mjs → contract equality
  4. If sibling Secure packages/cwl-bridge present:
    • seedDnaFromCwlFile → assert app-dna-v1 + bridge.kind === cwl-surface-seed
    • stripBridgeEnvelope
    • Promote mode: certified + signDna / verifyDna
    • compareCwlSurfaceToDna → cutover cwl_surface_subseteq_dna
    • scoreRequest allow /api/health, deny /api/backdoor
    • Optional Secure cutover-smokeCUTOVER_SMOKE_OK
  5. Print UT_SPINE_OK (Helix soft-skip without Secure unless --require-helix)
CWL language gold (24-dna-bridge)
  → RFC-0022 contract gate (chrysalis-cwl)
  → Helix seed → strip → promote(+HMAC)
  → compare: CWL surface ⊆ certified DNA
  → enforce allow/deny
PillarOwnsMust not
CWLSurface contract, gold 24, smoke:ut-spineBecome the firewall
SecureDNA seed/compare/enforce, cutover-smokeFork CWL mapping; require Convert monorepo
ConvertOrigin → CWL; consumer cutover smokeOwn the spine; redefine language

Command tokens

WhereCommandToken
CWLnpm run test:cwl-dna-bridgeCWL_DNA_BRIDGE_OK
CWLnpm run smoke:ut-spineUT_SPINE_OK
CWLnpm run smoke:ut-evidenceUT_EVIDENCE_OK
Convertpnpm run hub:traffic-decides-bar-smokeTRAFFIC_DECIDES_CONVERT_OK
Convertpnpm run hub:cwl-helix-cutover-smokeCWL_HELIX_CUTOVER_OK / SKIP
Securenpm run traffic-decides-bar-smokeTRAFFIC_DECIDES_SECURE_OK
Securenpm run cutover-smokeCUTOVER_SMOKE_OK
Securenpm run sign-smokeSIGN_SMOKE_OK

Operator residual

Live customer soak → enforce is not closed by lab preflight. Shadow through real peak and off-peak, then flip enforce. Do not invent customer soak traffic to paint the bar green. Preflight smoke ≠ soak.

Non-goals / stop list

  • Convert Pilot Kit ≠ DNA cutover.
  • CWL is not the firewall.
  • Secure must not require the Convert monorepo to enforce.
  • No Nest / LiveView / Flutter façades; no EXTFMAP invent.
  • NGFW: Helix augments; it does not absorb VIP/NAT homework as day-one.

CWL · Convert · Helix · Proof