updateSourceStats is the only writer of sources.lastHitAt, and both dedup paths skip it, so a source under a provider redelivery storm shows a frozen/absent last hit in the UI even though it is actively receiving traffic; touch lastHitAt best-effort on the dedup return without incrementing recordCount.
Acceptance criteria
- updateSourceStats is the only writer of sources.lastHitAt, and both dedup paths skip it, so a source under a provider redelivery storm shows a frozen/absent last hit in the UI even though it is actively receiving traffic; touch lastHitAt best-effort on the dedup return without incrementing recordCount.
- Includes tests covering the change.
- Lint, tests, and CI green.
Promoted from improvement digest #226
updateSourceStats is the only writer of sources.lastHitAt, and both dedup paths skip it, so a source under a provider redelivery storm shows a frozen/absent last hit in the UI even though it is actively receiving traffic; touch lastHitAt best-effort on the dedup return without incrementing recordCount.
Acceptance criteria
Promoted from improvement digest #226