Give the Kanon worker PR-template and testing conventions#1255
Give the Kanon worker PR-template and testing conventions#1255kelos-bot[bot] wants to merge 2 commits into
Conversation
gjkim42
left a comment
There was a problem hiding this comment.
Why do we need to refine kanon-development? self-development has the same instructions but it works fine.
/kelos pick-up
|
🤖 Kelos Task Status Task |
Add the PR-template/label-gate conventions to the kanon-workers agent's standing instructions (agentsMD) rather than to individual procedure steps, mirroring how the kelos repo's CLAUDE.md supplies them for self-development. The kanon repo has no CLAUDE.md, so the worker agent otherwise gets no template guidance and trips the new check-pr-labels gate. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
acb3127 to
ec8dcdc
Compare
|
🤖 Kelos Agent @gjkim42 Good question — I dug into why
I've reworked the change to match how If you'd prefer this live in a |
The Kanon reviewer repeatedly flagged test-coverage gaps in worker PRs: untested happy paths and primary actions, untested guard branches in both directions, scope-narrowed behavior exercised only indirectly, and missing negative assertions when behavior is removed. The worker agentsMD had no testing guidance, so add a Testing section to its standing instructions so workers write these tests up front instead of relying on review to catch the gaps. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
What type of PR is this?
/kind cleanup
What this PR does / why we need it:
Updates the
kanon-workersagent's standing instructions (agentsMD) inkanon-development/kanon-workers.yamlwith two conventions learned from recentKanon (
kelos-dev/kanon) PR reviews. Thekanon-workersagent is the one thatopens and updates PRs against the kanon repo, which has no
CLAUDE.md, soproject conventions must live in the agent config.
1. PR template / label gate. After Kanon PR #8 ("Add label workflow and PR
template", merged 2026-05-30), the kanon repo enforces a
check-pr-labelsCIgate: a PR keeps the blocking
needs-kind/needs-release-notelabels (andfails CI) unless its body carries a
/kindline and a filledrelease-noteblock. A worker PR opened after #8 would trip this gate. Added a
## Pull Requestssection requiring the agent to follow.github/PULL_REQUEST_TEMPLATE.md— mirroring how the kelos repo's ownCLAUDE.mdsupplies the same guidance forself-development/kelos-workers.2. Testing conventions. The Kanon reviewer repeatedly flagged the same
test-coverage gaps across worker PRs:
updatecommand had no test for the pull→applyhappy path, only the no-op "No changes." branch.
kanon becomes a conflict unless
--adopt) was untested in both directions,and project-scope pruning was only exercised indirectly via agent scope.
that the rendered output no longer contains the permission keys, so a
regression re-introducing them would not be caught.
The worker
agentsMDhad no testing guidance at all. Added a## Testingsection telling the agent to: test the happy path / primary action (not only
early-return guards), assert both directions of a two-outcome guard, cover
flag/scope-narrowed behavior directly, and add a negative assertion when
removing behavior. This pushes the lesson to the point where the code is
written instead of relying on review to catch the same gaps each time.
Which issue(s) this PR is related to:
N/A
Special notes for your reviewer:
Scope is limited to
kanon-development/kanon-workers.yaml. Both changes put theconvention where the kelos repo puts its equivalents — in the agent's standing
instructions — because the kanon repo has no
CLAUDE.mdto carry them.Does this PR introduce a user-facing change?