mirror of
https://github.com/SHOGGOTH-SECTOR/sica-fondt.git
synced 2026-07-31 16:16:26 +00:00
A6: X defaults to ~7 most committed convictions, adaptive (signal C1).
A1: L4 literal confirmed -> [====L⍉¢K€D ϟ ∅ΩΤ====] 《E≠<minimumfortool>》
(predicate = energy below tool's own minimum); priors bundle with the
sensate block (step 2); step 3 X≈7 reference.
A2: mirror lock token + add tool_min(tool) per-tool minimum (open item).
A8: record ETR-as-prompt-injection (A1-L5) in §4 does/does-not + open
item for the injection-rendering; ETR persuades, never gates.
https://claude.ai/code/session_015hmgREHNsxYCuim33yUF2c
3.1 KiB
3.1 KiB
A2 — Energy (E) driver
1. Component
Driver 1: the master constraint — an in-the-moment activation / rest budget (not "finitude" anymore; with depletion-unto-death dropped, it isn't finitude). Gates tool use and prices actions.
2. Status / certainty
Structure WORKING (driver_energy.R, 79 L) but numbers DISOWNED (body §5) and RECONCEIVED
(body §4): drop depletion-unto-death; no unrecoverable state.
3. Language & location
R · src/endocrine/driver_energy.R (+ test_energy.R).
4. Does / does-not
- Does: report E level; price each tool (per-tool cost + per-tool lockout scale, §5); gate when a tool's lockout trips; consume on the chosen action; restore.
- Does-not: die. The old
is_alive()==0hard-death is removed — E is the rest counterpart to ETR's relief; floor is rest, not death.
5. Interface contract
init_energy_state(current=100, max=100) -> e.- Per-tool economy (Anja): each tool carries its own energy cost AND its own lockout scale — an
arbitrary function of cost
c, e.g. one toolc×2, another((c²³)×3)/π. So:tool_cost(e, tool) -> numandtool_locked(e, tool) -> bool, per tool — not one globaltool_lock_threshold. - Per-tool minimum + locked rendering (Anja; A1-L4). Each tool also has a minimum energy to run;
tool_min(tool) -> num. A valid tool shows its cost; a locked tool's name is replaced in-band (the agent can't see colour) by[====L⍉¢K€D ϟ ∅ΩΤ====] 《E≠<minimumfortool>》, the predicate reading "energy below this tool'stool_min". Lockout is a breaker, not a sentence (L3). consume(e, amt) -> e'·recharge(e, amt) -> e'.
6. Dependencies & stubs
Per-tool cost/lockout tables — stub: a small fixed table of tools → (cost fn, lockout fn).
Restoration hooks tie to ETR-Z migration (A8) + tarot reshuffle (B3) — stub: call recharge directly.
(Restoration model reassessed — Anja.)
7. Invariants / laws (numbers C1 until tested)
- L1 (C4): an in-the-moment activation/rest budget — a bound on what can be afforded now (not "finitude" — nothing depletes unto death).
- L2 (C4): no unrecoverable state — every low-E condition has a restoration path (meditation = rest-in-place; migration = rest-as-integration; tarot reshuffle = rest-as-reframe).
- L3 (C4): lockout is per-tool and a breaker, not a sentence — internal processing continues under lock.
- L4 (C1): the per-tool cost/lockout functions — fit invariants-first, no carried
k.
8. Build steps
- Rewrite laws → tests in
test_energy.R(replace death tests with rest/restore; add per-tool cost/lockout tests). - Strip depletion-unto-death; add restoration paths.
- Define the per-tool cost/lockout table; fit functions invariants-first.
9. Tests
Rscript src/endocrine/test_energy.R (from repo root) — encodes L1–L3 + per-tool economy; fails on unfitted constants.
10. Open items
- The per-tool cost/lockout functions per tool (C1), incl. each tool's minimum (
tool_min, C1). Restoration rates (C1).