repo compare: flag replay tasks a guidance revision may have seen
Maintainers usually reply within 1 day
@antonwolfy is already working on this.
Since Nov 1, 2026.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
Research direction
Start by reading the repo tasks replay, repo run, and repo compare entry points, plus contract sections 4.6 and 9 and the fixture tests. Trace how replay tasks store gold thread data and how compare reads arm metadata; then implement and test the requested review time and guidance history flags. Done means fixture tests cover PR-name and after-review-date flags, unrelated tasks remain unflagged, and the docs explain both flags.
Written by the indexing model from the issue text.
Description
Problem
A guidance:rev:<sha> arm runs a revision of a repository's guidance against review_replay tasks built from PRs merged earlier. When the guidance was written or edited after a task's review, it can encode that review, and the arm then "catches" the thread because a rule was written from it. Nothing in a batch shows this.
A replay of IntelPython/dpnp#3099 (eight AGENTS.md files; 26 tasks from dpnp PRs merged 2026-09-01..10-28; guidance:none vs guidance:rev:d8fb283) ran into it:
- The cut looked clean. The guidance's first commit (
7781481, 14 Oct 18:45Z) was mined from reviews before it. So a split by review date looked like an out-of-sample test: 9 tasks reviewed after the cut, recall +0.111 against −0.025 for the 17 before. - It was not clean. The evaluated revision has later guidance commits that name three of those 9 tasks' PRs:
c9b533d"Update test guidance for the fixes in #3103";a9f79ed"Update CMake guidance for the extension helper in #3111";441690c, with a rule taken from #3098.
- And
441690ccame after every one of them. It was committed after the first review comment of all 9. - The batch can't show it.
task.jsonhas no review time, andmeta.jsonrecords the arm's SHA but not its guidance history. The split, and finding the leak, were done by hand.
Proposal
- Review time:
repo tasks replaywritesreviewed_atintotask.json: thecreatedAtof the earliest gold thread's first comment. The threads file already holds it. - Guidance history:
repo run, for aguidance:rev:<rev>arm, records the commits reachable from<rev>that touch the manifest's guidance globs, inmeta.jsonarm_rev.guidance_commits({sha, date, subject}, newest first, capped). - Report it:
repo compareflags the tasks such an arm may have seen.- By date: some guidance commit is dated after the task's
reviewed_at. - By name: a guidance commit's message names the task's
source_pr(#<n>). - The output says how many tasks each flag covers and names the named ones. The rest can be compared on their own (with a
repo compare --taskfilter, or an option for it).
- By date: some guidance commit is dated after the task's
- Arms with no history: a
patch:arm has none, so it reads "unknown".guidance:rawis the base's own guidance and is never flagged.
Open questions
- The date rule is strict. Here it flags all 26 tasks for
d8fb283: the last guidance commit came after every review. Is a per-file rule better, counting only commits to a guidance file the task's diff makes relevant? - Which date? Author date or committer date, given that a rebase moves the committer date.
- Content: should a commit that names no PR, but adds text matching a gold comment, be found too? That is a text-similarity question, likely out of scope.
Done when
The fixture tests cover two cases: a guidance commit that names a task's PR, and one dated after a task's review. repo compare flags both, and leaves the other tasks unflagged. The docs (contract §4.6 and §9) say what the flags mean.
- Dominant language
- Python
- Stars
- 9
- Forks
- 9
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 269
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from intel/dokimi
-
Difficulty 5/5 Over a week Newbie friendliness 8/100
Maintainers usually reply within 1 day
-
eval reference: stamp a digest of the questions file so headroom catches an edit at the same pathOpen
Difficulty 3/5 1-2 days Newbie friendliness 32/100
Maintainers usually reply within 1 day
-
Harbor features unsupported: MCP servers, compose sidecar services, separate verifier environmentOpen
Difficulty 5/5 Over a week Newbie friendliness 12/100
Maintainers usually reply within 1 day
-
Fidelity contract per arm: golden payload diff in CI vs the real harness, starting with Claude CodeOpen
Difficulty 4/5 3-5 days Newbie friendliness 30/100
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 28/100
Maintainers usually reply within 1 day
Similar issues
-
area:scripts area:tests bug priority:later
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Ikalus1988/MisakaNet#4358 ·
Maintainers usually reply within 1 day
-
Discovered ports from service discovery are never propagated to modules in Module.load()Possibly taken @vishalmore90 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
OWASP/Nettacker#1828 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
aws-samples/sample-per-model-bedrock#708 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
sjkim1127/Reversecore_MCP#365 ·
Maintainers usually reply within 1 day