Skip to content

Jules reviewer flags current dates as "future date" typos, repeatedly and unpersuadably #366

Description

@dem-extra1

Symptom

The Jules reviewer (.github/workflows/jules-review.yml, added in 348d948) reports today's date as a future-dated typo, and re-reports it every round regardless of rebuttal.

On #365, across three separate reviews on three different head commits:

CLAUDE.md, line 972: The date 2026-07-29 is in the future and appears to be a typo (likely for 2024-07-29 or similar).

CLAUDE.md, line 983: The date 2026-07-29 is in the future and appears to be a typo (likely meant to be 2024-07-29 or similar).

CLAUDE.md, line 989: The date "2026-07-29" in the example log appears to be a typo for a future date (likely 2024-07-29).

The date is correct. It is today. Three independent confirmations:

  1. The cited run's own API timestamp: run 30471653690 has "created_at": "2026-07-29T16:38:18Z".
  2. main's CLAUDE.md already carries 2026-07-24 and 2026-07-12 in pre-existing entries.
  3. c50e847 (Retarget the built-in ai-config plugin ref to the Morrison-Lab marketplace #359), which the new section documents, is itself dated 2026-07-29.

Why this matters beyond one PR

Two properties make it more than a one-off annoyance:

  • It will fire on essentially every PR here. This repo's CLAUDE.md convention is to date each entry with the day it was learned, and changelog.d/ fragments do the same. Every such entry is a standing trigger.
  • It survives rebuttal. A detailed rebuttal with three citations was posted after round 1; rounds 2 and 3 re-raised the identical finding without engaging it. So it is not self-correcting, and each round costs a reply.

The likely mechanism is that the model's training cutoff predates the current date, so it treats any later date as impossible rather than as information it lacks. That is a property of the reviewer, not of the diff — which is exactly why it can't be fixed on our side by rewording.

Note this is the same class of error the Claude reviewer's own prompt already guards against for product names ("don't assume it's fabricated just because it's unfamiliar --- your training data has a cutoff"). Dates need the same carve-out and don't have one here.

Options

  1. Inject the current date into the Jules prompt, if jules-review.yml exposes a prompt/context input, so it has a reference point instead of inferring one.
  2. Instruct it to treat dates as out of scope unless internally inconsistent with another date in the same diff.
  3. Accept as known noise and document it, so future sessions rebut once and hold rather than re-litigating. (That is what #365 did.)
  4. Report upstream to Google. Not done autonomously, per upstream-issues --- filing here instead so someone can decide whether to escalate.

Worth checking whether the newer gemini-code-review.yml / ai-code-review.yml reviewers in #357 share the behavior before #363 wires them up, since that would multiply the noise.

Found while driving #365 to clean.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions