Skip to content

tracker binding: config.role_labels is null — canonical roles run on defaults, loud warning every lane pass #247

Description

@kyle-sexton

Problem

.work-item-tracker.json at the repo root has provider: "github" but config.role_labels: null. Every work-items lane pass (attend-queue, work-loop, triage) resolves the three canonical roles — autonomous-eligible / human-gated / recurring — from that config, and a null entry drops each to its documented default (agent-ready / needs-human / recurring) behind a loud warning on every invocation.

Why it matters

  • The defaults happen to match this repo's live labels today, so behavior is currently correct — but only by coincidence, not configuration. If the label set is ever renamed, every autonomous lane silently starts querying labels that no longer exist (the exact correctness risk the loud-warning path exists to flag).
  • The warning fires on every lane pass, training operators and agents to ignore a warning that is supposed to be actionable.

Fix

Seed explicit config.role_labels in .work-item-tracker.json (the /work-items:setup flow owns this file) with the repo's actual strings:

"role_labels": {
  "autonomous_eligible": "agent-ready",
  "human_gated": "needs-human",
  "recurring_maintenance": "recurring"
}

(Key names above are unverified against the setup schema — confirm against the work-items plugin's binding contract before applying; the substantive ask is explicit values instead of null.)

Evidence

Observed in the attended queue session 2026-07-26: binding read returned {"provider": "github", "role_labels": null}; lane proceeded on defaults with the documented warning.


Filed by an AI agent (work-items:attend-queue lane) as raw intake — untriaged.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.priority: lowNice-to-have, cosmetic, or speculative; opportunistic.status: needs-decisionAwaiting a human or maintainer judgment call.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions