You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(telemetry): a sink record's day comes from the moment it parses to, never from its text #825
telemetrySinkRecordDayKey picks the UTC day a stored record belongs to. After checking that event_timestamp parses, it takes a shortcut: any string of 10 characters or more that ends in Z is sliced to its first 10 characters instead of being read through the parsed date. A timestamp that parses but is not in canonical ISO form gets a wrong day, or a key that is no day at all.
Affected file(s)
cli/src/contexts/telemetry/domain/telemetry-sink-record.ts, telemetrySinkRecordDayKey (the at.endsWith("Z") branch).
Expected
The key is the UTC day of the moment the string parses to: parsed.toISOString().slice(0, 10).
Observed
Node 24, same logic as the function:
event_timestamp
key returned
actual UTC day
2026-09-10T24:00:00Z
2026-09-10
2026-09-11
Thu, 10 Sep 2026 23:00:00 Z
Thu, 10 Se
2026-09-10
10 Sep 2026 23:30 Z
10 Sep 202
2026-09-10
+002026-09-10T10:00:00Z
+002026-09
2026-09-10
A key like Thu, 10 Se falls outside every period, so the record drops out of a report without being counted as undated. The function's own comments name that failure as the one to avoid.
AI tool
Any. The sink is tool-independent.
aidd-cli version
5.3.0, and next.
OS
Any.
Additional context
Latent: this CLI writes canonical toISOString() timestamps itself. A sink shared through AIDD_TELEMETRY_DIR can still hold lines another writer produced. Found by the #799 mutation pass on the telemetry context.
Activity
fix(telemetry): a sink record's day comes from the moment it parses to (