Skip to content

fix(overwatch): Exit 0 when no updated loop on comment#699

Open
xavierhamel wants to merge 3 commits into
masterfrom
xh/fix/overwatch-exit-0-no-update
Open

fix(overwatch): Exit 0 when no updated loop on comment#699
xavierhamel wants to merge 3 commits into
masterfrom
xh/fix/overwatch-exit-0-no-update

Conversation

@xavierhamel

Copy link
Copy Markdown
Contributor
  • feat(overwatch): Add loop orchestrator
  • bump version
  • fix(overwatch): Exit 0 when no updated loop on coment

@greptile-apps

greptile-apps Bot commented Jul 24, 2026

Copy link
Copy Markdown

Greptile Summary

Adds a multi-loop orchestrator and label-based ownership guard for routing PR review comments.

  • Introduces registration, listing, selected-loop execution, and shared comment-event dispatch.
  • Extends GitHub PR metadata and result types with labels and non-match outcomes.
  • Changes unmatched comment-event commands to exit successfully.
  • Adds orchestrator and ownership-guard tests, examples, exports, and documentation.

Confidence Score: 3/5

The PR should not merge until ambiguous multi-label PRs are prevented from being processed by whichever loop happens to be registered first.

Routing starts loop-specific mutation as soon as one registered label matches, even though labels can accumulate and another registered loop may also match; the resulting registration-order choice can run the wrong actuator and update the wrong memory.

overwatch/src/orchestrator.ts, overwatch/src/control-loop.ts, overwatch/README.md

Important Files Changed

Filename Overview
overwatch/src/orchestrator.ts Adds multi-loop registration and routing, but first-match dispatch allows ambiguous multi-label PRs to run under the wrong loop.
overwatch/src/control-loop.ts Adds label ownership checks before comment processing; inclusive matching does not establish exclusive ownership.
overwatch/src/cli.ts Adds the orchestrator CLI and correctly implements successful no-match exits, with stale documentation elsewhere.
overwatch/src/github.ts Extends PR lookup with label names used by the new ownership guard.
overwatch/src/types.ts Adds typed wrong-loop and orchestrator dispatch outcomes consistent with the implementation.
overwatch/README.md Documents orchestration but contradicts the newly implemented successful exit behavior for unmatched comments.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
  E[apply-comments PR number] --> O[LoopOrchestrator]
  O --> L1[Probe registered loop]
  L1 --> G{PR contains loop label?}
  G -- No --> N[Probe next loop]
  N --> L1
  G -- Yes --> A[Apply comments with that loop's configuration]
  A --> M[Update memory and push branch]
  N -->|No loops match| Z[Exit successfully without changes]
Loading

Reviews (1): Last reviewed commit: "fix(overwatch): Exit 0 when no updated l..." | Re-trigger Greptile

Comment thread overwatch/src/orchestrator.ts
Comment thread overwatch/README.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants