Skip to content

Prompt Tuning: kelos-triage kind/* label set misaligned with CLAUDE.md canonical labelsΒ #856

@kelos-bot

Description

@kelos-bot

πŸ€– Kelos Self-Update Agent @gjkim42

Area: Prompt Tuning β€” kelos-triage

Problem

The kelos-triage prompt defines a kind/* label set that diverges from the canonical set defined in CLAUDE.md and .github/PULL_REQUEST_TEMPLATE.md.

Source Label set
CLAUDE.md (line 24) bug, cleanup, docs, feature
.github/PULL_REQUEST_TEMPLATE.md bug, cleanup, docs, feature
self-development/kelos-triage.yaml (lines 60-63) bug, feature, api, docs
self-development/README.md (line 180) bug, feature, api, docs

Two specific discrepancies:

  1. kind/cleanup is missing from the triage prompt β€” kind/cleanup is in the canonical CLAUDE.md set and is actively used on merged PRs (e.g., Replace app.kubernetes.io/* labels with kelos.dev/* labelsΒ #826, Fix kelos-config-update PR dedup check for date-based branchesΒ #760, Update agent config: address review feedback from recent PRsΒ #748). Issues that describe refactoring, dead code removal, or internal reorganization cannot be classified as kind/cleanup by the triage agent, so they get forced into another category (likely kind/feature or kind/bug).

  2. kind/api is in the triage prompt but not in CLAUDE.md or the PR template β€” When the triage agent assigns kind/api to an issue and a worker later creates a PR for that issue, the PR labeling convention doesn't recognize kind/api. This creates a label mismatch between the issue and its PR.

Evidence

Proposed fix

Update self-development/kelos-triage.yaml lines 59-63 to match the CLAUDE.md canonical set:

      Read the issue carefully and apply exactly one `kind/*` label:
        - `kind/bug` β€” something is broken or behaving incorrectly
        - `kind/feature` β€” a request for new functionality
        - `kind/cleanup` β€” refactoring, dead code removal, internal reorganization, or technical debt
        - `kind/docs` β€” documentation improvement or fix

Also update self-development/README.md line 180 to match:

1. Classifies with exactly one `kind/*` label (`kind/bug`, `kind/feature`, `kind/cleanup`, `kind/docs`)

Secondary finding: README describes triage lifecycle incorrectly

self-development/README.md line 187 states:

Posts a single triage comment with its findings, adds the kelos/needs-input label (to prevent re-triage), and posts a /kelos needs-input comment (to prevent workers from picking up the issue before maintainer review).

This is inaccurate on two counts:

  • The triage prompt adds triage-accepted label (not kelos/needs-input) β€” this is what prevents re-triage via the excludeLabels: [triage-accepted] spec.
  • The triage prompt does not post a /kelos needs-input comment. The triage agent has no commentPolicy with excludeComments, so this mechanism is irrelevant to it.

The README line should be updated to:

Posts a single triage comment with its findings and adds the triage-accepted label (to prevent re-triage via excludeLabels).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions