sysadmin
6a37f7c8d5
fix: resolve conflicts for PR #388
...
Merge prgs/master into feat/issue-304-reconciler-profile; keep both
reconciler_profile and reconciliation_workflow imports in gitea_mcp_server.py.
2026-07-07 11:19:57 -04:00
sysadmin
fcb9944378
Merge pull request 'feat: add reviewer final-report schema MCP validator ( Closes #391 )' ( #394 ) from feat/issue-391-review-final-report-schema into master
2026-07-07 10:15:41 -05:00
sysadmin
9f4dd4c39b
Merge pull request 'feat: enforce canonical reconciliation handoff schema ( Closes #307 )' ( #387 ) from feat/issue-307-canonical-reconciliation-handoff into master
2026-07-07 10:09:50 -05:00
sysadmin
6e212c0de7
Merge pull request 'feat: enforce author work leases in issue lock preflight ( Closes #267 )' ( #386 ) from feat/issue-267-work-leases into master
2026-07-07 09:52:37 -05:00
sysadmin
d446a31442
Merge pull request 'feat: add reconciliation workflow MCP tools for already-landed PRs ( Closes #301 )' ( #384 ) from feat/issue-301-reconciliation-workflow into master
2026-07-07 09:42:31 -05:00
sysadmin
b11160f236
Merge pull request 'feat: classify already-landed PRs as reconciliation-only ( Closes #295 )' ( #382 ) from feat/issue-295-already-landed-classification into master
2026-07-07 09:37:23 -05:00
sysadmin
d814a9ca81
fix: resolve conflicts for PR #388
...
Merge prgs/master; unify reconciler profile docs (#304 ) with master's
already-landed close tool guidance (#310 ).
2026-07-07 10:34:57 -04:00
sysadmin
5513bdf2aa
fix: resolve conflicts for PR #384
...
Merge prgs/master; keep read-only reconciliation tools (#301 ) alongside
master's gitea_reconcile_already_landed_pr close path (#310 ). Unify task
routing: reconcile_landed_pr stays author/read-only; reconcile-landed-pr
and reconcile_already_landed_pr stay reconciler.
2026-07-07 10:33:42 -04:00
sysadmin
273eba7fb3
Merge pull request 'feat: enforce branches-only author mutation worktree guard ( Closes #274 )' ( #374 ) from feat/issue-274-branches-only-worktrees into master
2026-07-07 09:33:18 -05:00
sysadmin
cd61272837
fix: resolve conflicts for PR #374
...
Merge prgs/master into feat/issue-274-branches-only-worktrees; keep both
already_landed_reconcile and author_mutation_worktree imports. Allow
branches/ worktrees when PROJECT_ROOT is the session worktree; align
commit-payload tests with branches-only guard (#274 ).
2026-07-07 10:31:21 -04:00
sysadmin
7fbb1bf34a
Merge pull request 'feat: require pagination proof in reconciliation PR inventory ( Closes #308 )' ( #376 ) from feat/issue-308-reconcile-inventory-pagination into master
2026-07-07 09:26:02 -05:00
sysadmin
4243b60ca3
Merge pull request 'feat: add prgs-reconciler profile and gated already-landed PR close ( Closes #310 )' ( #381 ) from feat/issue-310-prgs-reconciler-profile into master
2026-07-07 09:22:55 -05:00
sysadmin
f5953549aa
fix: resolve conflicts for PR #376
...
Merge prgs/master; keep reconcile-inventory pagination verifier (#308 )
alongside linked-issue live-proof gates from master (#300 ).
2026-07-07 10:22:35 -04:00
sysadmin
ab6bb593bc
fix: resolve conflicts for PR #382
...
Merge prgs/master; keep already-landed oldest-eligible-PR test from
#295 alongside master already-landed gate and target-branch freshness tests.
2026-07-07 10:20:52 -04:00
sysadmin
4cf75bcbc9
fix: resolve conflicts for PR #384
...
Merge prgs/master; keep reconciliation_workflow import alongside
review_merge_state_machine and preserve both reconciliation and
pr-queue-cleanup workflow split tests.
2026-07-07 10:20:14 -04:00
sysadmin
9ff861a1f3
fix: resolve conflicts for PR #388
...
Merge prgs/master into feat/issue-304-reconciler-profile; keep both
reconciler_profile and review_merge_state_machine imports.
Closes conflict with master landing review_merge_state_machine (#389 stack).
2026-07-07 10:19:40 -04:00
sysadmin
8d5fa06351
Merge commit 'b5ee6567aade4fdce4c57d826184bfd01ebb522e' into HEAD
...
# Conflicts:
# tests/test_llm_workflow_split.py
2026-07-07 10:19:18 -04:00
sysadmin
7db8298cdd
Merge pull request 'feat: require live linked issue proof in reconciliation handoffs ( Closes #300 )' ( #372 ) from feat/issue-300-linked-issue-live-proof into master
2026-07-07 09:19:01 -05:00
sysadmin
167257b8a3
Merge commit 'b5ee6567aade4fdce4c57d826184bfd01ebb522e' into HEAD
...
# Conflicts:
# tests/test_resolve_task_capability.py
2026-07-07 10:18:20 -04:00
sysadmin
23380d27fe
Merge commit 'b5ee6567aade4fdce4c57d826184bfd01ebb522e' into HEAD
...
# Conflicts:
# review_proofs.py
# tests/test_llm_workflow_split.py
2026-07-07 10:16:59 -04:00
sysadmin
bb525a8f94
Merge pull request 'Enforce already-landed review report state gates' ( #383 ) from feat/issue-294-already-landed-review-gate into master
2026-07-07 09:15:19 -05:00
sysadmin
d5b185ce38
Merge commit 'b5ee6567aade4fdce4c57d826184bfd01ebb522e' into HEAD
...
# Conflicts:
# review_proofs.py
# tests/test_llm_workflow_split.py
2026-07-07 10:15:10 -04:00
sysadmin
b5ee6567aa
Merge pull request 'feat: verify canonical workflow citation and version in review reports ( Closes #296 )' ( #380 ) from feat/issue-296-workflow-version-proof into master
2026-07-07 09:11:13 -05:00
sysadmin
103364aa8d
Merge pull request 'feat: add PR-only queue cleanup mode with per-PR dispatch gates ( Closes #390 )' ( #393 ) from feat/issue-390-pr-queue-cleanup-mode into master
2026-07-07 09:07:51 -05:00
sysadmin and Claude Opus 4.8
a2bd23da14
test: expand PR-queue-cleanup coverage to full acceptance matrix ( #390 )
...
Superset of the initial test slice: adds capability-map and router
routing cases (reviewer-role enforcement, author wrong_role_stop), the
full terminal-chain matrix (comment/skip stop, gates-failed stop, merge
completed/blocker stop, unknown-decision fail-closed), and report
verifier cases for two terminal mutations, missing next-suggested-PR,
branch mutations, and missing workflow citation.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected] >
2026-07-07 10:06:50 -04:00
sysadmin
a164700ab9
feat: add reviewer final-report schema MCP validator ( Closes #391 )
...
Expose gitea_validate_review_final_report composing the composable
final-report validator with review-specific schema gates for legacy
fields, merge/issue claims, blocked handoff replay, and narrative drift.
2026-07-07 10:04:06 -04:00
sysadmin and Claude Opus 4.8
91c67930ec
feat: add PR-only queue cleanup mode with per-PR dispatch gates ( Closes #390 )
...
Adds canonical pr-queue-cleanup workflow, report verifier, reviewer-only task
routing, and runbook guidance so operators can drain open PRs one canonical
review at a time with fail-closed boundaries on batching and unauthorized merges.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected] >
2026-07-07 10:02:49 -04:00
sysadmin
0c18d0f54f
Merge pull request 'feat: enforce PR review/merge workflow state machine gates ( Closes #290 )' ( #378 ) from feat/issue-290-review-merge-state-machine into master
2026-07-07 09:02:42 -05:00
sysadmin
ae566d5cd1
Merge pull request 'feat: reject stale already-landed controller handoff fields ( Closes #299 )' ( #371 ) from feat/issue-299-already-landed-handoff into master
2026-07-07 09:00:07 -05:00
sysadmin
cf94112e96
fix: resolve conflicts for PR #384
...
Merge prgs/master and keep read-only reconciliation workflow tasks (#301 )
alongside reconciler close capabilities (#309 ).
2026-07-07 09:58:45 -04:00
sysadmin
5a5bc8846f
fix: resolve conflicts for PR #381
...
Merge prgs/master and keep already-landed reconcile close tool routing (#310 )
alongside dedicated reconciler close tasks (#309 ).
2026-07-07 09:58:45 -04:00
sysadmin
7ef4c53cd8
Merge remote-tracking branch 'prgs/master' into feat/issue-304-reconciler-profile
2026-07-07 09:57:58 -04:00
sysadmin
60040e789b
Merge remote-tracking branch 'prgs/master' into feat/issue-290-review-merge-state-machine
2026-07-07 09:57:58 -04:00
sysadmin
769f387267
Merge remote-tracking branch 'prgs/master' into feat/issue-308-reconcile-inventory-pagination
2026-07-07 09:57:54 -04:00
sysadmin
202be15764
Merge remote-tracking branch 'prgs/master' into feat/issue-300-linked-issue-live-proof
2026-07-07 09:57:54 -04:00
sysadmin
fbfcc08640
Merge remote-tracking branch 'prgs/master' into feat/issue-299-already-landed-handoff
2026-07-07 09:57:54 -04:00
sysadmin
0bb6cae95a
Merge pull request 'feat: dedicated reconciler capability for closing landed PRs ( Closes #309 )' ( #379 ) from feat/issue-309-reconciler-close-capability into master
2026-07-07 08:57:04 -05:00
sysadmin
180490c640
fix: resolve conflicts for PR #384
...
Merge prgs/master and keep both reconciliation workflow (#301 ) and
native MCP preference (#270 ) imports in gitea_mcp_server.
2026-07-07 09:57:01 -04:00
sysadmin
b604b468b5
fix: resolve conflicts for PR #388
...
Merge prgs/master and keep reconciler profile runtime fields (#304 )
alongside native MCP shell health (#270 ).
2026-07-07 09:57:01 -04:00
sysadmin
af064dd06b
fix: resolve conflicts for PR #378
...
Merge prgs/master and keep both review-merge state machine (#290 ) and
native MCP preference (#270 ) imports, skill entries, and MCP tools.
2026-07-07 09:57:01 -04:00
sysadmin
6100187274
fix: resolve conflicts for PR #376
...
Merge prgs/master and keep both reconcile-inventory (#308 ) and
inventory-worktree (#293 ) verifiers wired in build_final_report.
2026-07-07 09:55:33 -04:00
sysadmin
bf002aee2c
fix: resolve conflicts for PR #372
...
Merge prgs/master and keep both reconcile-linked-issue (#300 ) and
inventory-worktree (#293 ) verifiers wired in build_final_report.
2026-07-07 09:55:33 -04:00
sysadmin
b53e3de7cc
fix: resolve conflicts for PR #371
...
Merge prgs/master and keep both already-landed-handoff (#299 ) and
inventory-worktree (#293 ) verifiers wired in build_final_report.
2026-07-07 09:55:33 -04:00
sysadmin
47b4ee4791
Merge pull request 'feat: add native MCP preference gate and shell circuit breaker ( Closes #270 )' ( #377 ) from feat/issue-270-native-mcp-preference into master
2026-07-07 08:54:03 -05:00
sysadmin
1c506fa779
Merge pull request 'feat: comment-then-stop policy for partial PR reconciliation ( Closes #302 )' ( #375 ) from feat/issue-302-partial-reconciliation-policy into master
2026-07-07 08:51:12 -05:00
sysadmin
e7a1e183a0
Merge pull request 'feat: prove inventory pagination and worktree state in reviewer reports ( Closes #293 )' ( #369 ) from feat/issue-293-inventory-worktree-proof into master
2026-07-07 08:47:05 -05:00
sysadmin and Claude Opus 4.8
72f3bc8db8
fix: resolve conflicts for PR #376 against current master
...
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected] >
2026-07-07 09:45:21 -04:00
sysadmin and Claude Opus 4.8
e0a1717db2
fix: resolve conflicts for PR #372 against current master
...
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected] >
2026-07-07 09:45:03 -04:00
sysadmin and Claude Opus 4.8
3c2dd055fa
fix: resolve conflicts for PR #371 against current master
...
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected] >
2026-07-07 09:44:44 -04:00
sysadmin and Claude Opus 4.8
56f8f9eeb4
fix: resolve conflicts for PR #369 against current master
...
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected] >
2026-07-07 09:44:12 -04:00
sysadmin
b6cf32c845
Merge pull request 'feat: add dedicated reconciliation controller-handoff schema ( Closes #303 )' ( #373 ) from feat/issue-303-reconciliation-handoff into master
2026-07-07 08:42:40 -05:00
sysadmin and Claude Opus 4.8
21ff12cef7
feat: add prgs-reconciler profile model and role detection ( Closes #304 )
...
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected] >
2026-07-07 09:39:52 -04:00
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
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
sysadmin and Claude 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
sysadmin and Claude 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
sysadmin and Claude 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
sysadmin and Claude 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
sysadmin and Claude 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
sysadmin and Claude 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
sysadmin and Claude 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
sysadmin and Claude 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
sysadmin and Claude 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
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
sysadmin and Claude 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
sysadmin and Claude 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
sysadmin and Claude 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
sysadmin and Claude 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