You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(hosts): report owner newcode recovery for an expired identity #85
When the active certificate has expired and no pending certificate exists, connection.Run (client.go, Run) emits disconnected and retries every 30 s forever. specs/006-whr-cli/contracts/host-enrollment.md ("Renewal and crash recovery") says this case requires explicit owner newcode recovery: preserve all state and report failure.
Acceptance criteria
With an expired active certificate and no pending certificate, Run returns a distinct terminal error instead of retrying.
A pending certificate still gets its activation attempts (activation can succeed after the old certificate expired).
The agent's exit code and message name owner newcode recovery, consistent with the contract and ADR 0013.
Found by the independent pilot review on 2026-10-16. Builds on the pilot branch pilot/installable-pilot-pr (split from #83); start from its current head.
Activity
docs(hosts): publish the workharbor-agent exit codes
test(hosts): cover an expired issuer with a valid leaf
fix(hosts): end Run with owner newcode recovery for an expired identity
test(hosts): assert connected precedes the validity deadline
docs(hosts): publish the workharbor-agent exit codes
test(hosts): cover an expired issuer with a valid leaf
fix(hosts): end Run with owner newcode recovery for an expired identity
test(hosts): assert connected precedes the validity deadline
docs(hosts): publish the workharbor-agent exit codes
test(hosts): cover an expired issuer with a valid leaf
fix(hosts): end Run with owner newcode recovery for an expired identity
test(hosts): assert connected precedes the validity deadline
docs(hosts): publish the workharbor-agent exit codes
test(hosts): cover an expired issuer with a valid leaf
fix(hosts): end Run with owner newcode recovery for an expired identity
test(hosts): assert connected precedes the validity deadline
docs(hosts): publish the workharbor-agent exit codes
test(hosts): cover an expired issuer with a valid leaf
fix(hosts): end Run with owner newcode recovery for an expired identity
test(hosts): assert connected precedes the validity deadline
docs(hosts): publish the workharbor-agent exit codes
test(hosts): cover an expired issuer with a valid leaf
fix(hosts): end Run with owner newcode recovery for an expired identity
test(hosts): assert connected precedes the validity deadline
docs(hosts): publish the workharbor-agent exit codes
test(hosts): cover an expired issuer with a valid leaf
wstein commentedon Oct 16, 2026
Done in #98. Final
make checkon main1cb22c2: GREEN (850 harness, 654 Go, 200 ExUnit).