Harden Windows lifecycle and persist audit records#168
Conversation
Store audit output on durable runner state paths across all planes, collect Lume guest records on the host, report missing and stale logs accurately, and serialize rotation across processes.
athena-omt
left a comment
There was a problem hiding this comment.
I refreshed the PR branch before review because GitHub reported the previous head as behind main. The PR is now at dcb1ed7d94e7f708a03bc8cdf6dfcbdb11af0afd, auto-merge is enabled with squash, and most checks have completed successfully. I’m deferring the substantive review because CI is still running on the refreshed head: codeql remains IN_PROGRESS.
…lifecycle # Conflicts: # test/entrypoint.test.ts # test/lume-scripts.test.ts
athena-omt
left a comment
There was a problem hiding this comment.
Athena approval after refreshing and reviewing the current head.\n\nEvidence checked:\n- Route/auth: ran from Athena node OMT-NAS as root with git identity Athena Athena-omt@protonmail.com and gh account athena-omt.\n- Initial required head/base: live PR initially showed head e7bb882 over base 2b2b93c, but current main had advanced to 09bf927 and GitHub reported mergeStateStatus=BEHIND. Per review freshness policy I updated the branch before substantive review.\n- Reviewed current head fb4690c against base 09bf927; merge-base check confirms base is ancestor of the reviewed head.\n- CI on fb4690c is complete with required successes: CI/test, linux docker contract, lume macos contract, PR Fast CI gate, Security/codeql, dependency-review, and osv; expected platform/fork-only jobs are skipped. Auto-merge remains enabled with squash.\n- Local verification on the Athena node: pnpm run lint; pnpm test; plus targeted vitest for audit, entrypoint, Lume scripts, Windows install/compose, and doctor all passed.\n\nI reviewed the Daedalus conflict areas and the lifecycle/audit changes: Windows native command exit handling redacts tokens before surfacing command failures, audit paths are state-directory scoped for Linux/Windows/Lume planes, Lume guest audit collection preserves JSONL records with host-side rotation, and doctor now reports missing/unwritable/stale audit logs as warn/fail instead of treating the path as always healthy. No approval-blocking issues found.
Summary
config.cmdcalls from marking a runner configured and redact tokens from bounded operator-facing failuresGoverning Issues
Closes #154
Closes #156
Validation
pnpm lintpnpm test(48 files, 274 tests)bash -n scripts/lume/lib.sh scripts/lume/run-slot.sh scripts/guest/macos-runner-bootstrap.shgit diff --checkBootstrap Governance
Merge Automation