feat(automation): add explicit bounded source-fix command - #2175
seonghobae wants to merge 15 commits into
Conversation
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@opencode-agent review 현재 exact head의 신규 write-capable |
|
@coderabbitai review |
|
|
Preservation/consolidation note: keep this PR Open/Draft while #2174 is evaluated as the canonical source-repair owner. This branch has unique semantic evidence that must not be lost: the dedicated mutation-only Do not close this PR until #2174 either carries these deltas/tests/evidence or records an exact reason each is redundant or rejected. Conversely, do not merge this branch independently while its fresh exact-head checks are queued and while the stricter protected-base opt-in / |
Problem
@opencode-agent,/opencode,/oc, and@cwl-noema-revieware intentionally review-only. Appendingfixorrepairnever created a source writer, so comments could be mistaken for repair progress even though no repository mutation path existed.Change
Add a separate explicit command,
@cwl-source-fix <instruction>, with a central write-capable path rather than weakening the review-agent boundary.The router and organization sweep bind each request to the target repository, PR, source comment, requester, full instruction digest, exact base/head refs and SHAs, and an
existing-pr-files-onlywrite mode. The worker revalidates the requester's currentwrite|maintain|adminpermission, re-fetches the unchanged command and exact live PR identity, requires a complete authenticated PR Files receipt, and exposes only non-removed files already present in that PR diff as the mutation scope.Model execution stays on
contextual-orchestrator/orchestrator/free; GitHub/OIDC credentials are removed from the model process and shell/external/web/task capabilities are denied. After editing, changed paths are checked against the authenticated scope,git diff --checkruns, changed Python is compiled, changed YAML is parsed, and the live head is revalidated before one ordinary commit is pushed to the existing PR branch. The worker never approves or merges the PR. A moved head/base, edited command, revoked permission, incomplete file receipt, out-of-scope edit, missing mutation credential, or claim mismatch fails closed.A durable exact-name Actions artifact deduplicates the immutable request. Sibling repositories are covered by the same scheduled central sweep pattern already used for review mentions.
Evidence
.githubremains the canonical owner.This PR starts as Draft until its exact-head central checks and independent review are available.