Skip to content

/build sweep treats unanswered command threads as handled — dropped commands stay invisible #75

Description

@JPDuchesne

From the audit of dev#140's /build dispatch; first recorded as a follow-up bullet on #74, promoted here.

Commands::Build#sweepable_threads (lib/ai_flow/commands/build.rb) rejects any unresolved thread whose first comment is a command — doctrine: "a threaded /ask and its answer are a handled conversation, not outstanding feedback". That assumes the command pipeline answered it. The two /asks the concurrency bug (#73) evicted were absent from that sweep's 19 threads: nothing would ever have touched them without manual replies. Dropped or failed commands are invisible forever — the ack 👀 lands, the answer never does, and every later sweep skips the thread.

#74 guarantees delivery for review-submitted commands, which re-validates the assumption for the main path. Still uncovered:

Proposed fix: make the sweep's rejection evidence-based — skip a command-led thread only when a bot (ai-flow[bot]) reply exists in the thread; otherwise treat it as outstanding. That converts every future delivery bug from silent loss into eventual pickup by the next /build.

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

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions