You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
The plate is the spec agents actually follow — prose requirements that aren't in plate code don't ship #111
Reverse-engineered from the tig/xuss-c first ship. Across five unrelated findings the mechanism was identical: agents extend what the plate ships and ignore what the plate only says. Prose in AGENTS.md is not a scaffold; code is.
Three independent confirmations from one product:
gcu-c plate ships
xuss-c produced
host/test_defaults.c, host/test_time.c (2 files)
exactly those 2, lightly extended — no third test ever written
main.c implementing onlyidentity
same function name, same shape, only identity
plate AGENTS.md: "Escape hatch (repl / reboot) is a product requirement"
repl and rebootabsent
The plate's prose required the escape hatch; the plate's code implemented one command. The product inherited the code.
Why this one bites hardest
silico inspect knocks identity and nothing else. So the one command silico verifies is the one that got built, and the two it never knocks for are the two that are missing — Goodhart's law on the gate.
The consequence is not cosmetic. xuss-c spec.md §6.2 says "A build without the door fails L1", and §8 has acceptance rows for Link mid-song and Escape hatch. That firmware cannot pass either, while install/README.md records first ship as accepted.
There was a second-order cause too: dispatch lived in firmware/main/main.c, which is device-side and outside the host build — so §2 L0's "protocol parsing" requirement was structurally impossible to satisfy. The plate put the parser on the wrong side of the HAL seam.
gcu_parse_command / gcu_handle_command move to src/domain.c; main.c only moves bytes
repl parks outputs (new park_outputs HAL hook) and stops the tick driving them; reboot defers the reset so the ack flushes first; unknown input fails closed with a short error
host/test_protocol.c — third test file, covering the escape hatch on the host
Still open (not in that PR)
[protocol].required in silico.toml — let a product declare its command surface, and have silico inspect exercise each entry rather than only identity. This is the actual fix; the plate change just stops the bleeding for new scaffolds.
Decide whether a declared-but-unanswered command is an inspectwarning or a failure.
Activity