ci: pin + complete vendored el-runtime so reconciled soul.c links #105

Merged
will.anderson merged 2 commits from ci/pin-vendored-runtime into main 2026-08-03 16:08:55 +00:00
Owner

Follow-up to #104. main's CI pulled el-runtime-c latest from Artifact Registry, but the reconciled ship-soul calls engram_prune_telemetry, http_delete_json, and engram_act_stats_json, which latest no longer defines — so an unpinned build fails to link (the failure mode that once let a handlerless soul reach prod).

  • Brings the CI pin from the retired hotfix line (was PR #97's second commit): vendor the release runtime into vendor/el-runtime/v1.0.0-20260501/ and compile dist/soul.c against it instead of a moving AR latest.
  • Updates the vendored runtime to the complete v1.0.0-20260501 (the Jul-21 vendored snapshot predated http_delete_json/engram_act_stats_json) — identical to the runtime the soul was gate-verified against.

Verified: dist/soul.c compiles clean against the vendored runtime, and the resulting binary passes verify-soul-contract.sh (presence 27/27 + immutability). The CI's pre-publish hard gate (line 106) runs the same script.

Follow-up to #104. main's CI pulled el-runtime-c `latest` from Artifact Registry, but the reconciled ship-soul calls `engram_prune_telemetry`, `http_delete_json`, and `engram_act_stats_json`, which `latest` no longer defines — so an unpinned build fails to link (the failure mode that once let a handlerless soul reach prod). - Brings the CI pin from the retired hotfix line (was PR #97's second commit): vendor the release runtime into `vendor/el-runtime/v1.0.0-20260501/` and compile `dist/soul.c` against it instead of a moving AR `latest`. - Updates the vendored runtime to the **complete** v1.0.0-20260501 (the Jul-21 vendored snapshot predated `http_delete_json`/`engram_act_stats_json`) — identical to the runtime the soul was gate-verified against. Verified: `dist/soul.c` compiles clean against the vendored runtime, and the resulting binary passes `verify-soul-contract.sh` (presence 27/27 + immutability). The CI's pre-publish hard gate (line 106) runs the same script.
will.anderson added 2 commits 2026-08-03 16:08:21 +00:00
The soul build downloaded el-runtime-c 'latest' from Artifact Registry. The
merged ship-soul calls engram_prune_telemetry, which the latest published
runtime no longer defines, so an unpinned build fails to link — the failure
mode that let a broken/handlerless soul reach prod.

Vendor the release runtime v1.0.0-20260501 (el_runtime.c/.h) into the repo and
compile the soul against it. This is the exact runtime the merged soul was
verified against (verify-soul-contract GATE PASS, genesis boot survives, full
safety-contact response), making the build reproducible and independent of a
moving AR 'latest'.

The verify-soul-contract.sh HARD-BLOCK gate already runs before Publish (from
the CI-hardening arc on main), so a destructive or stale soul can never
publish/deploy again.
ci: update vendored el-runtime to complete v1.0.0-20260501
Neuron Soul CI / build (pull_request) Has been cancelled
Neuron Soul CI / deploy (pull_request) Has been cancelled
7f3d6ed8cd
The runtime vendored alongside the CI pin was the Jul-21 snapshot, which
predates two builtins the reconciled ship-soul now calls:
  - http_delete_json  (boot-counter HTTP write-back, awareness/memory self-review)
  - engram_act_stats_json  (heartbeat activation observability)
Compiling dist/soul.c against the stale runtime fails with implicit-declaration
errors. Vendor the current release runtime (identical to the one the soul was
gate-verified against: verify-soul-contract PASS, genesis boots clean, full
safety-contact) so the CI Linux soul is byte-for-byte the verified soul.
will.anderson merged commit 74520b8333 into main 2026-08-03 16:08:55 +00:00
Sign in to join this conversation.