Skip to content

Sync: stale reports spend no budget and log once a minute - #109

Merged
phornstein merged 2 commits into
mainfrom
fix/sync-stale-followups
Oct 22, 2026
Merged

phornstein merged 2 commits into
mainfrom
fix/sync-stale-followups

Conversation

@phornstein

Copy link
Copy Markdown
Collaborator

Follow-ups to #106, from the code review of the #104 work:

  • Budget. Reports whose estimate is too far from now for the sync wire (±24.8 days) are now left out before within_budget, so they no longer use up the sync byte allowance and push current reports to later flushes.
  • Log flooding. Leaving them out is logged at most once a minute, with a count and up to five track UIDs, so replaying old recordings doesn't flood the log.
  • Test clock. The engine tests' t0() is computed once per run (OnceLock), so a run that crosses midnight UTC keeps one time.

Gate (dev server): cargo fmt --check and cargo clippy --workspace --all-targets -D warnings pass. ot-server 227/227, ot-sync 27/27.

🤖 Generated with Claude Code

Follow-ups to #106 from review:
- Reports too far from now for the wire are left out before the sync
  byte budget is charged, so current reports are not deferred for bytes
  never sent.
- They are logged at most once a minute, with a count and a few tracks,
  so replaying old data does not flood the log.
- The engine tests' t0 is computed once per run, so a run across
  midnight UTC keeps one time.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@phornstein
phornstein merged commit cf35185 into main Oct 22, 2026
3 checks passed
@phornstein
phornstein deleted the fix/sync-stale-followups branch October 22, 2026 23:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

correlation Correlation, track management

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant