Allow MCP reads for independent PR reviews #38

Merged
adrian.tkacz merged 3 commits from issue-37-mcp-review-reads into develop 2026-10-11 16:08:08 +00:00
Member

Refs #37

Scope

  • Use read-only Forgejo MCP repository and PR reads to verify canonical repository identity, current PR state, base/head refs, and exact commit SHAs.
  • Keep exact local object, clean HEAD, merge-base, and complete whole-PR diff verification mandatory.
  • Treat anonymous git ls-remote as optional corroboration only; its absence or failure cannot block a review. Missing/mismatched canonical identity, refs, or SHAs refuses approval.
  • Preserve reviewer independence, no-credentials-to-model/shell, MCP read-only access, frozen-state checks, and existing validation/CI/merge gates.
  • The reviewer uses the existing exact allowlisted git status --short read by itself. No permission was broadened.

Acceptance and validation

  • Static workflow contract tests assert the MCP identity/ref checks, optional anonymous Git behavior, local object/diff requirements, refusal cases, and exact local status-read contract.
  • Sanitized offline make check PASS: Ruff lint, Ruff format, basedpyright (0 errors/warnings), 172 unittest cases, locked sync, and staged/unstaged whitespace checks.
  • Fresh independent whole-PR review ordinal 4 returned APPROVE with no findings at the exact HEAD/base below. Local exact objects, clean status, merge base, full diff, required validation, Forgejo MCP identity/currentness, and remote refs were independently verified.
  • Review ordinals 1-3 returned COMMENT with no findings due local shell permission mismatches; they established no review verdict. Remediations were limited to explicit standalone use of the already allowlisted status command.

Frozen delivery

  • Base develop: 938f4160493359f9795c3bda081b065afac96b16
  • Head: 9fc675d2dec301add11b941fe7212f6e202e6f47
  • Branch: issue-37-mcp-review-reads

Current result: READY_TO_MERGE; no merge or issue closure authorized here. PR remains open/unmerged. No product/runtime changes, new dependencies, reviewer credentials, MCP writes by reviewer, release, deployment, or main changes.

Refs #37 ## Scope - Use read-only Forgejo MCP repository and PR reads to verify canonical repository identity, current PR state, base/head refs, and exact commit SHAs. - Keep exact local object, clean HEAD, merge-base, and complete whole-PR diff verification mandatory. - Treat anonymous `git ls-remote` as optional corroboration only; its absence or failure cannot block a review. Missing/mismatched canonical identity, refs, or SHAs refuses approval. - Preserve reviewer independence, no-credentials-to-model/shell, MCP read-only access, frozen-state checks, and existing validation/CI/merge gates. - The reviewer uses the existing exact allowlisted `git status --short` read by itself. No permission was broadened. ## Acceptance and validation - Static workflow contract tests assert the MCP identity/ref checks, optional anonymous Git behavior, local object/diff requirements, refusal cases, and exact local status-read contract. - Sanitized offline `make check` PASS: Ruff lint, Ruff format, basedpyright (0 errors/warnings), 172 unittest cases, locked sync, and staged/unstaged whitespace checks. - Fresh independent whole-PR review ordinal 4 returned APPROVE with no findings at the exact HEAD/base below. Local exact objects, clean status, merge base, full diff, required validation, Forgejo MCP identity/currentness, and remote refs were independently verified. - Review ordinals 1-3 returned COMMENT with no findings due local shell permission mismatches; they established no review verdict. Remediations were limited to explicit standalone use of the already allowlisted status command. ## Frozen delivery - Base `develop`: `938f4160493359f9795c3bda081b065afac96b16` - Head: `9fc675d2dec301add11b941fe7212f6e202e6f47` - Branch: `issue-37-mcp-review-reads` Current result: READY_TO_MERGE; no merge or issue closure authorized here. PR remains open/unmerged. No product/runtime changes, new dependencies, reviewer credentials, MCP writes by reviewer, release, deployment, or main changes.
adrian.tkacz deleted branch issue-37-mcp-review-reads 2026-10-11 16:08:09 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Creatidy/model-intelligence!38
No description provided.