Milestone 6: BLOCK_MAP.md signature-status column
--manifest mode's file scan is a completely separate code path from build mode (only ever walks .4th files, never the embedded PKI cert or font capsule) -- extended it to accept the same optional --sign-key <path> prefix build mode already has, factoring the key-loading code into a shared load_sign_key(), so the manifest can report real per-capsule signing status without touching or requiring a rebuild of capsule_generated.c. New "Signed" column on the capsule summary table: yes/no when --sign-key was given, n/a (with an explanatory footnote) when it wasn't -- never a bare blank that could be misread as "unsigned". Makefile.starkernel's manifest-generation call site now passes the same SIGN_KEY_ARGS the real build uses, so capsules/BLOCK_MAP.md reflects this machine's actual signed state by default. Verified: clean compile, BLOCK_MAP.md correctly shows "yes" for all 31 tracked capsules on a real signed build; a quick amd64 boot (no kernel code touched, host tooling only) confirmed no regression. This closes every open Milestone 6 item except magic-number content-type detection (shared with Milestone 4, not started) and the hard-refuse flip (deliberately deferred). Documented in FABRIC-3.md. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01U14ET9CWAtbQMbYqomKgXd
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
2fc55f47e1
commit
c640f99211
+21
@@ -802,6 +802,27 @@ decisions get added here, not to `FABRIC-2.md`. Follow the same discipline `FABR
|
||||
clean for a while, not bundled into this pass) and the `BLOCK_MAP.md` signature-status
|
||||
column.
|
||||
|
||||
**`BLOCK_MAP.md` signature-status column, done 2026-08-26.** `--manifest` mode's file scan
|
||||
(`manifest_file()`) is a completely separate code path from build mode's `process_file()` —
|
||||
confirmed it only ever walks `.4th` files (never the embedded PKI cert or font capsule), and
|
||||
the Makefile invokes `mkcapsule` twice per build for two different purposes (once to emit
|
||||
`capsule_generated.c`, once for the manifest). Extended `--manifest` to accept the same
|
||||
optional `--sign-key <path>` prefix as build mode (factored the key-loading code, previously
|
||||
inline in build mode's arg parsing, into a shared `load_sign_key()` used by both) so the
|
||||
manifest can report real per-capsule signing status without touching or requiring a rebuild
|
||||
of `capsule_generated.c`. New `Signed` column on the capsule summary table: `yes`/`no` when
|
||||
`--sign-key` was given, `n/a` (with an explanatory footnote) when it wasn't — never a bare
|
||||
blank that could be misread as "unsigned." `Makefile.starkernel`'s manifest-generation call
|
||||
site updated to pass the same `$(SIGN_KEY_ARGS)` the real build already uses, so
|
||||
`capsules/BLOCK_MAP.md` reflects this machine's actual signed state by default. Verified:
|
||||
clean compile, `capsules/BLOCK_MAP.md` correctly shows `yes` for all 31 tracked `.4th`
|
||||
capsules on a real signed build; a quick amd64 boot (no kernel code touched by this step,
|
||||
only host tooling) confirmed no regression, zero signature warnings, conservation intact.
|
||||
|
||||
**This closes every open item from FABRIC-2.md's original Milestone 6 punch list except
|
||||
magic-number content-type detection (Section U item 14, shared with Milestone 4, not
|
||||
started) and the hard-refuse flip (deliberately deferred).**
|
||||
|
||||
### From FABRIC-2.md §X, Milestone 7 — Contributor capsules / trust tiers
|
||||
|
||||
- [ ] Create the `capsules/contrib/` directory (mechanically trivial, matches existing
|
||||
|
||||
Reference in New Issue
Block a user