#188: the Jacquard selector's 64 cards, L7 permanently on, L2 a real gate
Captain Bob, 2026-11-12: "Wire L2, keep L7 on". The table held the 128 cards of the 7-bit L1-L7 space; nothing read L7, and the rolling window recorded whatever the card said, so the 128 were 32 behaviours. - compudynamics.c: cd_tuning_word() sizes the table to 64 (L1-L6). - ssm_jacquard.c: card_bits() makes a card's 7-bit mask, L7 set, where a card is read, seeded and started (C4: 17 -> card 8); ssm_l8_force_config() still takes the 7-bit index, its L7 bit implied. - physics_execution_hooks.c, kernel vm_core.c: the rolling window records only while L2 is on (or before there is a config). - ssm_jacquard.h says what is wired, bit by bit (it said L7 was); v3/CLAUDE.md and the L8 reference corrected in place; FABRIC-3 XLVIII.21. Tests first, seen to fail against HEAD (logs/20261112-210510/kernel-tests): test_ssm_jacquard 4 of 7, test_physics_l2 1 of 4; all pass now. v4 reads no rolling window: acceptance is unchanged; the protocol runs next. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017RzZgrf7V7Zk2iczBXDRbm
This commit is contained in:
@@ -6581,3 +6581,23 @@ and memorize frequently so we can pick up where we left off").
|
||||
- **Seen to pass:** `mint_part_fail` (the new message, never "nothing changed", the old stick logs
|
||||
in); `mint_fail`, every write failing, still "nothing changed"; `replace`, the success path.
|
||||
|
||||
### 21. #188: the Jacquard selector's cards -- 64, each different, L2 a real gate (2026-11-12)
|
||||
|
||||
- **Found** (Captain Bob asked, 2026-11-12: "Is the jacquard selector implementing all of the
|
||||
possible cards?"): the table held 128 cards, the 7-bit L1-L7 DoE space, and wrote all seven bits
|
||||
into the VM's config, but nothing read L7 and the rolling window (L2) recorded every execution
|
||||
whatever the card said: the 128 cards were 32 behaviours, four cards each. `ssm_jacquard.h` said
|
||||
L7 was wired; it was not.
|
||||
- **Ruled:** "Wire L2, keep L7 on" -- L7 permanently on, as `docs/reference/L8_ADAPTIVE_CONFIG_TABLE.md`
|
||||
§2 says it is; L2 the selector's to switch.
|
||||
- **Tested first, seen to fail:** `kernel/tests/test_ssm_jacquard.c` -- 64 cards, the start still
|
||||
C4 (L3+L7), L7 on in all, all 64 L1-L6 settings distinct, a forced 7-bit index naming its card
|
||||
with or without its L7 bit: 4 of 7 failed. `kernel/tests/test_physics_l2.c` -- with L2 off an
|
||||
execution is not recorded: failed against the old hook.
|
||||
- **Built:** `cd_tuning_word()` sizes the table to 64 (`compudynamics.c`); a card's index is its L1-L6 bits and
|
||||
`card_bits()` in `ssm_jacquard.c` makes its 7-bit mask with L7 set, at the three places a card is
|
||||
read, the DoE seeding, and the start (17 -> card 8). `ssm_l8_force_config()` takes the 7-bit index
|
||||
as before. The rolling window records only while the config's L2 is on, or before there is a
|
||||
config (`physics_execution_hooks.c`, `kernel/src/vm/vm_core.c`).
|
||||
`ssm_jacquard.h` says what is wired, bit by bit; `v3/CLAUDE.md` and the L8 reference corrected.
|
||||
- **Seen to pass:** both tests; v4 does not read the rolling window, so acceptance is unchanged.
|
||||
|
||||
@@ -4,6 +4,14 @@
|
||||
**Author:** Claude Code session, June 2026
|
||||
**Affects:** `include/ssm_jacquard.h`, `src/ssm_jacquard.c`, `src/inference_engine.c`, `include/vm.h`
|
||||
|
||||
> **Corrected 2026-11-12 (#188; Captain Bob: "Wire L2, keep L7 on").** As built, the table has **64
|
||||
> cards, not 128**: the six bits L1–L6, with L7 permanently on in every card, as §2's table says L7
|
||||
> is. The 128 below -- the 2^7 DoE space -- held each card twice, differing only in an L7 bit that
|
||||
> nothing read, so half the table was the same cards. A card's 7-bit mask is `(card << 1) | L7`;
|
||||
> `ssm_l8_force_config()` still takes the 7-bit index and ignores its L7 bit. L2 (rolling window) was
|
||||
> recorded whatever the card said; it is now L8's live toggle, as L4 is. The 128s below are left as
|
||||
> the proposal said them.
|
||||
|
||||
---
|
||||
|
||||
## 1. Executive Summary
|
||||
|
||||
Reference in New Issue
Block a user