All FORTH-owned message types were cut over to kernel-Hermes in Phase 3 (tasks 3.8-3.10). This removes the now-dead FORTH messaging layer and the Hermes VM itself: capsules/common/messaging.4th, capsules/hermes/init.4th, the slot-3 VM-NAME-REG pairing convention, and every load-site/birth-site reference across capsules/init.4th, artemis/init.4th, hestia/init.4th, doe-campaign.4th (Artemis-only now), capsule_console.c, capsule_mint.c, capsule_wirebind.c, capsule_birth.c, and kernel_main.c. Verified on all three architectures: clean boot, mkcapsule --lint clean (36 files, 0 violations), zero UNKNOWN WORD, identical dict_hash across amd64/aarch64/riscv64 for every VM, and a full mint -> WIREBIND-attach -> USE -> relay round-trip exercising the two highest-risk edits (capsule_console.c/capsule_mint.c). Found, not fixed: deleting messaging.4th removes SEND-ELEVATE-REQUEST, which was the only caller of KH-ELEVATE-SEND and the only path to ELEVATE-GRANT (zuse-eligibility.4th, still loaded at boot) -- Phase 8 PKI's own elevation entrypoint. Needs a decision before Phase 5 close-out. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
27 lines
994 B
Forth
27 lines
994 B
Forth
Block 4021
|
|
( zuse-eligibility.4th - H.5/H.8 elevation grant )
|
|
( C prims: ZUSE-ELIGIBILITY-ADD ZUSE-ELIGIBLE? )
|
|
( NAME>XT ELEVATE-PUBKEY-UNPACK )
|
|
( Policy word this file: ELEVATE-GRANT. Runs in )
|
|
( Hera's own dict -- delivered here by kernel-Hermes's own )
|
|
( drain checkpoint (FABRIC-3.6.md task 3.10), not FORTH )
|
|
( MSG-DELIVER (messaging.4th, removed Phase 4 Stage E). )
|
|
( FABRIC-2.md H.12 step 21, 2026-09-03. )
|
|
CREATE ELEVATE-PK-BUF 32 ALLOT
|
|
|
|
Block 4022
|
|
( ELEVATE-GRANT ( waddr wu pk0 pk1 pk2 pk3 -- ) )
|
|
( Reconstructs the caller's pubkey, checks Zuse's )
|
|
( eligibility list, and on match grants the named )
|
|
( word ACL-ALLOW!/ACL-TTL! via the same reused )
|
|
( ACL-TTL mechanism H.5 decided on. No grant, no )
|
|
( error, on any mismatch -- silent refusal. )
|
|
: ELEVATE-GRANT ( waddr wu pk0 pk1 pk2 pk3 -- )
|
|
ELEVATE-PK-BUF ELEVATE-PUBKEY-UNPACK
|
|
ELEVATE-PK-BUF ZUSE-ELIGIBLE? IF
|
|
NAME>XT DUP IF
|
|
1 OVER ACL-ALLOW!
|
|
ACL-BASE-TTL SWAP ACL-TTL!
|
|
ELSE DROP THEN
|
|
ELSE 2DROP THEN ;
|