FABRIC-3.md §XXXV.14: flag missing fault-triggered SSM_MODE_C0 fallback
Raised discussing what the multiuser DoE might reveal: the intended
design is a faulting VM drops to SSM_MODE_C0 and continues as a plain,
non-adaptive VM rather than faulting outright. Confirmed via source:
ssm_l8_update() computes its mode purely from workload metrics, no
fault input anywhere -- a real regression from the hosted StarForth
repo's design ("forgot to carry that over... building the stadium"),
not invented here. ssm_l8_force_config() already exists as the natural
hook a real fix would use. Flagged and logged, not built -- per the
explicit instruction to keep the campaign running and log bugs/gaps as
they surface rather than stopping to fix each one.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BWpNjdwPtFLuVLaAq44L9K
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
c02fed140f
commit
553ca9163d
+25
@@ -5830,3 +5830,28 @@ as done; both real bugs here would have been caught immediately by checking one
|
||||
value, which is what finally surfaced them. Worth remembering the next time "verified live"
|
||||
gets written down for something that only checked word resolution.
|
||||
|
||||
### XXXV.14 -- Flagged, not built: L8 Jacquard has no fault-triggered fallback to SSM_MODE_C0
|
||||
|
||||
Raised directly by Captain Bob mid-campaign, discussing what this DoE might reveal: the
|
||||
intended design is that a faulting VM should drop to `SSM_MODE_C0` ("Minimal, stable/predictable
|
||||
workloads," `include/ssm_jacquard.h`) and continue as a plain, non-adaptive VM rather than fault
|
||||
outright -- "the faulting VM simply becomes a plain old uncompudynamic VM." Confirmed by reading
|
||||
the actual source, not assumed: `ssm_l8_update()` (`src/ssm_jacquard.c:88`) computes its target
|
||||
mode purely from four workload-metric loop-gate bits (L2/L3/L5/L6, fed from `vm_time.c`) -- no
|
||||
reference to `vm->error` or any fault condition anywhere in the file. `SSM_MODE_C0` is real and
|
||||
is every VM's boot-time starting mode (`vm_bootstrap.c`), but nothing routes a VM back to it in
|
||||
response to a fault; the mode selector is an adaptive performance tuner, not a fault safety net,
|
||||
and only the first job is wired up. Bob's own diagnosis: "an oversight when building the
|
||||
stadium... forgot to carry that over from the hosted StarForth" -- a real regression from the
|
||||
standalone StarForth repo's design, not a new gap invented here (this repo has no visibility
|
||||
into that repo to confirm exactly how it was wired there).
|
||||
|
||||
One relevant building block already exists on this side: `ssm_l8_force_config()`
|
||||
(`src/word_source/inference_words.c`) -- a manual FORTH-callable primitive that force-sets a
|
||||
VM's L8 mode. Currently only ever invoked by hand; nothing calls it automatically on a fault.
|
||||
That is the natural mechanism a real fix would hook, not something to build from scratch.
|
||||
|
||||
**Not built.** Flagged per Bob's own explicit instruction ("we will continue in this direction
|
||||
with the workflow") -- find and log these live, keep the campaign running, don't stop to fix
|
||||
each one as found. Real feature, real gap, deliberately deferred.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Capsule Block Manifest — Auto-generated
|
||||
<!-- Generated by mkcapsule --manifest 2026-09-17T23:25:36Z -->
|
||||
<!-- Generated by mkcapsule --manifest 2026-09-17T23:29:17Z -->
|
||||
<!-- DO NOT EDIT — re-run mkcapsule --manifest to refresh. -->
|
||||
<!-- Hand-written justifications and immutability notes live -->
|
||||
<!-- in MANIFEST.md alongside this auto-generated index. -->
|
||||
|
||||
Reference in New Issue
Block a user