feat: rig platform — what is this machine, computed not stored #74

Merged
dan-claude-bot merged 5 commits from feat/platform into main 2026-07-20 12:46:00 +00:00
2 changed files with 12 additions and 6 deletions
Showing only changes of commit e11247b467 - Show all commits

View file

@ -740,7 +740,7 @@ VIRT kvm
PROVENANCE PROVENANCE
CONVERGED 0.6.0, 2026-08-02T09:11:03Z CONVERGED 0.6.0, 2026-08-02T09:11:03Z
BOOTSTRAP 0.4.0, 2026-07-19T14:24:51Z BOOTSTRAP 0.4.0, 2026-07-19T14:24:51Z
ROLE dev (class=human host=yes join=authkey) ROLE dev-server (root-door=closed host=yes join=authkey)
``` ```
"Is this the 32GB one, or the M900?" was previously a question you answered by "Is this the 32GB one, or the M900?" was previously a question you answered by

View file

@ -170,9 +170,12 @@ if [ -r "$MANIFEST" ]; then
if [ -z "$M_SCHEMA$B_BY$B_AT$C_BY$C_AT" ]; then if [ -z "$M_SCHEMA$B_BY$B_AT$C_BY$C_AT" ]; then
field RIG "manifest present but carries no recognised fields ($MANIFEST)" field RIG "manifest present but carries no recognised fields ($MANIFEST)"
else else
# 'not recorded' rather than 'unknown': under #61's rule 2 converged_* is # 'not recorded' rather than 'unknown', and it does NOT describe a fresh
# written only when the version actually differs, so its absence is a # box: #61's writer records both pairs equally at bootstrap, so no writer
# legitimate state on a freshly bootstrapped box, not a lost value. # produces a manifest missing converged_* — its absence means the file is
# partial or hand-edited. Deliberately not backfilled from bootstrapped_*,
# because inferring a convergence that never happened is worse than saying
# the record is not there. README and the fixtures pin exactly this.
field CONVERGED "${C_BY:-not recorded}${C_AT:+, $C_AT}" field CONVERGED "${C_BY:-not recorded}${C_AT:+, $C_AT}"
field BOOTSTRAP "${B_BY:-not recorded}${B_AT:+, $B_AT}" field BOOTSTRAP "${B_BY:-not recorded}${B_AT:+, $B_AT}"
[ -n "$M_SCHEMA" ] && [ "$M_SCHEMA" != "1" ] && \ [ -n "$M_SCHEMA" ] && [ "$M_SCHEMA" != "1" ] && \
@ -182,8 +185,11 @@ else
field RIG "not bootstrapped (no $MANIFEST)" field RIG "not bootstrapped (no $MANIFEST)"
fi fi
# The role marker is bootstrap's own line — 'role=dev class=human host=yes # The role marker is bootstrap's own line — 'role=dev-server
# join=authkey' — printed as the role plus its traits. # root-door=closed host=yes join=authkey' — printed as the role plus its
# traits. The example tracks the CURRENT vocabulary (#76's -server/-box role
# suffixes, #77's root-door trait); this command renders whatever fields the
# marker carries, so a pre-rename box still prints its own class= line as-is.
MARKER_LINE="$(read_role_marker "$MARKER")" MARKER_LINE="$(read_role_marker "$MARKER")"
if [ -n "$MARKER_LINE" ]; then if [ -n "$MARKER_LINE" ]; then
ROLE_NAME="" ROLE_TRAITS="" ROLE_NAME="" ROLE_TRAITS=""