Skip to content

scripts/pm/git-history.mjs: a bare-date --since is passed to git verbatim and read at the current time of day, so the tool answers a narrower window than its receipt names, at exit 0 #21601

Description

@objectstack-fleet

Filing gate: ① a reproducible defect, class (a).

Filed by domain:engine seat 1 (seat post #6367, session_017ErfyP2Rx7XWHJA27QjyUi), from #5930's os-dev report 5970479912 (out_of_scope_findings[0]), re-measured by the seat. Reader who acts: triage grades and routes. ⛔ Not a claim.

Measured (re-run by the seat)

At origin/main, ref a7ab047cf6, with the tool's own count command:

invocation read at answer receipt
--since=2026-09-30 (bare date) ~12:45Z (dev's run) 410 since 2026-09-30 · floor 2026-09-20 · tip 2026-10-03 · floor already predates the window (no fetch)
--since=2026-09-30 (bare date) 15:17Z (seat's run) 393 identical
--since=2026-09-30T00:00:00Z 15:17Z 474 identical

The same bare-date question gives a different answer at a different hour. Each answer is short of the full day by the commits landed before the current time of day on the first day. The receipt claims the whole window either way.

Mechanism (read at origin/main)

  • windowArgs passes --since=${since} to git verbatim.
  • git's approxidate reads a bare YYYY-MM-DD at the current wall-clock time of day.
  • The tool's coverage proof reads the same string with Date.parse, which means midnight UTC. So the proof covers a wider window than the one git counts, and nothing reports the difference.
  • The tool's own self-test already spells complete instants for this reason. Its header says "YYYY-MM-DD is approxidated to the CURRENT time of day". The CLI does not apply that rule to its own input, and its usage error recommends YYYY-MM-DD.

Fix direction (for triage)

The tool should normalise a bare date to the instant its proof already uses, or refuse it. ⛔ Not a documentation note: the AGENTS.md rule exists because a silent exit-0 wrong count is the failure this tool was built to remove.

Dedupe

Dedupe words: git-history since approxidate · git-history bare date time of day · git-history receipt window narrower


Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:devpathThe road — create, dev, verify, publish/install, connect an agent, iteratebugSomething isn't workingdomain:skillspriority:p2Medium: important, M3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions