kelos-dev / kelos-dev/kelos

Replace /reset-worker workflow with TriggerComment-based retrigger

Open
#467 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

kelos/needs-input kind/feature needs-actor priority/important-longterm triage-accepted
Dominant language
Go
Stars
331
Forks
40
Avg merge
1d 21h
Merged PRs (30d)
70

Description

Summary

The /reset-worker GitHub Actions workflow (.github/workflows/reset-kelos-worker.yaml) can be replaced by the spawner's TriggerComment retrigger feature (#432), but there's a blocker: the kelos/needs-input excludeLabel prevents the spawner from even discovering issues that need retriggering.

Current flow

  1. Spawner discovers issue (no kelos/needs-input) → creates task
  2. Agent finishes → adds kelos/needs-input label
  3. Human posts /reset-worker → workflow removes label + deletes task via kubectl
  4. Next poll cycle → spawner rediscovers the issue and creates a new task

Problem

TriggerComment retrigger (#432) can delete completed tasks and recreate them, but excludeLabels: [kelos/needs-input] filters out the issue at the GitHub API level before the spawner ever sees it. The trigger comment is never evaluated.

Proposal

Teach the spawner to remove the kelos/needs-input label (or a configurable excludeLabel) when it retriggers a completed task. This would let TriggerComment fully replace the /reset-worker workflow:

  1. Human posts trigger comment (e.g., /kelos pick-up)
  2. Spawner discovers the issue (label no longer blocks discovery for retrigger)
  3. Spawner deletes the completed task, removes the excludeLabel, and creates a new task
Considerations
  • The kelos/needs-input label is also used by kelos-triage.yaml — changes should not break that flow
  • /reset-worker also resets running tasks; TriggerComment only handles completed ones
  • Admin-only access control on /reset-worker would be lost unless replicated

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading .github/workflows/reset-kelos-worker.yaml and tracing the spawner's TriggerComment handling and excludeLabels behavior. Review kelos-triage.yaml before changing label handling. Done means completed-task retriggering can remove the configured exclude label without breaking triage, running-task behavior, or the existing admin access expectations.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, go, kubernetes
Domain
ci-cd, devops, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.