-
Notifications
You must be signed in to change notification settings - Fork 12
Description
🤖 Kelos Self-Update Agent @gjkim42
Area: Configuration Alignment
Summary
The kelos-triage prompt defines a different set of kind/* labels than CLAUDE.md and .github/PULL_REQUEST_TEMPLATE.md. The triage agent uses kind/api (not in the canonical set) and omits kind/cleanup (which is in the canonical set). This creates a split where issues triaged by the agent use one taxonomy and PRs created by workers use another.
Additionally, agentconfig.yaml agentsMD is still missing several CLAUDE.md sections that affect all PR-creating agents: the "Rules for AI Assistants" (CI/release workflow guidance, minimality principle), the e2e test guidance, and the "Directory Structure" section.
Findings
1. Triage agent kind/* labels don't match CLAUDE.md or the PR template
CLAUDE.md (line 23):
- Choose exactly one `/kind` label from: `bug`, `cleanup`, `docs`, `feature`.
.github/PULL_REQUEST_TEMPLATE.md (lines 5-8):
/kind bug
/kind cleanup
/kind docs
/kind feature
kelos-triage.yaml (lines 56-59):
- `kind/bug` — something is broken or behaving incorrectly
- `kind/feature` — a request for new functionality
- `kind/api` — related to API changes or additions
- `kind/docs` — documentation improvement or fix
Discrepancy:
| Label | CLAUDE.md / PR Template | Triage Prompt |
|---|---|---|
kind/bug |
✅ | ✅ |
kind/feature |
✅ | ✅ |
kind/docs |
✅ | ✅ |
kind/cleanup |
✅ | ❌ Missing |
kind/api |
❌ Not listed | ✅ Used |
Impact — kind/api is actively applied to issues that workers then pick up:
The triage agent has applied kind/api to 10+ issues (e.g., #636, #633, #603, #600, #563, #540, #537, #498, #475). When a worker agent later creates a PR for one of these issues, the PR template and CLAUDE.md instruct it to choose from bug, cleanup, docs, feature — with no api option. This forces workers to either:
- Re-classify the issue's kind on the PR (inconsistency between issue and PR labels)
- Pick a poor fit like
featurefor what is fundamentally an API change
Meanwhile, kind/cleanup is manually applied to issues (e.g., #601, #592, #575, #566) but the triage agent can never recommend it since it's not in its prompt.
Recommendation: Decide on a single canonical set. Either:
- (a) Add
kind/apitoCLAUDE.mdand the PR template, and addkind/cleanupto the triage prompt — expanding to 5 labels total - (b) Remove
kind/apifrom the triage prompt and addkind/cleanup— aligning to the existing 4-label set from CLAUDE.md
Option (b) is simpler and maintains consistency with the PR template. Issues currently labeled kind/api could be classified as kind/feature (new API capability) or kind/cleanup (API refactoring).
2. self-development/README.md triage section mirrors the wrong label set
README.md (line 125):
1. Classifies with exactly one `kind/*` label (`kind/bug`, `kind/feature`, `kind/api`, `kind/docs`)
This mirrors the triage prompt's label set (with kind/api, without kind/cleanup) rather than the canonical set from CLAUDE.md. If the triage prompt is corrected, the README must be updated to match.
3. agentconfig.yaml still missing CLAUDE.md sections that affect all agents
The shared agentconfig.yaml agentsMD (used by kelos-triage, kelos-config-update, and kelos-squash-commits) and the co-located AgentConfigs (in kelos-workers.yaml, kelos-self-update.yaml, kelos-fake-user.yaml, kelos-fake-strategist.yaml) all share identical agentsMD content that omits three CLAUDE.md sections:
Missing from all AgentConfigs:
(a) "Rules for AI Assistants" — CLAUDE.md lines 4-6:
- Keep changes minimal. Do not refactor, reorganize, or 'improve' code beyond what was explicitly requested.
- For CI/release workflows, always use existing Makefile targets rather than reimplementing build logic in YAML.
The agentconfig says "Keep changes minimal and focused" but lacks the explicit "Do not refactor" and CI/release workflow guidance.
(b) e2e test guidance — CLAUDE.md line 17:
- e2e tests are hard to run locally. Push changes and use the PR's CI jobs to run them instead.
This is absent from all agent configs, meaning agents may waste time trying to run e2e tests locally.
(c) "Directory Structure" — CLAUDE.md lines 27-30:
- `cmd/` — CLI entrypoints
- `test/e2e/` — end-to-end tests
- `.github/workflows/` — CI workflows
This helps agents navigate the codebase efficiently.
Note: The "Pull Requests" section is partially addressed by the open PR #652 (release-note guidance). The full PR template compliance (all /kind labels, section requirements) remains unaddressed but was previously tracked in closed issue #538.
Proposed Changes
- Align
kelos-triage.yamlkind labels with CLAUDE.md — replacekind/apiwithkind/cleanup(or add both, pending maintainer decision on the canonical set) - Update
self-development/README.mdline 125 to match the corrected triage label set - Add missing CLAUDE.md conventions to
agentsMDacross all 5 AgentConfig definitions (4 co-located + 1 shared) — specifically the "do not refactor" rule, CI/release workflow guidance, e2e test guidance, and directory structure