Migrate Hera->Artemis storage-attach to a real message round-trip
Hera still polls xHCI and sig-checks attached drives, but the storage
registration step (blk_subsys_attach_device(), now wrapped as the
BLK-ATTACH primitive) moves to Artemis's own dictionary, reached via
HERA-BLK-ATTACH-REQ/BLK-ATTACH-ACK (VM-EXEC, since Hera can't load her
own messaging.4th -- see the doc comment in repl.c). Identity birth
(Zuse genesis / WIREBIND) is deferred until the ack confirms storage
actually succeeded, instead of running synchronously underneath a
storage call that might fail ("wait for ack, safer for identity data").
Caught and fixed a real bug live during acceptance testing: Artemis's
ACK-APPEND-NUM fed a single-cell value into <# #S #> (which expects a
double-cell pair), causing a stack underflow the first time
HERA-BLK-ATTACH-REQ ran. Fixed with the same `0 SWAP` convention every
other numeric-append helper in this codebase already uses.
Verified booting clean to (zuse) ok> with no VM-EXEC errors on all
three architectures (amd64/aarch64/riscv64).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014Ec88YKxxhZGG1RNnune78
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
c4f94c409f
commit
63b8b3bc29
@@ -79,6 +79,7 @@
|
||||
#include "word_source/include/scroll_words.h"
|
||||
#ifdef __STARKERNEL__
|
||||
#include "starkernel/doe_log.h"
|
||||
#include "starkernel/repl.h"
|
||||
#endif
|
||||
|
||||
/**
|
||||
@@ -141,6 +142,7 @@ void register_forth79_words(VM *vm) {
|
||||
register_scroll_words(vm); /* Module 31: REPL scrollback (FABRIC-0.md 4.4q) */
|
||||
#ifdef __STARKERNEL__
|
||||
register_doe_log_words(vm); /* Module 32: DoE instrumentation runtime toggle (HB-ON/HB-OFF) */
|
||||
sk_repl_register_words(vm); /* Module 33: BLK-ATTACH-ACK, Artemis's storage-attach reply target */
|
||||
#endif
|
||||
|
||||
log_message(LOG_INFO, "FORTH-79 Standard word set registration complete");
|
||||
|
||||
Reference in New Issue
Block a user