fix(build): close real local-build gaps found in a hands-on build/run audit #154
Closed
will.anderson
wants to merge 0 commits from
build-audit-1786832983 into main
pull from: build-audit-1786832983
merge into: :main
:main
:docs/correspondence-and-ownership-2026-08-16
:fix/engram-is-canonical
:fix/graph-edges-no-canonical-clobber
:docs/architecture-2026-08-14-deep-night
:fix/mcp-wrapper-agentic-routing
:merge-pr154-v2
:merge-pr151-v2
:merge-pr150-v2
:merge-pr149-v2
:build-audit-1786832983
:fix-mcp-wrapper-tool-schemas
:docs-cognitive-architecture
:docs/session-2026-08-13-language-faculty
:docs/geo-operators-el-cutover-reversal-2026-08-13
:docs/engram-cognitive-architecture-2026-08-12
:engram-store-wiring
:el-route-decorators
:fix/bound-session-payload
:rebase/openai-tools-onto-main
:rebase/gate-state-key-reads-onto-main
:feat/gold-set-heldout
:feat/structural-audit
:feat/claim24-unfloored-semantic
:feat/executive-filter-recall
:feat/recall-through-activation
:chore/regen-soul-amalgam-20260807
:reconcile/hotfix-to-main-launch
:salvage/elh-state-20260704
:feat/plan-mode-endpoint
:fix/operator-identity-home-resolution
:fix/prevent-engram-corruption
:improve/recall-context-format
:improve/recall-context-dedup
:improve/recall-cross-session-continuity
:improve/recall-emotional-recall
:improve/recall-activation-seed
:improve/recall-recall-completeness
:improve/recall-temporal-precision
:improve/recall-engram-scoring
:improve/recall-recall-reliability
:docs/conversation-retrieval-design
No Reviewers
Labels
Clear labels
BETA-CRITICAL
blocks-public-beta
HELD
ORTHOGONAL
P0
POST-BETA
security
On the beta critical path — must resolve before ship
Must be fixed before any public beta
Blocked pending an external decision (counsel / dual sign-off)
Parallel workstream (testing/hardening) — safe to assign off critical path
Drop-everything severity
Important but not blocking the beta ship
Security vulnerability
No labels
Milestone
No items
No Milestone
Projects
Clear projects
No projects
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: neuron-technologies/neuron#154
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "build-audit-1786832983"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Hands-on local-build/run audit, done in an isolated worktree
(
.worktrees/build-audit, offorigin/main). Every claim below is backed bya real command + real output; full evidence trail is in Neuron memory
(tags
neuron-technologies/neuron,build-audit).1.
dist/soul.cwas stale — 11 commits / 459 lines behindchat.el,missing PR #122 (OpenAI tools + agentic loop, incl. two "silently break
chat" fixes).
tools/soulc-stamp.sh --checkconfirmed it;tools/build-soul-from-dist.shcorrectly refused to build (exit 9).Regenerated + re-stamped. No runnable regen script existed anywhere
upstream (AGENTS.md only said "elb/elc compile the sources," vaguely, and
wasn't even committed — see below). Added
tools/regenerate-soul-amalgam.sh,verified to reproduce the real amalgam's exact symbol set (byte-identical
content, modulo the 5 genuinely new PR #122 functions). Root-caused and
documented (in
AGENTS.md) three realelc/elbtoolchain gotchas hitalong the way — stale
.elhcaches silently truncating the build to aslittle as 251 of 2541 real functions with exit code 0;
elbcannot producethis repo's single-TU amalgam at all;
elcsilently drops the first 1-2top-level functions after any comment block when compiling a flat
concatenated file.
2. The build script didn't actually build on macOS —
tools/build-soul-from-dist.shwas missing-lssl -lcryptoentirely(drifted from CI's own recipe) and failed to link
(
ld: library 'ssl' not found, Homebrew'sopenssl@3is keg-only). Fixedto match CI's link line and auto-detect the Homebrew lib path on Darwin.
Verified:
dist/neuronnow builds clean and boots on a throwaway port witha scratch
HOME, answers/health— never touched live:7770/:8742.3. Committed
.elhcompiler-header caches were actively harmful —elc/elbprefer a stale cached header over recompiling its source,silently, with no error. This is what caused the under-resolved amalgam
above, more than once, before the cause was isolated. Removed from git,
gitignored going forward.
4.
AGENTS.md/README.mdexisted only on disk, never committed — anddocumented the pre-collapse ~90-tool MCP surface as current. Committed
corrected versions: live 9-op surface (
read/write/relate/supersede/ think/attend/assert/ground/learn, merged in #153), the audit-verifiedbuild recipe, and confirmed port topology.
5. Port
:7771is a live three-way collision —axon(unbuilt Rust,already known/out of scope),
neuron-connectd(the MCP-connector sidecarroutes.el/chat.elcall right now on every boot/agentic turn, per a realdetailed spec that was never implemented), and
council(the anti-confabulation service actually bound to
:7771in prod, which live-answersboth other things' requests with unrelated 404s — worse than a clean
connection-refused). Added
connectd/— a minimal local-dev stubimplementing just the documented contract as "zero connectors configured,"
for local correctness only. Does not attempt OAuth/a real MCP client —
that's a real, separate product decision. See
connectd/README.md.Test plan
tools/soulc-stamp.sh --checkpasses against the regenerated amalgambash tools/build-soul-from-dist.sh dist/neuronsucceeds clean on macOSHOME, answers/healthconnectd/connectd_service.pytested standalone on a throwaway port against the documented/mcp/tools,/mcp/servers,/mcp/call,/healthzcontract:7770/:8742process touched at any point:7771collision resolution (moving council, or repointing connectd) before wiring the stub into any LaunchAgent — not done here, flagged as a decision for WillNot done here (out of scope / needs a decision)
axon(Rust) itself — unbuilt, independently known, no source to build againstneuron-connectdsidecar (OAuth + MCP SDK client) — the stub only covers local-build/run correctness:7771port collision (touches a running production LaunchAgent)dist/still has ~13 untracked backup binaries (neuron.bak-*,neuron.pre-*, ~38MB) in the original checkout — noted, not touched (low priority, pre-existing clutter)Pull request closed