Skip to content

Add an interactive-agent mutation protocol: dry-run manifest, exemption labels, reversal path #199

Description

@woksin

Why

On 2026-08-24 an interactive AI agent session bulk-closed 55 Cratis/Chronicle issues on a staleness heuristic. All were recovered (reopened + stale-review label) because the agent happened to keep the exact list — but nothing required it to.

Boundaries already exist for other actors: Ensemble workers stop before publication effects (Ensemble #8: no commit/push/PR/release/deploy, hash-bound approvals), Chronicle mutations are getting a governed boundary (Chronicle #3812), and Planner triage is server-mediated (Stagehand #7). The uncovered gap is ad-hoc interactive agent sessions (Claude/Pi/Copilot CLI) wielding gh and org credentials directly.

Proposed corpus rule

Before any bulk or destructive mutation (closing issues, deleting branches/labels, force-pushing, publishing), an interactive agent MUST:

  1. Dry-run manifest — post the exact target list and action for human review before executing
  2. Honor exemption conventions — issues labeled idea or investigate are long-lived by design and exempt from staleness logic, org-wide
  3. Reversal path — write the reversal procedure (exact IDs, states, labels) before execution, not after
  4. Never mutate on age alone — closure requires positive evidence (verified fixed, verified obsolete, explicit human decision)

Placement

Contract-authority rule in the always-loaded base profile so every harness learns it once.


swept-proposal-2026-08-24 — created by an AI agent from the org-wide review, approved by @woksin.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions