Use event-time watermarks without discarding late telemetry silently
The hourly aggregate closes by arrival time and quietly ignores a delayed batch from an offline device.
- Focused work estimate
- 3h 30m + prerequisites
- Priority in the scenario
- Medium
- Engineering practice
- Event time · Aggregation
Estimated field mix
- Data engineering70%
- Real-time systems30%
Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.
Review it, then add it to your workspace.
The board opens an editable draft; nothing is saved until you confirm it. Sign-in and workspace permissions apply, and Demo boards remain ephemeral.
Project context
A fictional energy dashboard receives hourly device batches. Corrupt archives and late corrections leave operators unsure which readings reached reports.
Setup prerequisites
- Create synthetic device batches and local object-store fixtures.
- Understand checksums and bounded streaming.
Preceding work
Complete these dependencies, or supply their agreed outputs before taking this ticket.
- AINGEST-101 · Record a manifest before decoding a telemetry batch
- AINGEST-102 · Cap decompressed telemetry bytes before archive expansion
- AINGEST-103 · Normalize sensor units through a versioned conversion table
- AINGEST-104 · Commit telemetry rows and the batch checkpoint atomically
- AINGEST-105 · Quarantine malformed readings with usable row coordinates
- AINGEST-106 · Apply corrected readings without overwriting source history
Acceptance criteria
- Define watermark advancement and allowed lateness.
- Route late readings to a visible correction path.
- Report aggregate revision when late data changes a result.
Implementation constraints
- Test with a controlled clock and explicit event timestamps.
Verification to include
- Deliver an in-window late reading and update the expected aggregate.
- Deliver beyond the lateness window and verify visible deferred correction.
Deliverables
- Watermark logic and late-arrival fixtures
Rollout and recovery
Run alongside the prior aggregate; switch readers only after discrepancy review.
Value of the work
For the engineer: Practice batch integrity, replay and data-quality boundaries.
For the team: Review whether operational data can be traced, corrected and recovered.
Evidence boundaries
Outcome Evidence: Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.
Ownership Evidence: Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.