Skip to content

Accept Edict Target IR obstruction fixture and emit Echo receipt #641

Description

@flyingrobots

Goal

Add the first Echo-side runtime bridge for Edict-produced echo.span-ir/v1 Target IR by accepting a narrow fixture and emitting deterministic attempt outcome evidence for a pre-step obstruction requirement.

This is the Echo half of the obstruction-strand corridor after Edict PR #132. Edict now emits canonical Target IR requirements with terminal and continueObstructed dispositions; Echo should consume that shape without claiming full Edict admission, scheduler counterfactuals, Jim completion, or general plugin dispatch.

Acceptance criteria

  • Echo has a checked-in fixture or test-owned fixture that represents Edict-produced echo.span-ir/v1 Target IR with a pre-step continueObstructed requirement.
  • Echo accepts the supported fixture shape and rejects wrong-domain, missing-requirement, unsupported-disposition, and malformed-digest variants with stable structured errors.
  • Echo evaluates one pre-step requirement against deterministic in-memory inputs.
  • Echo emits a deterministic receipt/result with an explicit attempt outcome such as obstructed_attempt for stale-basis-style obstruction.
  • The receipt/result binds the Target IR artifact digest supplied by the fixture.
  • A fresh/satisfied requirement path remains distinct from an obstructed attempt if included in scope.
  • Tests distinguish:
    • accepted artifact versus executed receipt;
    • obstructed attempt versus invalid proposal;
    • obstruction versus legal unselected counterfactual.
  • Documentation and changelog state that this is a narrow Echo fixture bridge only.

Non-goals

  • No general Edict bundle admission.
  • No participant policy engine.
  • No Jim product operation set.
  • No XYPH Quest settlement.
  • No scheduler counterfactual explorer.
  • No canonical Echo receipt bytes unless this PR explicitly freezes an encoding.
  • No general target plugin registry.

References

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions