Reviewer reports must classify local merge simulations as worktree mutations #317

Closed
opened 2026-07-07 01:23:13 -05:00 by jcwalker3 · 1 comment
Owner

A reviewer workflow for PR #281 ran a local merge simulation:

  • git merge prgs/master --no-commit --no-ff
  • git status
  • git merge --abort

The final report listed this as read-only diagnostics.

Problem

A local merge simulation mutates the worktree and index temporarily, even if it is later aborted. It must not be classified as read-only.

Required behavior

  1. Any command that modifies the worktree, index, merge state, or rebase state must be reported as a worktree/index mutation.
  2. This includes:
    • git merge --no-commit
    • git merge --abort
    • git reset
    • git checkout
    • git clean
    • git worktree add/remove
  3. If a merge simulation is performed, the report must include:
    • command run
    • worktree path
    • pre-simulation clean status
    • merge result
    • abort/reset command
    • post-abort clean status
  4. Merge simulation results must not be called read-only diagnostics.

Acceptance criteria

  • Final-report validator rejects merge simulation under read-only diagnostics.
  • Reports must classify merge simulation under Worktree/index mutations.
  • Tests cover successful simulation, conflict simulation, aborted simulation, failed abort, and clean post-abort proof.
A reviewer workflow for PR #281 ran a local merge simulation: - `git merge prgs/master --no-commit --no-ff` - `git status` - `git merge --abort` The final report listed this as read-only diagnostics. ## Problem A local merge simulation mutates the worktree and index temporarily, even if it is later aborted. It must not be classified as read-only. ## Required behavior 1. Any command that modifies the worktree, index, merge state, or rebase state must be reported as a worktree/index mutation. 2. This includes: - `git merge --no-commit` - `git merge --abort` - `git reset` - `git checkout` - `git clean` - `git worktree add/remove` 3. If a merge simulation is performed, the report must include: - command run - worktree path - pre-simulation clean status - merge result - abort/reset command - post-abort clean status 4. Merge simulation results must not be called read-only diagnostics. ## Acceptance criteria - [ ] Final-report validator rejects merge simulation under read-only diagnostics. - [ ] Reports must classify merge simulation under `Worktree/index mutations`. - [ ] Tests cover successful simulation, conflict simulation, aborted simulation, failed abort, and clean post-abort proof.
jcwalker3 added the status:in-progress label 2026-07-07 04:13:07 -05:00
Author
Owner

PR opened with merge-simulation worktree mutation verifier.

  • Entry point: assess_merge_simulation_report(report_text, command_log=[...])
  • Blocks read-only classification; requires Worktree/index mutations proof

Verification: pytest tests/test_reviewer_merge_simulation.py tests/test_git_ref_mutation_report.py tests/test_review_proofs.py -q — 170 passed

PR opened with merge-simulation worktree mutation verifier. - Entry point: `assess_merge_simulation_report(report_text, command_log=[...])` - Blocks read-only classification; requires Worktree/index mutations proof Verification: `pytest tests/test_reviewer_merge_simulation.py tests/test_git_ref_mutation_report.py tests/test_review_proofs.py -q` — 170 passed
sysadmin removed the status:in-progress label 2026-07-07 08:20:42 -05:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Scaled-Tech-Consulting/Gitea-Tools#317