| Round 2 finding | Assessment |
|---|---|
| R2-1 / R1-5: claim passes bypass retry backoff | Resolved. Claim passes obey `retryAt`, and their outcomes update the scheduler. Timer passes remain independent. |
| R2-2 / R1-6: validation checks lack independent mutation coverage | Resolved. The three added records isolate the empty-mapping, state and device checks without another rejection masking them. |

No new P1–P3 findings.

The baseline update is sound: claim passes rebuild the full edges file through `edgesFileWriteClaims`, and `done` records the fingerprint sampled before publication. A registry change during publication remains detectable on the next tick. Failed publication leaves the baseline unchanged.

The additional backoff condition gates only claim passes; it cannot veto an otherwise-due timer or change pass. Failed claim publications now establish the intended shared retry backoff. With HA disabled, scheduling remains unchanged.

Reviewed `064366a9` against the checkout and rev 5.4. All 16 complete Go file blocks passed syntax parsing. Independent in-memory models reproduced the 12 failed-publication attempts and detected each stated scheduling and discharge mutation. **Compilation and the actual Go tests could not run in this read-only sandbox.** No files changed.

**Verdict: ready to build.**