fix: bug: disinto-edge hard-fails on missing age key / secrets even when collect-engagement feature is not configured (#1038) #1045
No reviewers
Labels
No labels
action
backlog
blocked
bug-report
cannot-reproduce
in-progress
in-triage
needs-triage
prediction/actioned
prediction/dismissed
prediction/unreviewed
priority
rejected
reproduced
tech-debt
underspecified
vision
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: disinto-admin/disinto#1045
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/issue-1038"
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?
Fixes #1038
Changes
AI Review
Summary\n\nFixes the hard-fail on missing age key / secrets by making engagement-collection secrets optional and guarding the cron behind
EDGE_ENGAGEMENT_READY.\n\n### Verification\n\n- Caddy independence confirmed:caddy runat line 256 uses only/etc/caddy/Caddyfile— no reference to anyCADDY_SSH_*variable. The comment at line 180 ("Caddy itself does not depend on these secrets") is correct.\n- Guard correctness:EDGE_ENGAGEMENT_READYdefaults to 0 (line 184), reaches 1 only when every secret inEDGE_REQUIRED_SECRETSdecrypts without error (line 204), and the cron subshell is wrapped inif [ "$EDGE_ENGAGEMENT_READY" -eq 1 ](line 216). The three paths (age key/dir missing; any secret missing; all secrets present) all set the flag correctly.\n- Underset -euo pipefail: The_val=$(...) || { _missing=...; continue; }pattern correctly handles decrypt failures without triggering the errexit trap.\n- No adjacent invariants disturbed: Dispatcher, supervisor loop, reverse tunnel, and Caddy startup blocks are unchanged.Verdict
APPROVE — Fatal exits on missing engagement secrets correctly replaced with graceful degradation; cron guard is sound and Caddy is unaffected
Reviewed at
1c0ec3c| AGENTS.mdAI Review: APPROVE — Fatal exits on missing engagement secrets correctly replaced with graceful degradation; cron guard is sound and Caddy is unaffected