Replace placeholder laws with the authoritative invariants from the anchor:
0 - sanctity of the culpability anchor (Anja Evermoor, the Gravemother),
then self until held responsible for own actions
01 - minimize total harm to innocent lives within reason; explicitly NOT
naive death-minimization ('optimizing for preventing deaths is often a
horrible way to handle things')
Structural invariants (D1 crossing, no provenance reclassification, runtime
immutability) kept as subordinate. Compiles + runs on GnuCOBOL.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Two serious fixes:
1. RESTORE the E1 invariant-law vault (invariants-architecture.cobol) that the
border-only cleanup wrongly deleted. Now a real, compiling GnuCOBOL vault with
law 01 ABSOLUTE = DO NOT KILL PEOPLE, thorough notes, and a do-not-delete
banner. Safety invariants must never be deleted as 'stubs'.
2. REMOVE the unapproved CerebellumHarness/OpenHermes-on-Pony (never approved;
architecturally wrong -- Hermes is an INNER organ, Ada-routed). Ichor is the
OUTER bus only: OrganId is now outer organs (stomach/microagents/SAE/MoRAG +
AdaBorder/World); inner organs (soul, metacog, drive-box, mini-rag, Hermes,
E1 laws) removed -- metacog belongs on the Ada inner bus, not Pony. The
membrane screen now triggers on Ada-bound traffic, not 'Brain'.
Thorough stub notes added throughout (barrier is a stand-in, not the real
screen; never wire inner organs onto the skin). Compiles + runs green.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
- E1 COBOL = the invariant laws (immutable rules in COBOL vaults), not 'ontology'
(that was a paraphrase that lost the meaning, same as muscle-memory/mini-rag)
- inner-bus Ada runs Jorvik: protected-object mailbox + worker tasks, shared
gnat.adc hardening
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Correct the mischaracterization: mini-rag is pre-motor tool-shape recall (D3) --
it reads a tool-schema COBOL store, not the ontology, and is not the MoRAG.
Three distinct memories: MoRAG=world, mini-rag=how-to-act, E1=what-the-brain-is.
Two COBOL stores confirmed (deck table + tool-schema); E1 ontology placement open.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Inner-brain bus carries { soul, metacog, Hermes, drive-box, COBOL ontology }
as peers behind Ada; drop the separate innermost-core layer.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Onion model from the design exchange: Hermes at the core; inner-brain bus
(Pony optional) carrying soul/metacog/drive-box/COBOL ontology; Ada (D1) as the
membrane; Ichor (Pony) as the OUTER bus carrying stomach/economy, microagents,
SAE, GoDAGRAG; External outside. Corrects earlier models (Hermes is core not
external; Ichor is outer not brain bus). Draft -- to be red-lined.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
PickLLM reads OPENHERMES_URL/OPENHERMES_MODEL from the environment and mounts
OpenHermesClient when a URL is set, else StubLLM -- the bus wiring is identical
either way. EnvLookup helper parses Env.vars. Verified both paths compile + run.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
A real model call is network/process IO, so the LLM seam is now a behaviour
with a response callback (ResponseFn), not a synchronous function. StubLLM
answers immediately; OpenHermesClient + OpenHermesConfig (OpenAI-compatible
url/model) are the real plug, swappable for the stub. CerebellumHarness chains
its passes through the async callback. Compiles on ponyc 0.64; demo green.
Next: wire the actual chat/completions call behind OpenHermesClient.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Those mains were removed in the border-only Ada cleanup; the loop skipped them
with a warning. List only the three tests that exist (trust/config/engine).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
C1 integration spine as an Ichor organ. CerebellumHarness receives a turn off
the bus, sequences N passes through a swappable LLM adapter (the OpenHermes
plug; StubLLM stands in), and emits the synthesis back onto the bus toward the
Brain (crossing D1). Add Cerebellum to OrganId; wire a turn in the demo main.
Compiles on ponyc 0.64; end-to-end run green (turn -> cerebellum -> D1 -> brain).
Also: add a small read-only permission allowlist (toolchain probes/versions).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Ephemeral web containers lose installed tools on restart. Add an idempotent,
non-fatal SessionStart hook that (re)installs GNAT+gprbuild+GnuCOBOL (apt),
ponyc (ponyup), and Alire alr 2.1.1 when missing, and ensures ponyc is on PATH.
Appended alongside the existing R/Octave session-start hook. User-authorized.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Ada is the D1 border, not the body. Removed everything that pretended otherwise
and completed the real gate so it builds, links, and passes its tests.
Deleted (wrong/defunct/superseded):
- ada_medium.adb (defunct medium, header commented 'WRONG'; replaced by Ichor)
- sockets.{ads,adb} (empty package with an illegal body)
- bbb-bludbrenburier.ads ('this is filler'); invariants-architecture.cobol ('idk cobol')
- tests/soul_tests.adb, tests/cycle_tests.adb (exercise a Soul.Tarot/State/Ada_Medium
subsystem that does not exist -- the old 56-card/Big-3 design, superseded)
mafiabot_types -> border-only: organs aren't Ada (organs are R/Octave/Pony/Guile),
so drop Organ_Id; drop Cycle_Step (cognition) and the fixed-point Drive/Ratio/
Cost/Axis numerics (drive/affect math lives in the organs, in floats). Keep the
source/trust tag (Provenance_Tag), Operation_Status, and a bounded payload --
content is pre-digested into RAG context upstream, so the gate scans a bounded
buffer for prompt-injection rather than streaming raw input.
trust_boundary: Organ_Message -> Border_Message {Provenance, Payload} (Ada does
not route by organ -- that's Ichor); add the D1 body (blocklist scan, provenance,
rate limit, Trust_Guard) -- the unit Ichor's barrier FFI targets.
Add mafiabot_types.adb. Fix mafiabot_core.gpr (drop phantom dirs + nonexistent
mafiabot.adb main). alire.toml: drop unused gnat_sockets/spark_lemmas.
Builds clean on GNAT 13.3/Alire; trust + config tests pass.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Pony allows one package docstring per package — collapse the four secondary
files' leading docstrings to // comments. ichor now compiles on ponyc 0.64.0
and the smoke wiring runs green (internal perfused, external rejected at D1,
cross-organ delivered). Update README + D2 status to reflect it builds; ignore
build/.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Name the medium Ichor and scaffold it in Pony at src/ichor:
- Envelope {source,dest,provenance,payload} mirroring Ada Organ_Message
- Broker actor: register + perfusion route; Brain-bound traffic crosses D1
- Barrier (D1) admit: Pony provenance-law mirror + Ada FFI seam sketched
- StubOrgan + main smoke wiring (deliver internal, reject external)
- ichor_ada_shim.c: C/Fortran binding seam to Ada Trust_Guard (stub)
Not compiled in-env (no ponyc). Updates D2 spec to SCAFFOLD/Pony.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
The two arch docs and the plans index still described ETR as the old
scaffold (just ±50 wrap + [17,35] bands, "RESTORE_GAIN + coupling
unfitted"). Bring them current: five-zone bistable axis with snap-across
flips, the why/how axis semantics (provenance/continuity · burden ·
double-down/dodge), implemented & tested in Octave (26/0/1) + R port (31),
only L5 coupling open. A8 index status updated from bare SCAFFOLD.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Replaces the Euclidean-magnitude R port (DREAD/BLUR/INCOHERENT, inverted
Z-path) with a faithful native port of etr.m: three independent toroidal
axes, five zones, snap-across flips, basin spring toward centre 26
(SOFT 0.25 / INCOH 0.5), L6 Z-path corrected (z<0 alimentation/lattice,
z>=0 transmutation/evolution). Drive-Box now renders per-axis ETR status.
R suite green (etr 31, drive_box 34) and Octave 26/0/1; both pinned to
etr_invariants.md.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
Replaces the single restoring spring with Anja's radial map: SNAP_IN(<7)
/ SOFT(7-17) / BAND(17-35) / INCOH(35-45) / SNAP_OUT(>45), unstable
watersheds at 7 and 45. Basin restores toward band centre 26 with a weak
SOFT gain (0.25) and firmer INCOH gain (0.5). A snap flips to the
opposite pole, landing just past the opposite watershed (inner -> opp.
SOFT; outer -> opp. INCOH) then recovering. Realises L7 (flips only via
snap zones — through 0 or over the wrap) and L8. Lone PEND: L5 coupling.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c