Skip to content

Expose duplicate no-mutation evidence from the generic runner #699

Description

@flyingrobots

Claim

The generic compiler-produced operation runner refuses a duplicate path that mutates committed application state, but its JSON witness exposes only the typed obstruction. Expose independently comparable before/after evidence produced from Echo's authoritative application state without adding application vocabulary.

Executable witness

cargo test -p xtask --test run_edict_operation

Acceptance criteria

  • duplicate reports canonical before/after application-state roots computed from Echo's graph-only state root, excluding WAL, history, Receipt, and commit metadata.
  • duplicate reports before/after target-value digests so the claimed target value is independently bound even if root coverage changes later.
  • The success witness requires both root and target-value pairs to match.
  • A negative runner test proves a root or target-value change cannot produce a passing report.
  • The existing fail-closed hidden-mutation check remains on the production path.
  • Generic production code contains no Hello Echo application vocabulary.

Consumer

Blocks flyingrobots/hello-echo#4 and remediation of flyingrobots/hello-echo#17 review thread PRRT_kwDOTmLBK86UkvoG.

Non-goals

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestfeatureFeature umbrella (epic)legend:testMethod legend test.needs-witnessMethod closeout state needs-witness.priority:highMethod priority high.roadmap-aRoadmap A: standalone Hello Echo deliveryruntimeRuntime corespecSpec/Design documenttoolingTooling/CI/CLItype:enhancementMethod work type enhancement.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions