sica-fondt/docs/plans/A1-drivebox-hub.md
Claude 28751bc8e0
docs/plans: apply Anja's partial review (PR #8) to A1–A4
- A3 PS+: no aggregate sum, sensates sent RAW to the agent before tool listing;
  friction removed; is_logical=FALSE reframed as the SOURCE of power (illogic =
  why they rule the flesh), not a deficiency; priors derived from the outer
  BERT's frequent memory themes tied to taste/smell/sound + location.
- A4 endomotiv: drop friction/contradictory-pairs (chemistry carryover);
  channels are independent modulators; sensates describe & convince, only the
  agent decides.
- A2 Energy: not "finitude" (no depletion-unto-death); per-tool energy cost +
  per-tool lockout scale replaces the global threshold.
- A1 hub: evaluate/approve model flagged inaccurate (agent decides, drivers
  describe/convince + price); hub language to reassess; consider Fortran/C for
  the R<->Ada bridge.

https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
2026-06-17 00:25:40 +00:00

3.1 KiB

A1 — Drive-Box hub / input-slot

1. Component

The Drive-Box nervous-system wiring: assembles the four drivers (A2 E, A3 PS+, A6 Eth-Int, A8 ETR) + tarot/SOUL into one input slot (a hub, not a chain) and exposes the read-only snapshot the inference cycle pulls at step 2.

2. Status / certainty

Structure WORKING (drive_box.R, 158 L). Aggregation logic C3; the numbers inside the drivers are disowned (see each driver spec). The evaluate/commit model below is flagged inaccurate — §7.

3. Language & location

R · src/endocrine/drive_box.R (sources the drivers + endocrine_array.R + priors.R). [TO REASSESS — Anja]: the hub's language/location is not settled; R is current but under review.

4. Does / does-not

  • Does: init the whole box; produce drive_snapshot() (raw sensate field + per-tool cost terrain, read-only); assemble the drive_box_input_slot() injection block surfaced to the agent.
  • Does-not: decide — the drivers describe, convince, and price; only the agent decides. It does not route or police (Ada D1) or persist (storage E*).

5. Interface contract

  • init_drive_box() -> state{ energy, ps_plus, principles, etr }.
  • drive_snapshot(state) -> { e_level, raw_sensates[30], arguments[], per_tool_costs, etr_coord, etr_status } — surfaced to the agent (sensates passed before tool listing, A3); raw, never summed.
  • drive_box_commit(state, chosen_action) -> state' — applies the chosen tool's energy cost + conviction effects.
  • drive_box_input_slot(state) -> text block (drivers + tarot lenses + SOUL.md, assembled concurrently).
  • [FLAGGED inaccurate — Anja]: the old drive_box_evaluate(action) -> {approved,…} approve-gate is wrong — the box doesn't approve actions. To be reworked into "surface terrain → agent decides → commit."

6. Dependencies & stubs

A2/A3/A6/A8 drivers — stub: each init_* returning canned values; A1 wiring testable with stubs. Tarot (B1) for the input-slot lenses — stub: identity (no lens).

7. Invariants / laws

  • L1 (C4): the slot is a hub — all drivers + tarot + SOUL write concurrently, none subordinated.
  • L2 (C4): drive_snapshot is read-only (no driver state mutates on a snapshot).
  • L3 (FLAGGED — inaccurate per Anja): there is no serial PS+→Eth-Int→Energy→ETR evaluate/approve pipeline. Only the agent decides; drivers describe/convince + price. The evaluate/commit model is to be reworked.

8. Build steps

  1. Rework the decision model (drivers surface terrain → agent decides → commit) before freezing contracts.
  2. Freeze the corrected snapshot/slot contracts (§5) as tests in test_drive_box.R.
  3. Add the R↔Ada bridge later — see C3 / D2 and §10.

9. Tests

bash src/endocrine/run_tests.sh (runs test_drive_box.R + driver tests). Update once the decision model is reworked.

10. Open items

  • Decision-model rework (agent-decides, not box-approves).
  • R↔Ada/medium bridge transport — consider Fortran or C for it (Anja) (C1/C3/D2).
  • Hub language/location reassessment (Anja). Input-slot text format depends on B1.