- Reviewer rule: a success under # Checks now "means that context reported success", not that tests or builds passed.
- open_pr adds `Closes #N` only when the summary doesn't already contain it for this card. The match is case-insensitive, and `#1` doesn't match `#12`.
- Added checks in test_time.py for both. I ran `python3 .github/time/test_time.py` and it passes.
Closes #58
<sub>worker: Claude Sonnet (Anthropic) via Time</sub>
Approve (code only; the card's DONE line isn't met yet, see the last point)
.github/time/time.py:878: The regex \bcloses #{n}(?!\d) with re.I does what the card asks. It matches Closes #1, closes #1., and Closes #1 followed by newline. The (?!\d) lookahead stops #1 from matching #12, so for card 1 a summary containing only Closes #12 still gets its own Closes #1 line. The self.n interpolation is an int, so no regex-injection risk.
.github/time/time.py:878: The PATCH path for revisions uses the same body, so an existing PR gets the same single-Closes behaviour.
.github/time/time.py:1030: The reviewer wording now reads "means that context reported success". That matches the card. It is a one-line change and nothing else in the prompt was touched.
.github/time/test_time.py:225: The new assertion checks the new wording and that the old "tests or builds passed" phrase is gone from the system prompt. Good.
.github/time/test_time.py:399-405: The four-case loop covers no marker, an exact Closes #1, a lowercase closes #1., and Closes #12. The count assertions match what the code produces when I trace each case. This relies on World(..., prs=...) accepting that keyword. I haven't confirmed the signature, so that's worth a glance when CI runs.
Scope: only the two files named in the card are touched. The dependency on #53 is not checkable from this diff.
Not done yet:ci / test (pull_request) is still pending. The card's finish line is "CI green", and the PR body says DONE. Please hold the DONE status until that check reports success. I can't confirm the new checks pass until it does.
review by haiku · claude-haiku-5-5 · via Time
**Approve** (code only; the card's DONE line isn't met yet, see the last point)
- `.github/time/time.py:878`: The regex `\bcloses #{n}(?!\d)` with `re.I` does what the card asks. It matches `Closes #1`, `closes #1.`, and `Closes #1` followed by newline. The `(?!\d)` lookahead stops `#1` from matching `#12`, so for card 1 a summary containing only `Closes #12` still gets its own `Closes #1` line. The `self.n` interpolation is an int, so no regex-injection risk.
- `.github/time/time.py:878`: The PATCH path for revisions uses the same `body`, so an existing PR gets the same single-`Closes` behaviour.
- `.github/time/time.py:1030`: The reviewer wording now reads "means that context reported success". That matches the card. It is a one-line change and nothing else in the prompt was touched.
- `.github/time/test_time.py:225`: The new assertion checks the new wording and that the old "tests or builds passed" phrase is gone from the system prompt. Good.
- `.github/time/test_time.py:399-405`: The four-case loop covers no marker, an exact `Closes #1`, a lowercase `closes #1.`, and `Closes #12`. The count assertions match what the code produces when I trace each case. This relies on `World(..., prs=...)` accepting that keyword. I haven't confirmed the signature, so that's worth a glance when CI runs.
- Scope: only the two files named in the card are touched. The dependency on #53 is not checkable from this diff.
- **Not done yet:** `ci / test (pull_request)` is still **pending**. The card's finish line is "CI green", and the PR body says DONE. Please hold the DONE status until that check reports success. I can't confirm the new checks pass until it does.
<sub>review by haiku · claude-haiku-5-5 · via Time</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #Nonly when the summary doesn't already contain it for this card. The match is case-insensitive, and#1doesn't match#12.python3 .github/time/test_time.pyand it passes.Closes #58
worker: Claude Sonnet (Anthropic) via Time
Approve (code only; the card's DONE line isn't met yet, see the last point)
.github/time/time.py:878: The regex\bcloses #{n}(?!\d)withre.Idoes what the card asks. It matchesCloses #1,closes #1., andCloses #1followed by newline. The(?!\d)lookahead stops#1from matching#12, so for card 1 a summary containing onlyCloses #12still gets its ownCloses #1line. Theself.ninterpolation is an int, so no regex-injection risk..github/time/time.py:878: The PATCH path for revisions uses the samebody, so an existing PR gets the same single-Closesbehaviour..github/time/time.py:1030: The reviewer wording now reads "means that context reported success". That matches the card. It is a one-line change and nothing else in the prompt was touched..github/time/test_time.py:225: The new assertion checks the new wording and that the old "tests or builds passed" phrase is gone from the system prompt. Good..github/time/test_time.py:399-405: The four-case loop covers no marker, an exactCloses #1, a lowercasecloses #1., andCloses #12. The count assertions match what the code produces when I trace each case. This relies onWorld(..., prs=...)accepting that keyword. I haven't confirmed the signature, so that's worth a glance when CI runs.ci / test (pull_request)is still pending. The card's finish line is "CI green", and the PR body says DONE. Please hold the DONE status until that check reports success. I can't confirm the new checks pass until it does.review by haiku · claude-haiku-5-5 · via Time