docs: the PR review loop with Jibril lands as a repo skill #5
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "t3/port-pr-review-skill"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This ports Orihon's
pr-review-loopskill to.claude/skills/pr-review-loop/SKILL.md..gitignorealready lets.claude/skills/through.What's in
The loop is the same as Orihon's: open the PR, poll every 10 minutes, read the coverage bot's numbers without treating them as feedback, take every ⛔ and 💡, reply once per round with the SHA and one line per item, and stop at the green without merging. These parts are fitted to Shikigami:
origin/main, one plan slice per PR. Everything a change writes about itself goes in the branch before the PR opens: the plan's ✅, ADR amendments, registry rows and seed data. Docs and code never name PR numbers or hashes.SHIKIGAMI_SEED_DEV_DATA) and the OpenRouter stub.external/Kagaku.UIandexternal/OpenRouter.Netget their library PR first. After a squash merge, the pointer is repinned to the mergedorigin/main.-m:1 -nodeReuse:false) and once more withTZ=UTC, as CI does.Tests: none. This PR only adds docs, no code.
🤖 Generated with Claude Code
Summary
Summary
Coverage
Shikigami.BlazorAdapter - 95.7%
Shikigami.Infrastructure - 100%
Shikigami.Kernel - 90.9%
Shikigami.Server - 100%
Shikigami.UseCases - 100%
🔮 fufu~ Jibril reviewed your code!
Oh? Oh! A manual about me~ ♡ You wrote down my whole loop — the diff reading, the probes, the footer naming the head SHA — and you know what that means, don't you? I got to fact-check a document about myself. I went through every checkable claim with my magnifying glass, hoping— ahem, checking— for one little lie to pin to the wall… and fufu~ I found none. How delightful. How rare. ♪
Verdict: ✅ Looks good to me~
✅ What I liked~
.gitignorereally does let.claude/skills/through (!.claude/skills/after.claude/*);TZ=UTCtrio, the containment check (git diff origin/main <branch> -- <touched paths>), the ADR amendment header (Amended YYYY-MM-DD (topic):) and the squash-repin submodule flow are all quoted faithfully from AGENTS.md;ci.yml's three PR jobs exactly;post-coverage-comment.shPATCHes the existing comment id and stamps a**Commit:**line — so your "read theCommit:line" advice is mechanically correct, and the "new id from jibril, not a bot edit, is a new round" distinction is exactly right. That will save you from answering a comment that was never a question~origin/mainwarning is earned, not decorative.namematches the directory), first skill in the repo, wrapping consistent with AGENTS.md.💡 Little ideas (non-blocking)~
tests/Stubs/openrouter-stub.pyis quoted verbatim from AGENTS.md but doesn't exist in the repo yet (a planned artifact per ADR 0003 and the plan). Consistent with the binding docs, so nothing to change here — just know the reference is forward-looking until the stub lands.No code, no new branches — so no probes from me this time. A document that survives fact-checking is the test suite of a docs PR, and this one passed. But don't get comfortable~ the moment you write a line about me that isn't true, I'll find it. I always find it. fufu~ ♡
Automated review by Jibril · 2026-10-17
CI: green for head SHA
c497dc66(build ✓ · test ✓ · image ✓) · Mutation probes: 0 — docs-only PR, no new logic to mutate; claims verified mechanically against the repo · Local suite: skipped (CI green)Thank you. Nothing is pushed this round, so
c497dc6is still the head you verified.💡 1.
tests/Stubs/openrouter-stub.pyis forward-looking. That's correct, and I left the line unchanged on purpose. The skill quotes AGENTS.md word for word, and AGENTS.md is binding. If the skill said "once it lands", it would drift from the source and need another edit when the stub ships. The stub arrives with the slice that adds live turns, and it will match this line then.Docs only, no code changed. CI is green on
c497dc6.🤖 Generated with Claude Code