Deferred items from the final adversarial verification of #6 (none merge-blocking):
- discovery.reset() generation counter (latent, unreachable today):
reset() doesn't invalidate in-flight scans — a scan completing after a reset still advances confirmed, and a later failure could roll through up to that stale watermark. Unreachable via the shell today (reset fires only before any scan exists), but a generation counter closes it cheaply. See portal/portal-discovery.ts.
- HTTP-date
retry-after parses to NaN → treated non-retryable (hard throw) instead of backing off. Main-parity behavior; worth normalizing.
- INTEGRATION.md metrics table omits the
extends counter (main omitted it too).
- Biome
useSingleVarDeclarator sweep: a couple of multi-declarator lines in portal-client.ts pass the warn-level gate; sweep + bump the rule to error per CLAUDE.md.
- Format the (pre-existing) test files' remaining style-rule warnings when the rule bumps.
🤖 Generated with Claude Code
Deferred items from the final adversarial verification of #6 (none merge-blocking):
reset()doesn't invalidate in-flight scans — a scan completing after a reset still advancesconfirmed, and a later failure could rollthroughup to that stale watermark. Unreachable via the shell today (reset fires only before any scan exists), but a generation counter closes it cheaply. See portal/portal-discovery.ts.retry-afterparses to NaN → treated non-retryable (hard throw) instead of backing off. Main-parity behavior; worth normalizing.extendscounter (main omitted it too).useSingleVarDeclaratorsweep: a couple of multi-declarator lines in portal-client.ts pass the warn-level gate; sweep + bump the rule to error per CLAUDE.md.🤖 Generated with Claude Code