docs: record that the lab guest is built and its log sources verified (#262) - #325
Merged
Conversation
…#262) `alexander` runs `stacks/lab` as of 2026-09-05, and §7 passed with all three Loki jobs — auth.log, syslog and journal. That last part is the point: the files existing and Alloy actually tailing them are different facts, and the second is the one that fails silently. #62 and #63 were both collectors that ran healthy and produced nothing. **26.04 ships rsyslog.** §0 chose Ubuntu over Debian because config.alloy tails two files a journald-only install does not have, then had to stop claiming the LTS provides them, because Ubuntu has been narrowing its default install and a runbook cannot know what a future reader will install. Now one LTS is confirmed: both files present, `syslog:adm 0640`, which is the ownership LOG_READ_GID is derived from. Recorded as a data point rather than a guarantee — §7 stays the check. The status block follows replace-the-smart-storage-battery.md's shape, which is this repository's convention for a runbook whose job is done: what was built, what was proven, and what bit on the way. Both things that bit are named with their fixes, because the symptoms are the kind someone hits again — a sops error about recipients (#321), and validate telling a guest to install the estate's timers (#323). The certificate copy in §5 now says `garnet@` rather than a `you@` placeholder. The estate's other scripts already carry `robo@10.0.99.20` and `atropos@10.0.99.30`; a runbook that has to be edited before it can be pasted is one that gets pasted wrong. The roadmap entry said the deploy was what remained of #264. It is not. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes out #262.
alexanderrunsstacks/labas of 2026-09-05, and §7 passed with all three Loki jobs —auth.log,syslogandjournal.That last part is the whole point. The files existing and Alloy actually tailing them are different facts, and the second is the one that fails silently — #62 and #63 were both collectors that ran healthy and produced nothing.
26.04 ships rsyslog
§0 chose Ubuntu over Debian because
config.alloytails two files a journald-only install does not have. It then had to stop claiming the LTS provides them, because Ubuntu has been narrowing its default install and a runbook cannot know what a future reader will install.Now one LTS is confirmed: both files present,
syslog:adm 0640— which is the ownershipLOG_READ_GIDis derived from, so the supplementary-group mechanism has what it needs. Recorded as a data point, not a guarantee. §7 stays the check.The status block
Follows
replace-the-smart-storage-battery.md's shape, which is this repository's convention for a runbook whose job is done: what was built, what was proven, and what bit on the way.Both things that bit are named with their fixes, because the symptoms are the kind someone hits again:
no identity matched any of the recipients.sops.yamlrule matched nothing, so §4 encrypted to the estate's key (#321)make validatedemandingmake install-timersSmaller
§5's certificate copy says
garnet@rather than ayou@placeholder. The estate's scripts already carryrobo@10.0.99.20andatropos@10.0.99.30; a runbook that must be edited before it can be pasted is one that gets pasted wrong.The roadmap said a deploy was what remained of #264. It is not.
Verification
make validatepasses. One note:observability: promtool check configfailed once mid-session and passed on the two runs after, with the config itself reportingSUCCESSwhen run directly — an intermittent docker flake rather than a config fault. Worth an eye if it recurs.🤖 Generated with Claude Code