Record that the public data repos are templates, keys included #37
No reviewers
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
allod/memory!37
Loading…
Reference in a new issue
No description provided.
Delete branch "agent/template-repo-keys"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The public
inventory,secrets,profilesanddeployrepos are templates, and their key material is synthetic too. That second half is easy to get wrong:secrets/machine-host-keys.jsonandsecrets/vm-host-keys/*.agelook exactly like a live key store, and an agent adding a machine will reach for them.They are not. The registered host public key for a machine does not match that machine's real
/etc/ssh/<name>.pub— measured on the running dev VM, where the two differ. Confusing them invites writing a real machine's key into a public repo, which publishing makes irreversible.Found while adding a throwaway test machine for the microvm arc: the machine could not be completed without an encrypted host key, and the question of which repo that key belonged in turned out to be the whole question.
The rule this adds is short: never write real key material into the public repos, put a new machine's identity in the private fork, and publish only the mechanism that shapes an identity — never the identity. A pointer goes in
age.md, where someone doing key work will look.Refs allod/strategy#20
Risk
R0. Two memory topic files, documentation only.
Validation
The template claim was checked per repo rather than assumed: documentation-range addresses against the live machine's real address, the registered host key against the machine's actual public host key, each repo's own README and flake comments, and the deploy flake's lock pinning all three data inputs at public URLs.