Skip to content

Enforce HLC drift bounds on backward clock + harden vector clock parsing#27

Merged
dexcompiler merged 5 commits intomainfrom
hlc/drift-check-improvement
Feb 7, 2026
Merged

Enforce HLC drift bounds on backward clock + harden vector clock parsing#27
dexcompiler merged 5 commits intomainfrom
hlc/drift-check-improvement

Conversation

@dexcompiler
Copy link
Copy Markdown
Owner

This PR tightens HLC drift enforcement and adds regression coverage, plus small robustness improvements to VectorClock parsing/coordinator locking.

  • HlcGuidFactory.NewGuidWithHlc( ) now checks drift ( _logicalTimeMs - physicalTimeMs ) after every state update, so large backward-clock jumps are detected immediately when ThrowOnExcessiveDrift=true
  • Entry parsing now splits on the first : only (Split(':', 2, ...)) to avoid malformed cases with extra separators.
  • VectorClockCoordinator uses Lock for consistency with other coordinators.

Check drift after every NewGuidWithHlc state update

Add unit tests for backward-clock drift enforcement

Update opus 4.6 deep-dive doc to match current implementation
Treat whitespace-only strings as empty vector clock input

Limit entry split to a single ':' to avoid malformed parsing

Use Lock in VectorClockCoordinator for consistency
@dexcompiler
Copy link
Copy Markdown
Owner Author

@copilot review

Copy link
Copy Markdown
Contributor

Copilot AI commented Feb 7, 2026

@dexcompiler I've opened a new pull request, #28, to work on those changes. Once the pull request is ready, I'll request review from you.

Enforce HLC drift bounds on backward clock + harden vector clock parsing
@dexcompiler dexcompiler merged commit 0f2c176 into main Feb 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants