FABRIC-3.10.8 K-10: remove the stale Hermes-VM references

CONNECT-HERMES (birthed the removed hermes:init.4th; always failed) and
ARTEMIS-ANNOUNCE-READY (no callers) are gone; DoE CSV column 17 is now
hestia_heat_q48, same position. New baseline on all three ISAs:
word_count 544, M7.1a hash 0x927513aabd543433, Hera 0x4953a2e2d11fff34,
Artemis 0xc5a8cff4b805b6a0, Hestia unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Robert Allan James
2026-09-26 10:37:10 -04:00
co-authored by Claude Opus 5.5
parent ff8e505308
commit a66c4f3d5e
12 changed files with 27647 additions and 75 deletions
+32
View File
@@ -742,3 +742,35 @@ riscv64's slowest completion halved (15.1 → 7.7 ms), consistent with requests
| riscv64 | `logs/20260926-095353` | same |
**K-9 closes the MC-0 finding "`vm_physics` nodes are never removed".** Each dead VM now leaves only its registry node, 168 bytes, by design.
### 4.11 K-10 — the stale Hermes-VM references removed (2026-09-26)
**Change.**
- **`CONNECT-HERMES`:** removed from `mama_forth_words.c` along with both of its registrations (FORTH and MAMA vocabularies). It births `hermes:init.4th`, which no longer exists, so every call failed. Its `docs/lithosananke/DICTIONARY.md` row and a caller list in `capsule_runcap.c` were updated too.
- **`ARTEMIS-ANNOUNCE-READY`:** removed from `capsules/artemis/init.4th` block 4129. It had no callers. `mkcapsule --lint` passes on all 37 files.
- **`doe_log.c` column 17** is now `hestia_heat_q48` (Hestia's heat, looked up by name like columns 16 and 18), in the same position with the same column count. The comments on the slot index (22) and slot-1 readiness (24) no longer name Hermes.
**The new baseline**, identical on all three ISAs:
| | before (K-9) | after |
|---|---|---|
| M7.1a word_count / latest_id | 546 / 715 | **544 / 713** (one word in each of two vocabularies) |
| M7.1a hash | `0x99b01134c3d3049c` | **`0x927513aabd543433`** |
| Hera dict_hash | `0x00340a8b2c842eb7` | **`0x4953a2e2d11fff34`** |
| Artemis dict_hash | `0x66886d174d5f3b5a` | **`0xc5a8cff4b805b6a0`** |
| Hestia dict_hash | `0x78bf28439e4a643f` | unchanged |
Only these two FABRIC docs record the old hashes; nothing in code or scripts checks them.
**CSV spot check** (aarch64, `HB-ON` around one worker job plus one Hestia message, then `HB-OFF`; not a DoE run). The extracted CSV (`experiments/bare_metal/runs/doe-aarch64-20260926-101553.csv`, 48 rows) has the header `hera_heat_q48,hestia_heat_q48,artemis_heat_q48`, and K = 65536 in every row.
- **Not as named in advance:** Hestia's column reads **0 in every row**, not a nonzero value. That is her actual heat. `VM-PHYSICS-STATUS` on amd64 (`logs/20260926-100501`) also shows `Hestia heat_q48=0` while the two workers hold 5240 each: heat moves only on VM touches and beat charges, and message delivery to Hestia is neither. The column is live, but in these runs it has nothing to show.
**Standard sequence.**
| ISA | log | result |
|---|---|---|
| amd64 | `logs/20260926-100501` | new hashes above, G A=40 B=40, HHH, all ok `3`, ledger unchanged, 0 B idle, 0 / 0 |
| aarch64 | `logs/20260926-101553` | same hashes and results. Ledger pulled 266240 / returned 263455 (+4096 each): the two extra SENDs of the spot check, each a message cell pulled and returned. Held and consumed unchanged; conserved |
| riscv64 | `logs/20260926-102708` | same as amd64 |
**K-10 closes the three stale Hermes-VM references found at K-3.** `ARTEMIS-READY-ACK` (no caller) and the `switch_hermes_readiness` CSV column name (always 0, kept with its two siblings pending FABRIC-3.8.md Stage I) remain, as noted in §4.9.
-2
View File
@@ -134,8 +134,6 @@ Block 4123
SWAP 7 + C@ 0 = AND ;
Block 4129
( Artemis -- readiness handshake, Phase 1 )
: ARTEMIS-ANNOUNCE-READY ( -- )
S" 2 ENQUEUE-READY" S" Hermes" VM-EXEC ;
: ARTEMIS-READY-ACK ( -- ) LOG-INFO" Artemis: ready-ack" ;
VARIABLE BCAST-GOT
: BCAST-RECV ( -- ) 1 BCAST-GOT +! ;
-1
View File
@@ -648,7 +648,6 @@ through the same path.
| Word | Stack Effect | Description |
|---|---|---|
| `BYE` | `( -- )` | Hera-only override: reaps all child VMs, then cold-restarts the machine. (Children instead get the standard `system_word_bye` from `system_words.c`, which just halts back to the parent's REPL.) |
| `CONNECT-HERMES` | `( -- )` | Enters Hermes's REPL, birthing her first if not already live/stopped (idempotent). |
| `CONNECT-ARTEMIS` | `( -- )` | Enters Artemis's REPL, birthing her first if not already live/stopped (idempotent). |
| `BIRTH` | `( c-addr u -- )` | Births a named child VM from its capsule (name → `name:init.4th`). Idempotent if already live; refuses to re-birth Hera. |
| `KILL` | `( c-addr u -- )` | Destroys a named VM unconditionally, fanning its heat out to survivors first. Hera cannot be killed. Idempotent. |
@@ -0,0 +1,49 @@
vm_name,vm_id_hex,tick_number,elapsed_ns,tick_interval_ns,cache_hits_delta,bucket_hits_delta,word_executions_delta,hot_word_count,avg_word_heat_q48,window_width,actual_window_size,predicted_label_hits,jitter_bits,apic_ticks,time_trust_q48,variance_q48,vm_call_depth_max,hera_heat_q48,hestia_heat_q48,artemis_heat_q48,fleet_k_q48,fleet_conserved,switch_count_cumulative,switch_current_slot,switch_hera_readiness,switch_hermes_readiness,switch_artemis_readiness,switch_ticks_since
wa,1c825ed28163403d-8d998a6f71c79fb0,15726,157260000,10000,0,0,256,4,670959,256,256,0,0,40545,65536,0,0,55056,0,0,65536,1,15738,3,0,0,0,1
wa,1c825ed28163403d-8d998a6f71c79fb0,15727,157270000,10000,0,0,256,4,671002,256,256,0,0,40548,65536,0,0,55055,0,0,65536,1,15738,3,0,0,0,2
wa,1c825ed28163403d-8d998a6f71c79fb0,15728,157280000,10000,0,0,256,4,671044,256,256,0,0,40549,65536,0,0,55055,0,0,65536,1,15738,3,0,0,0,3
wa,1c825ed28163403d-8d998a6f71c79fb0,15729,157290000,10000,0,0,256,4,671087,256,256,0,0,40552,65536,0,0,55055,0,0,65536,1,15738,3,0,0,0,4
wa,1c825ed28163403d-8d998a6f71c79fb0,15730,157300000,10000,0,0,256,4,671130,256,256,0,0,40554,65536,0,0,55054,0,0,65536,1,15738,3,0,0,0,5
wa,1c825ed28163403d-8d998a6f71c79fb0,15731,157310000,10000,0,0,256,4,671172,256,256,0,0,40555,65536,0,0,55054,0,0,65536,1,15738,3,0,0,0,6
wa,1c825ed28163403d-8d998a6f71c79fb0,15732,157320000,10000,0,0,256,4,671215,256,256,0,0,40557,65536,0,0,55054,0,0,65536,1,15738,3,0,0,0,7
wa,1c825ed28163403d-8d998a6f71c79fb0,15733,157330000,10000,0,0,256,4,671258,256,256,0,0,40559,65536,0,0,55053,0,0,65536,1,15738,3,0,0,0,8
wa,1c825ed28163403d-8d998a6f71c79fb0,15734,157340000,10000,0,0,256,4,671300,256,256,0,0,40561,65536,0,0,55053,0,0,65536,1,15738,3,0,0,0,9
wa,1c825ed28163403d-8d998a6f71c79fb0,15735,157350000,10000,0,0,256,4,671343,256,256,0,0,40564,65536,0,0,55053,0,0,65536,1,15738,3,0,0,0,10
wa,1c825ed28163403d-8d998a6f71c79fb0,15736,157360000,10000,0,0,256,4,671386,256,256,0,0,40565,65536,0,0,55052,0,0,65536,1,15738,3,0,0,0,11
wa,1c825ed28163403d-8d998a6f71c79fb0,15737,157370000,10000,0,0,256,4,671428,256,256,0,0,40568,65536,0,0,55052,0,0,65536,1,15738,3,0,0,0,12
wa,1c825ed28163403d-8d998a6f71c79fb0,15738,157380000,10000,0,0,256,4,671471,256,256,0,0,40569,65536,0,0,55052,0,0,65536,1,15738,3,0,0,0,13
wa,1c825ed28163403d-8d998a6f71c79fb0,15739,157390000,10000,0,0,256,4,671514,256,256,0,0,40572,65536,0,0,55051,0,0,65536,1,15738,3,0,0,0,14
wa,1c825ed28163403d-8d998a6f71c79fb0,15740,157400000,10000,0,0,256,4,671556,256,256,0,0,40573,65536,0,0,55051,0,0,65536,1,15738,3,0,0,0,15
wa,1c825ed28163403d-8d998a6f71c79fb0,15741,157410000,10000,0,0,256,4,671599,256,256,0,0,40575,65536,0,0,55051,0,0,65536,1,15738,3,0,0,0,16
wa,1c825ed28163403d-8d998a6f71c79fb0,15742,157420000,10000,0,0,256,4,671642,256,256,0,0,40578,65536,0,0,55050,0,0,65536,1,15738,3,0,0,0,17
wa,1c825ed28163403d-8d998a6f71c79fb0,15743,157430000,10000,0,0,256,4,671684,256,256,0,0,40580,65536,0,0,55050,0,0,65536,1,15738,3,0,0,0,18
wa,1c825ed28163403d-8d998a6f71c79fb0,15744,157440000,10000,0,0,256,4,671727,256,256,0,0,40582,65536,0,0,55050,0,0,65536,1,15738,3,0,0,0,19
wa,1c825ed28163403d-8d998a6f71c79fb0,15745,157450000,10000,0,0,256,4,671770,256,256,0,0,40585,65536,0,0,55049,0,0,65536,1,15738,3,0,0,0,20
wa,1c825ed28163403d-8d998a6f71c79fb0,15746,157460000,10000,0,0,256,4,671812,256,256,0,0,40587,65536,0,0,55049,0,0,65536,1,15738,3,0,0,0,21
wa,1c825ed28163403d-8d998a6f71c79fb0,15747,157470000,10000,0,0,256,4,671855,256,256,0,0,40588,65536,0,0,55049,0,0,65536,1,15738,3,0,0,0,22
wa,1c825ed28163403d-8d998a6f71c79fb0,15748,157480000,10000,0,0,256,4,671898,256,256,0,0,40591,65536,0,0,55048,0,0,65536,1,15738,3,0,0,0,23
wa,1c825ed28163403d-8d998a6f71c79fb0,15749,157490000,10000,0,0,256,4,671940,512,512,0,0,40592,65536,0,0,55048,0,0,65536,1,15738,3,0,0,0,24
wa,1c825ed28163403d-8d998a6f71c79fb0,15750,157500000,10000,0,0,256,4,671983,512,512,0,0,40595,65536,0,0,55048,0,0,65536,1,15738,3,0,0,0,25
wa,1c825ed28163403d-8d998a6f71c79fb0,15751,157510000,10000,0,0,256,4,672026,1024,1024,0,0,40597,65536,0,0,55047,0,0,65536,1,15738,3,0,0,0,26
wa,1c825ed28163403d-8d998a6f71c79fb0,15752,157520000,10000,0,0,256,4,672068,1024,1024,0,0,40598,65536,0,0,55047,0,0,65536,1,15738,3,0,0,0,27
wa,1c825ed28163403d-8d998a6f71c79fb0,15753,157530000,10000,0,0,256,4,806533,2048,2048,0,0,40600,65536,0,0,55047,0,0,65536,1,15738,3,0,0,0,28
wa,1c825ed28163403d-8d998a6f71c79fb0,15754,157540000,10000,0,0,256,4,806584,2048,2048,0,0,40603,65536,0,0,55046,0,0,65536,1,15738,3,0,0,0,29
wa,1c825ed28163403d-8d998a6f71c79fb0,15755,157550000,10000,0,0,256,4,806636,4096,4096,0,0,40605,65536,0,0,55046,0,0,65536,1,15738,3,0,0,0,30
wa,1c825ed28163403d-8d998a6f71c79fb0,15756,157560000,10000,0,0,256,4,1008358,4096,4096,0,0,40606,65536,0,0,55046,0,0,65536,1,15738,3,0,0,0,31
wa,1c825ed28163403d-8d998a6f71c79fb0,15757,157570000,10000,0,0,256,4,1008422,4096,4096,0,0,40608,65536,0,0,55045,0,0,65536,1,15738,3,0,0,0,32
wa,1c825ed28163403d-8d998a6f71c79fb0,15758,157580000,10000,0,0,256,4,1008486,4096,4096,0,0,40611,65536,0,0,55045,0,0,65536,1,15738,3,0,0,0,33
wa,1c825ed28163403d-8d998a6f71c79fb0,15759,157590000,10000,0,0,256,4,1008550,2048,2048,0,0,40612,65536,0,0,55045,0,0,65536,1,15738,3,0,0,0,34
wa,1c825ed28163403d-8d998a6f71c79fb0,15760,157600000,10000,0,0,256,4,1008614,2048,2048,0,0,40615,65536,0,0,55044,0,0,65536,1,15738,3,0,0,0,35
wa,1c825ed28163403d-8d998a6f71c79fb0,15761,157610000,10000,0,0,256,4,1008678,1024,1024,0,0,40618,65536,0,0,55044,0,0,65536,1,15738,3,0,0,0,36
wa,1c825ed28163403d-8d998a6f71c79fb0,15762,157620000,10000,0,0,256,4,1008742,1024,1024,0,0,40620,65536,0,0,55044,0,0,65536,1,15738,3,0,0,0,37
wa,1c825ed28163403d-8d998a6f71c79fb0,15763,157630000,10000,0,0,256,4,1008806,512,512,0,0,40621,65536,0,0,55043,0,0,65536,1,15738,3,0,0,0,38
wa,1c825ed28163403d-8d998a6f71c79fb0,15764,157640000,10000,0,0,256,4,1008870,512,512,0,0,40624,65536,0,0,55043,0,0,65536,1,15738,3,0,0,0,39
wa,1c825ed28163403d-8d998a6f71c79fb0,15765,157650000,10000,0,0,256,4,1008934,256,256,0,0,40625,65536,0,0,55043,0,0,65536,1,15738,3,0,0,0,40
wa,1c825ed28163403d-8d998a6f71c79fb0,15766,157660000,10000,0,0,256,4,1008998,256,256,0,0,40627,65536,0,0,55042,0,0,65536,1,15738,3,0,0,0,41
wa,1c825ed28163403d-8d998a6f71c79fb0,15767,157670000,10000,0,0,256,4,1009062,256,256,0,0,40630,65536,0,0,55042,0,0,65536,1,15738,3,0,0,0,42
wa,1c825ed28163403d-8d998a6f71c79fb0,15768,157680000,10000,0,0,256,4,1009126,256,256,0,0,40631,65536,0,0,55042,0,0,65536,1,15738,3,0,0,0,43
wa,1c825ed28163403d-8d998a6f71c79fb0,15769,157690000,10000,0,0,256,4,1009190,256,256,0,0,40633,65536,0,0,55041,0,0,65536,1,15738,3,0,0,0,44
wa,1c825ed28163403d-8d998a6f71c79fb0,15770,157700000,10000,0,0,256,4,1009254,256,256,0,0,40636,65536,0,0,55041,0,0,65536,1,15738,3,0,0,0,45
wa,1c825ed28163403d-8d998a6f71c79fb0,15771,157710000,10000,0,0,256,4,1009318,256,256,0,0,40637,65536,0,0,55041,0,0,65536,1,15738,3,0,0,0,46
wa,1c825ed28163403d-8d998a6f71c79fb0,15772,157720000,10000,0,0,256,4,1009382,256,256,0,0,40639,65536,0,0,55040,0,0,65536,1,15738,3,0,0,0,47
wa,1c825ed28163403d-8d998a6f71c79fb0,15773,157730000,10000,0,0,256,4,1009446,256,256,0,0,40642,65536,0,0,55040,0,0,65536,1,15738,3,0,0,0,48
1 vm_name vm_id_hex tick_number elapsed_ns tick_interval_ns cache_hits_delta bucket_hits_delta word_executions_delta hot_word_count avg_word_heat_q48 window_width actual_window_size predicted_label_hits jitter_bits apic_ticks time_trust_q48 variance_q48 vm_call_depth_max hera_heat_q48 hestia_heat_q48 artemis_heat_q48 fleet_k_q48 fleet_conserved switch_count_cumulative switch_current_slot switch_hera_readiness switch_hermes_readiness switch_artemis_readiness switch_ticks_since
2 wa 1c825ed28163403d-8d998a6f71c79fb0 15726 157260000 10000 0 0 256 4 670959 256 256 0 0 40545 65536 0 0 55056 0 0 65536 1 15738 3 0 0 0 1
3 wa 1c825ed28163403d-8d998a6f71c79fb0 15727 157270000 10000 0 0 256 4 671002 256 256 0 0 40548 65536 0 0 55055 0 0 65536 1 15738 3 0 0 0 2
4 wa 1c825ed28163403d-8d998a6f71c79fb0 15728 157280000 10000 0 0 256 4 671044 256 256 0 0 40549 65536 0 0 55055 0 0 65536 1 15738 3 0 0 0 3
5 wa 1c825ed28163403d-8d998a6f71c79fb0 15729 157290000 10000 0 0 256 4 671087 256 256 0 0 40552 65536 0 0 55055 0 0 65536 1 15738 3 0 0 0 4
6 wa 1c825ed28163403d-8d998a6f71c79fb0 15730 157300000 10000 0 0 256 4 671130 256 256 0 0 40554 65536 0 0 55054 0 0 65536 1 15738 3 0 0 0 5
7 wa 1c825ed28163403d-8d998a6f71c79fb0 15731 157310000 10000 0 0 256 4 671172 256 256 0 0 40555 65536 0 0 55054 0 0 65536 1 15738 3 0 0 0 6
8 wa 1c825ed28163403d-8d998a6f71c79fb0 15732 157320000 10000 0 0 256 4 671215 256 256 0 0 40557 65536 0 0 55054 0 0 65536 1 15738 3 0 0 0 7
9 wa 1c825ed28163403d-8d998a6f71c79fb0 15733 157330000 10000 0 0 256 4 671258 256 256 0 0 40559 65536 0 0 55053 0 0 65536 1 15738 3 0 0 0 8
10 wa 1c825ed28163403d-8d998a6f71c79fb0 15734 157340000 10000 0 0 256 4 671300 256 256 0 0 40561 65536 0 0 55053 0 0 65536 1 15738 3 0 0 0 9
11 wa 1c825ed28163403d-8d998a6f71c79fb0 15735 157350000 10000 0 0 256 4 671343 256 256 0 0 40564 65536 0 0 55053 0 0 65536 1 15738 3 0 0 0 10
12 wa 1c825ed28163403d-8d998a6f71c79fb0 15736 157360000 10000 0 0 256 4 671386 256 256 0 0 40565 65536 0 0 55052 0 0 65536 1 15738 3 0 0 0 11
13 wa 1c825ed28163403d-8d998a6f71c79fb0 15737 157370000 10000 0 0 256 4 671428 256 256 0 0 40568 65536 0 0 55052 0 0 65536 1 15738 3 0 0 0 12
14 wa 1c825ed28163403d-8d998a6f71c79fb0 15738 157380000 10000 0 0 256 4 671471 256 256 0 0 40569 65536 0 0 55052 0 0 65536 1 15738 3 0 0 0 13
15 wa 1c825ed28163403d-8d998a6f71c79fb0 15739 157390000 10000 0 0 256 4 671514 256 256 0 0 40572 65536 0 0 55051 0 0 65536 1 15738 3 0 0 0 14
16 wa 1c825ed28163403d-8d998a6f71c79fb0 15740 157400000 10000 0 0 256 4 671556 256 256 0 0 40573 65536 0 0 55051 0 0 65536 1 15738 3 0 0 0 15
17 wa 1c825ed28163403d-8d998a6f71c79fb0 15741 157410000 10000 0 0 256 4 671599 256 256 0 0 40575 65536 0 0 55051 0 0 65536 1 15738 3 0 0 0 16
18 wa 1c825ed28163403d-8d998a6f71c79fb0 15742 157420000 10000 0 0 256 4 671642 256 256 0 0 40578 65536 0 0 55050 0 0 65536 1 15738 3 0 0 0 17
19 wa 1c825ed28163403d-8d998a6f71c79fb0 15743 157430000 10000 0 0 256 4 671684 256 256 0 0 40580 65536 0 0 55050 0 0 65536 1 15738 3 0 0 0 18
20 wa 1c825ed28163403d-8d998a6f71c79fb0 15744 157440000 10000 0 0 256 4 671727 256 256 0 0 40582 65536 0 0 55050 0 0 65536 1 15738 3 0 0 0 19
21 wa 1c825ed28163403d-8d998a6f71c79fb0 15745 157450000 10000 0 0 256 4 671770 256 256 0 0 40585 65536 0 0 55049 0 0 65536 1 15738 3 0 0 0 20
22 wa 1c825ed28163403d-8d998a6f71c79fb0 15746 157460000 10000 0 0 256 4 671812 256 256 0 0 40587 65536 0 0 55049 0 0 65536 1 15738 3 0 0 0 21
23 wa 1c825ed28163403d-8d998a6f71c79fb0 15747 157470000 10000 0 0 256 4 671855 256 256 0 0 40588 65536 0 0 55049 0 0 65536 1 15738 3 0 0 0 22
24 wa 1c825ed28163403d-8d998a6f71c79fb0 15748 157480000 10000 0 0 256 4 671898 256 256 0 0 40591 65536 0 0 55048 0 0 65536 1 15738 3 0 0 0 23
25 wa 1c825ed28163403d-8d998a6f71c79fb0 15749 157490000 10000 0 0 256 4 671940 512 512 0 0 40592 65536 0 0 55048 0 0 65536 1 15738 3 0 0 0 24
26 wa 1c825ed28163403d-8d998a6f71c79fb0 15750 157500000 10000 0 0 256 4 671983 512 512 0 0 40595 65536 0 0 55048 0 0 65536 1 15738 3 0 0 0 25
27 wa 1c825ed28163403d-8d998a6f71c79fb0 15751 157510000 10000 0 0 256 4 672026 1024 1024 0 0 40597 65536 0 0 55047 0 0 65536 1 15738 3 0 0 0 26
28 wa 1c825ed28163403d-8d998a6f71c79fb0 15752 157520000 10000 0 0 256 4 672068 1024 1024 0 0 40598 65536 0 0 55047 0 0 65536 1 15738 3 0 0 0 27
29 wa 1c825ed28163403d-8d998a6f71c79fb0 15753 157530000 10000 0 0 256 4 806533 2048 2048 0 0 40600 65536 0 0 55047 0 0 65536 1 15738 3 0 0 0 28
30 wa 1c825ed28163403d-8d998a6f71c79fb0 15754 157540000 10000 0 0 256 4 806584 2048 2048 0 0 40603 65536 0 0 55046 0 0 65536 1 15738 3 0 0 0 29
31 wa 1c825ed28163403d-8d998a6f71c79fb0 15755 157550000 10000 0 0 256 4 806636 4096 4096 0 0 40605 65536 0 0 55046 0 0 65536 1 15738 3 0 0 0 30
32 wa 1c825ed28163403d-8d998a6f71c79fb0 15756 157560000 10000 0 0 256 4 1008358 4096 4096 0 0 40606 65536 0 0 55046 0 0 65536 1 15738 3 0 0 0 31
33 wa 1c825ed28163403d-8d998a6f71c79fb0 15757 157570000 10000 0 0 256 4 1008422 4096 4096 0 0 40608 65536 0 0 55045 0 0 65536 1 15738 3 0 0 0 32
34 wa 1c825ed28163403d-8d998a6f71c79fb0 15758 157580000 10000 0 0 256 4 1008486 4096 4096 0 0 40611 65536 0 0 55045 0 0 65536 1 15738 3 0 0 0 33
35 wa 1c825ed28163403d-8d998a6f71c79fb0 15759 157590000 10000 0 0 256 4 1008550 2048 2048 0 0 40612 65536 0 0 55045 0 0 65536 1 15738 3 0 0 0 34
36 wa 1c825ed28163403d-8d998a6f71c79fb0 15760 157600000 10000 0 0 256 4 1008614 2048 2048 0 0 40615 65536 0 0 55044 0 0 65536 1 15738 3 0 0 0 35
37 wa 1c825ed28163403d-8d998a6f71c79fb0 15761 157610000 10000 0 0 256 4 1008678 1024 1024 0 0 40618 65536 0 0 55044 0 0 65536 1 15738 3 0 0 0 36
38 wa 1c825ed28163403d-8d998a6f71c79fb0 15762 157620000 10000 0 0 256 4 1008742 1024 1024 0 0 40620 65536 0 0 55044 0 0 65536 1 15738 3 0 0 0 37
39 wa 1c825ed28163403d-8d998a6f71c79fb0 15763 157630000 10000 0 0 256 4 1008806 512 512 0 0 40621 65536 0 0 55043 0 0 65536 1 15738 3 0 0 0 38
40 wa 1c825ed28163403d-8d998a6f71c79fb0 15764 157640000 10000 0 0 256 4 1008870 512 512 0 0 40624 65536 0 0 55043 0 0 65536 1 15738 3 0 0 0 39
41 wa 1c825ed28163403d-8d998a6f71c79fb0 15765 157650000 10000 0 0 256 4 1008934 256 256 0 0 40625 65536 0 0 55043 0 0 65536 1 15738 3 0 0 0 40
42 wa 1c825ed28163403d-8d998a6f71c79fb0 15766 157660000 10000 0 0 256 4 1008998 256 256 0 0 40627 65536 0 0 55042 0 0 65536 1 15738 3 0 0 0 41
43 wa 1c825ed28163403d-8d998a6f71c79fb0 15767 157670000 10000 0 0 256 4 1009062 256 256 0 0 40630 65536 0 0 55042 0 0 65536 1 15738 3 0 0 0 42
44 wa 1c825ed28163403d-8d998a6f71c79fb0 15768 157680000 10000 0 0 256 4 1009126 256 256 0 0 40631 65536 0 0 55042 0 0 65536 1 15738 3 0 0 0 43
45 wa 1c825ed28163403d-8d998a6f71c79fb0 15769 157690000 10000 0 0 256 4 1009190 256 256 0 0 40633 65536 0 0 55041 0 0 65536 1 15738 3 0 0 0 44
46 wa 1c825ed28163403d-8d998a6f71c79fb0 15770 157700000 10000 0 0 256 4 1009254 256 256 0 0 40636 65536 0 0 55041 0 0 65536 1 15738 3 0 0 0 45
47 wa 1c825ed28163403d-8d998a6f71c79fb0 15771 157710000 10000 0 0 256 4 1009318 256 256 0 0 40637 65536 0 0 55041 0 0 65536 1 15738 3 0 0 0 46
48 wa 1c825ed28163403d-8d998a6f71c79fb0 15772 157720000 10000 0 0 256 4 1009382 256 256 0 0 40639 65536 0 0 55040 0 0 65536 1 15738 3 0 0 0 47
49 wa 1c825ed28163403d-8d998a6f71c79fb0 15773 157730000 10000 0 0 256 4 1009446 256 256 0 0 40642 65536 0 0 55040 0 0 65536 1 15738 3 0 0 0 48
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -130,8 +130,8 @@ CapsuleRunResult capsule_runcap_birth(
out_vm_id, out_vm_ctx);
/* capsule_birth_baby() itself never sets the registry entry's own
* .name -- every existing caller (mama_word_birth, CONNECT-HERMES/
* -ARTEMIS) does this as a separate step after a successful birth,
* .name -- every existing caller (mama_word_birth, CONNECT-ARTEMIS)
* does this as a separate step after a successful birth,
* via capsule_vm_registry_set_name(). Found live: skipping this left
* a freshly RUNCAP-born VM's registry name empty, which the idle-loop
* pump (FABRIC-2.md Phase C) then read as a zero-length name and
-61
View File
@@ -2235,65 +2235,6 @@ static void mama_word_bye(VM *vm __attribute__((unused)))
arch_cold_reset();
}
/**
* @brief CONNECT-HERMES ( -- ) — Enter Hermes's REPL, birthing it first if needed.
*
* Idempotent: if Hermes is already born (LIVE or STOPPED) it is entered
* directly without re-birthing. On BYE from Hermes, control returns here.
*/
static void mama_word_connect_hermes(VM *vm)
{
VMRegistryEntry entry;
VM *hermes;
char saved_name[VM_NAME_MAX];
/* Birth if not found or previously dead/stillborn */
if (capsule_vm_find_by_name_nocase("Hermes", &entry) != 0 ||
entry.state == VM_STATE_DEAD ||
entry.state == VM_STATE_STILLBORN) {
VMUuid new_vm_id = vm_uuid_none();
char saved[VM_NAME_MAX]; console_save_vm_name(saved, sizeof(saved));
CapsuleRunResult r;
console_set_vm_name("Hermes");
r = capsule_birth_baby(
"hermes:init.4th",
capsule_get_directory(),
capsule_get_descriptors(),
capsule_get_names(),
capsule_get_arena(),
vm->stadium_vm_id, /* §H.12 step 7: who is birthing this VM */
0, /* skip_pki_sig: normal build-time capsule */
&new_vm_id, (void **)0);
console_set_vm_name(saved);
if (r != CAPSULE_RUN_OK) {
console_println("CONNECT-HERMES: birth failed");
return;
}
capsule_vm_registry_set_name(new_vm_id, "Hermes");
if (capsule_vm_find_by_name_nocase("Hermes", &entry) != 0) {
console_println("CONNECT-HERMES: registry error");
return;
}
}
hermes = (VM *)entry.vm_ptr;
if (!hermes) {
console_println("CONNECT-HERMES: no VM pointer");
return;
}
console_save_vm_name(saved_name, sizeof(saved_name));
console_set_vm_name(entry.name);
capsule_vm_set_state(entry.vm_id, VM_STATE_LIVE);
sk_repl_run(hermes);
capsule_vm_set_state(entry.vm_id, VM_STATE_STOPPED);
console_set_vm_name(saved_name);
}
/* Forward declarations: these 8 are defined later in this file (originally
* only ever used from register_child_vm_words(), which comes after them),
* but FABRIC-3.md SXX now also registers them here, earlier in the file. */
@@ -2317,7 +2258,6 @@ void register_mama_forth_words(VM *vm)
{
/* Register words in FORTH vocabulary first */
register_word(vm, "BYE", mama_word_bye);
register_word(vm, "CONNECT-HERMES", mama_word_connect_hermes);
register_word(vm, "CONNECT-ARTEMIS", mama_word_connect_artemis);
register_word(vm, "BIRTH", mama_word_birth);
register_word(vm, "KILL", mama_word_kill);
@@ -2381,7 +2321,6 @@ void register_mama_forth_words(VM *vm)
/* Re-register in MAMA vocabulary context */
register_word(vm, "BYE", mama_word_bye);
register_word(vm, "CONNECT-HERMES", mama_word_connect_hermes);
register_word(vm, "CONNECT-ARTEMIS", mama_word_connect_artemis);
register_word(vm, "BIRTH", mama_word_birth);
register_word(vm, "KILL", mama_word_kill);
+13 -9
View File
@@ -49,7 +49,9 @@
* 14. time_trust_q48 uint64 — TIME-TRUST in Q48.16 format
* 15. variance_q48 uint64 — timing variance in Q48.16 format
* 16. hera_heat_q48 uint64 — VM fleet physics: Hera's execution_heat_q48
* 17. hermes_heat_q48 uint64 — VM fleet physics: Hermes's execution_heat_q48
* 17. hestia_heat_q48 uint64 — VM fleet physics: Hestia's execution_heat_q48
* (FABRIC-3.10.8 K-10: was hermes_heat_q48, always
* 0 once the Hermes VM was retired; same position)
* 18. artemis_heat_q48 uint64 — VM fleet physics: Artemis's execution_heat_q48
* 19. fleet_k_q48 uint64 — "K": vm_physics_fleet_heat_sum() over ALL live
* VMs (not just the 3 named Tripod members above --
@@ -65,11 +67,13 @@
* 21. switch_count_cumulative uint64 — Stage 3 preemptive-switch count, cumulative
* since boot (capsule_vm_switch_signal.c).
* 22. switch_current_slot uint32 — which registered switch-signal participant is
* executing at this tick (0=Hera,1=Hermes,
* 2=Artemis by current registration order;
* 0xFFFFFFFF = none/unregistered at this moment).
* executing at this tick, by registration order
* (not a fixed VM; 0xFFFFFFFF = none/unregistered
* at this moment).
* 23. switch_hera_readiness uint32 — Hera's raw readiness accumulator (slot 0).
* 24. switch_hermes_readiness uint32 — Hermes's raw readiness accumulator (slot 1).
* 24. switch_hermes_readiness uint32 — slot 1's raw readiness accumulator (always 0
* since FABRIC-3.8.md Stage C-b; name kept
* with the other two, see below).
* 25. switch_artemis_readiness uint32 — Artemis's raw readiness accumulator (slot 2).
* 26. switch_ticks_since uint32 — ticks elapsed since the last real switch
* (capsule_vm_switch_signal.c); empirically
@@ -97,7 +101,7 @@
* three known Tripod VMs, not a dynamic per-VM column set -- this is a
* logging schema for a specific known fleet, not the physics mechanism
* itself (which stays genuinely VM-count-agnostic). Reads 0 for any VM not
* currently found in the registry (e.g. Hermes momentarily during its
* currently found in the registry (e.g. a Tripod VM momentarily during its
* kill/rebirth window), which is a legitimate observation, not an error.
*/
@@ -123,7 +127,7 @@ static const char *doe_header =
"hot_word_count,avg_word_heat_q48,"
"window_width,actual_window_size,predicted_label_hits,jitter_bits,"
"apic_ticks,time_trust_q48,variance_q48,vm_call_depth_max,"
"hera_heat_q48,hermes_heat_q48,artemis_heat_q48,"
"hera_heat_q48,hestia_heat_q48,artemis_heat_q48,"
"fleet_k_q48,fleet_conserved,"
"switch_count_cumulative,switch_current_slot,"
"switch_hera_readiness,switch_hermes_readiness,switch_artemis_readiness,"
@@ -204,7 +208,7 @@ void doe_log_tick_row(VM *vm, const HeartbeatTickSnapshot *snap)
}
uint64_t hera_heat_q48 = doe_log_heat_by_name("Hera");
uint64_t hermes_heat_q48 = doe_log_heat_by_name("Hermes");
uint64_t hestia_heat_q48 = doe_log_heat_by_name("Hestia");
uint64_t artemis_heat_q48 = doe_log_heat_by_name("Artemis");
uint64_t fleet_k_q48 = vm_physics_fleet_heat_sum();
unsigned fleet_conserved = vm_physics_conserved() ? 1u : 0u;
@@ -247,7 +251,7 @@ void doe_log_tick_row(VM *vm, const HeartbeatTickSnapshot *snap)
(unsigned long long)variance_q48,
vm_call_depth_max,
(unsigned long long)hera_heat_q48,
(unsigned long long)hermes_heat_q48,
(unsigned long long)hestia_heat_q48,
(unsigned long long)artemis_heat_q48,
(unsigned long long)fleet_k_q48,
fleet_conserved,