Skip to content

feat(skills): add external mutation reviews - #85

Merged
tiammomo merged 2 commits into
mainfrom
tiammomo/feat/issue-83-mutation-review
Sep 5, 2026
Merged

feat(skills): add external mutation reviews#85
tiammomo merged 2 commits into
mainfrom
tiammomo/feat/issue-83-mutation-review

Conversation

@tiammomo

@tiammomo tiammomo commented Aug 25, 2026

Copy link
Copy Markdown
Owner

Closes #83

What changed

  • Add a RepoSteward review skill for GitHub and other external state mutations without granting execution authority.
  • Bind authorization to a complete immutable plan, applicable stable identities, expected versions, transition fingerprint, postcondition, actor, and policy digest.
  • Require durable pre-call attempts, per-target intent and results, fresh preconditions, conditional writes, and explicit residual races.
  • Separate attempt stage, remote outcome, and policy compliance; reconcile response loss, partial progress, ABA, and retries against authoritative state.
  • Distinguish non-atomic batches from service-side atomic transactions whose per-target results must project one shared outcome.

Why

A remote call can succeed while its response is lost, and an object can change again before readback. Treating an exception or current-state mismatch as proof of no write creates false audit records and unsafe retries. The review workflow makes those guarantees and remaining races explicit while preserving all operation-specific gates.

Validation

  • Skill Creator quick_validate.py: valid
  • RepoSteward repository skill catalog: valid
  • Independent unsafe-design and held-out atomic-batch/ABA/native-state forward tests
  • Hardened verifier: 370 unit tests, Ruff lint and format checks, CLI smoke test, and package build passed
  • GitHub CI: passed for the reviewed head

Review focus

  • Exact authority and target provenance required before mutation
  • Atomic-batch exception versus non-atomic partial progress
  • completed, blocked, failed, and outcome_unknown semantic mapping
  • ABA-safe reconciliation, idempotent replay, and public_write compatibility behavior
  • No bypass of submit, merge, Issue promotion, branch cleanup, credentials, or human-review gates; Issue feat: 审计并清理终态 PR 的远端工作分支 #77 remains the native branch-cleanup state-machine work

Automation disclosure

An external coding workspace assisted with the implementation and tests. tiammomo reviewed the final diff, understands it, and takes responsibility for this contribution.

Signed-off-by: tiammomo <tiammomo@users.noreply.github.com>
Signed-off-by: tiammomo <tiammomo@users.noreply.github.com>
@tiammomo
tiammomo force-pushed the tiammomo/feat/issue-83-mutation-review branch from 0e26a39 to 1a5ed86 Compare September 5, 2026 11:44
@tiammomo
tiammomo marked this pull request as ready for review September 5, 2026 11:45
@tiammomo
tiammomo merged commit b551d42 into main Sep 5, 2026
@tiammomo
tiammomo deleted the tiammomo/feat/issue-83-mutation-review branch September 5, 2026 11:47
tiammomo added a commit that referenced this pull request Sep 6, 2026
* feat(skills): add external mutation reviews

Signed-off-by: tiammomo <tiammomo@users.noreply.github.com>

* fix(skills): clarify mutation recovery semantics

Signed-off-by: tiammomo <tiammomo@users.noreply.github.com>

---------

Signed-off-by: tiammomo <tiammomo@users.noreply.github.com>
Co-authored-by: tiammomo <tiammomo@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: 增加外部状态变更安全审查 Skill

1 participant