Commit Graph
545 Commits
Author SHA1 Message Date
sysadmin a17e8561d0 Merge pull request 'feat: require infra_stop repair handoff for blocked reviewers (Closes #289)' (#366) from feat/issue-289-infra-stop-handoff into master 2026-07-07 08:39:35 -05:00
sysadmin e2771dfe9a fix: resolve conflicts for PR #385 against latest master 2026-07-07 09:38:36 -04:00
sysadmin 7635a17599 fix: resolve conflicts for PR #384 against latest master 2026-07-07 09:38:34 -04:00
sysadmin f9bf830067 fix: resolve conflicts for PR #381 against latest master 2026-07-07 09:38:31 -04:00
sysadmin 85c5d24b0e fix: resolve conflicts for PR #379 against latest master 2026-07-07 09:38:28 -04:00
sysadmin dc51e9a91b fix: resolve conflicts for PR #374 against latest master 2026-07-07 09:38:25 -04:00
sysadmin f749312b45 fix: resolve conflicts for PR #376 against latest master 2026-07-07 09:37:24 -04:00
sysadmin fa922cf8e3 fix: resolve conflicts for PR #373 against latest master 2026-07-07 09:37:21 -04:00
sysadmin 208dc40041 fix: resolve conflicts for PR #372 against latest master 2026-07-07 09:37:18 -04:00
sysadmin 8b555043e3 fix: resolve conflicts for PR #371 against latest master 2026-07-07 09:37:16 -04:00
sysadmin faf4484657 fix: resolve conflicts for PR #369 against latest master 2026-07-07 09:37:13 -04:00
sysadmin 93230457d8 fix: resolve conflicts for PR #366 against latest master 2026-07-07 09:37:10 -04:00
sysadmin b4c79fdbbc Merge pull request 'feat: add issue claim heartbeat leases and stale-claim reconciliation (Closes #268)' (#370) from feat/issue-268-heartbeat-leases into master 2026-07-07 08:36:55 -05:00
sysadmin 8b9a0705b6 Merge pull request 'feat: enforce precise mutation categories in controller handoffs (Closes #319)' (#365) from feat/issue-319-mutation-categories into master 2026-07-07 08:33:56 -05:00
sysadminandClaude Opus 4.8 bc8e2b7928 fix: resolve conflicts for PR #382 against latest master
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:32:37 -04:00
sysadminandClaude Opus 4.8 9bb9bad4c7 fix: resolve conflicts for PR #382 against latest master
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:31:55 -04:00
sysadminandClaude Opus 4.8 ab126da479 fix: resolve conflicts for PR #376 against latest master
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:31:52 -04:00
sysadminandClaude Opus 4.8 ba4cf2e93d fix: resolve conflicts for PR #375 against latest master
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:31:50 -04:00
sysadminandClaude Opus 4.8 4507457560 fix: resolve conflicts for PR #372 against latest master
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:31:47 -04:00
sysadminandClaude Opus 4.8 dc24fe3afe feat: enforce canonical reconciliation handoff schema (Closes #307)
Reconciliation final reports must emit only the canonical reconciliation
handoff schema:

- Expand _RECONCILE_REQUIRED_FIELDS from 5 to the full 27-field canonical
  schema (Task through No review/merge confirmation), so incomplete
  reconciliation handoffs downgrade with per-field reasons.
- Add 'issue lock proof', 'claim/comment status', and 'workspace mutations'
  to _RECONCILE_STALE_FIELDS so stale author/reviewer fields block.
- Make the 'PR number opened' rejection conditional on a new
  session_pr_opened proof kwarg: the field is allowed only when a PR was
  actually opened in the session.
- Close the git-fetch reporting gap: a fetch observed only in the action
  log (not report text) now requires a Git ref mutations entry as well.
- Update the reconciliation handoff fixture to the canonical schema and
  add TestCanonicalReconcileSchema covering blocked, successful-close,
  and comment-only reconciliation plus missing-close-capability,
  stale-field, and conditional PR-number-opened paths.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:31:45 -04:00
sysadminandClaude Opus 4.8 3c9841760c fix: resolve conflicts for PR #371 against latest master
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:31:44 -04:00
sysadminandClaude Opus 4.8 51d0c14009 fix: resolve conflicts for PR #369 against latest master
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:31:42 -04:00
sysadminandClaude Opus 4.8 8a6cb6ac2c fix: resolve conflicts for PR #366 against latest master
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:31:21 -04:00
sysadmin ce39fb52c9 Merge pull request 'Add validation integrity verifier for PR-head vs diagnostic tests (#316)' (#358) from feat/issue-316-validation-integrity into master 2026-07-07 08:31:02 -05:00
sysadminandClaude Opus 4.8 c260ef15fb feat: register work-issue task routing for role-aware MCP (#139)
- Map work_issue/work-issue to author role and gitea.pr.create in resolver
- Route work-issue sessions through role_session_router before mutations
- Expose work_issue in runtime context task capabilities
- Add work-issue workflow source verifier and canonical routing docs
- Tests for resolver, router, and final-report verifier

Closes #139

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:30:38 -04:00
sysadmin e823000301 fix: resolve conflicts for PR #365 against latest master 2026-07-07 09:28:23 -04:00
sysadmin 7b71113b4d Merge pull request 'feat: hard-stop review mutations on already-landed PR heads (Closes #292)' (#368) from feat/issue-292-already-landed-gate into master 2026-07-07 08:28:04 -05:00
sysadminandClaude Opus 4.8 c2226177b6 fix: resolve conflicts for PR #358 against latest master
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:27:29 -04:00
sysadmin 749e480baf feat: add reconciliation workflow MCP tools for already-landed PRs (Closes #301)
Expose read-only assess/scan tools and capability planning so already-landed
open PRs can be reconciled without review or merge. Register the
gitea-reconcile-landed-pr skill and workflow-source verification.
2026-07-07 09:25:55 -04:00
sysadmin b41d9d6006 Merge pull request 'feat: reject eligible/reviewed wording for already-landed PRs (Closes #298)' (#367) from feat/issue-298-already-landed-wording into master 2026-07-07 08:25:44 -05:00
sysadmin 2577489c2a feat: enforce already-landed review report states 2026-07-07 09:24:30 -04:00
sysadminandClaude Opus 4.8 f89019f804 feat: classify already-landed PRs as reconciliation-only (Closes #295)
Add reviewer_already_landed_classification verifier to block oldest/next
eligible PR wording, review-eligible claims, and pinned reviewed head
usage when a PR is already landed. Wire the check into build_final_report
and tighten final_report_validator regex coverage.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:23:50 -04:00
sysadmin e26398b7a9 Merge pull request 'feat: block edits in PR validation worktrees (Closes #315)' (#363) from feat/issue-315-validation-worktree-no-edits into master 2026-07-07 08:22:57 -05:00
sysadmin 9cf1b41b77 feat: add prgs-reconciler profile and gated already-landed PR close (Closes #310)
Introduce a dedicated reconciler role with gitea_reconcile_already_landed_pr,
which closes open PRs only after live fetch and ancestor proof against a fresh
target branch. Document the gitea-reconciler namespace and extend task routing.
2026-07-07 09:20:50 -04:00
sysadmin 0fe8f57dda Merge pull request 'feat: classify merge simulation as worktree/index mutations (Closes #317)' (#356) from feat/issue-317-merge-simulation-mutations into master 2026-07-07 08:20:40 -05:00
sysadminandClaude Opus 4.8 6946534f3e feat: verify canonical workflow citation and version in review reports (Closes #296)
The canonical PR review/merge workflow already lives in
skills/llm-project-workflow/workflows/review-merge-pr.md and is exposed
through mcp_list_project_skills / mcp_get_skill_guide (#333-#335), and
its final-report schema already demands a workflow version. What was
missing is enforcement: add compute_workflow_hash (short sha256
version hash of workflow text) and assess_review_workflow_source to
review_proofs. Review reports must cite the canonical workflow file
and carry a populated Workflow version field; when the current
canonical hash is supplied, a mismatched citation fails as a stale
workflow copy, directing the agent to reload via mcp_get_skill_guide.
Fails closed. Tests cover hash determinism and content sensitivity,
matching-hash pass, missing citation, missing version field, stale
hash, version none, and offline validation without a canonical hash.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:19:33 -04:00
sysadmin 1487ff60b4 Merge pull request 'feat: enforce validation environment proof in reviewer reports (Closes #311)' (#352) from feat/issue-311-validation-environment-proof into master 2026-07-07 08:18:29 -05:00
sysadmin d0f52cbf19 fix: resolve conflicts for PR #376 against current master 2026-07-07 09:17:33 -04:00
sysadmin 17c51eaa86 fix: resolve conflicts for PR #372 against current master 2026-07-07 09:17:33 -04:00
sysadmin 2900add223 fix: resolve conflicts for PR #371 against current master 2026-07-07 09:17:33 -04:00
sysadmin a5fb7d2472 fix: resolve conflicts for PR #366 against current master 2026-07-07 09:17:25 -04:00
sysadmin c5ab43ed5a fix: resolve conflicts for PR #366 against current master 2026-07-07 09:17:25 -04:00
sysadmin a237b15559 fix: resolve conflicts for PR #365 against current master 2026-07-07 09:17:15 -04:00
sysadmin 07b23950ab fix: resolve conflicts for PR #363 against current master 2026-07-07 09:17:00 -04:00
sysadmin bbf5ee6d59 fix: resolve conflicts for PR #375 against current master 2026-07-07 09:15:26 -04:00
sysadmin 5131fc595a fix: resolve conflicts for PR #368 against current master 2026-07-07 09:15:26 -04:00
sysadmin e017d80256 Merge pull request 'fix: seed profile gate for TestIssueLockArtifactWarning (Closes #359)' (#364) from fix/issue-359-artifact-warning-test into master 2026-07-07 08:15:18 -05:00
sysadminandClaude Opus 4.8 958d470f98 feat: dedicated reconciler capability for closing landed PRs (Closes #309)
Already-landed open PRs block the review queue: the already-landed gate
correctly stops approval/merge, but no task path could close the
redundant PR. Add the reconciler close path:

- task_capability_map: new reconcile_close_landed_pr (gitea.pr.close)
  and reconcile_close_landed_issue (gitea.issue.close) tasks under a
  dedicated "reconciler" role. Exact close capabilities only — the
  role grants no review, approve, request-changes, or merge authority,
  and normal reviewer profiles keep no broad PR-close authority.
- role_session_router: reconciler tasks route wrong_role_stop in
  author/reviewer sessions with a dedicated recovery message; matching
  reconciler sessions route allowed_current_session.
- review_proofs.assess_reconciler_close_gate: PR close allowed only
  when every proof passes — PR live-verified open, candidate head SHA
  pinned and matching the live head, target branch freshly fetched
  with a full SHA, head an ancestor of the target, exact
  gitea.pr.close proven. Non-landed PRs return
  NOT_LANDED_CLOSE_BLOCKED; missing close capability returns
  RECOVERY_HANDOFF_REQUIRED; incomplete proof fails closed as
  GATE_NOT_PROVEN. Linked-issue close is skipped when the issue is
  already closed and allowed only for an open issue resolved by the
  landed commits with exact gitea.issue.close capability. The gate
  also returns the required final-report field list.

17 new tests cover the capability map, wrong-role routing, and every
gate path (landed close, non-landed block, stale target, changed head,
missing capabilities, linked-issue variants, review-mutation denial).

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-07-07 09:15:13 -04:00
sysadmin af806919b3 fix: resolve conflicts for PR #358 against current master 2026-07-07 09:14:47 -04:00
sysadmin 42cd0f9f4a fix: resolve conflicts for PR #356 against current master 2026-07-07 09:14:30 -04:00