Skip to content

[pre-v1.0] Action receipt conformance cases for embodied-action evidence #95

Closed

Description

@carloshvp

Context

TRACE issue #66 defines verification.action_receipts as part of the pre-v1.0 verification-depth model. cMCP issue #337 and PR #392 explore an embodied-action evidence profile with static ROS 2-derived fixtures and verifier behavior.

The next useful step is to define conformance cases for action receipts, especially where the verifier must distinguish evidence integrity from physical-world completion or safety claims.

Proposal

Define a small conformance matrix for embodied-action receipt evidence.

Candidate cases:

  • valid request receipt + valid controller outcome receipt
  • missing request receipt
  • missing outcome receipt
  • mismatched action_ref / goal UUID / goal preimage hash
  • signature/key mismatch
  • stale or out-of-order receipt
  • same-party self-report, reported with an issuer-independence warning
  • valid negative controller outcome, such as rejected or aborted
  • unsupported physical-completion claim

Non-goals

  • no claim that TRACE proves physical completion
  • no claim that controller success proves safety
  • no live ROS 2 dependency in TRACE CI
  • no new TRACE schema change unless maintainers think one is needed
  • no product or vendor-specific positioning

Open Questions

  • Should these conformance fixtures live in TRACE, cMCP, or both?
  • What is the minimum pre-v1.0 set for action_receipts: required?
  • Should ROS 2 remain fixture provenance, or become a named profile?
  • Should issuer independence be reported as a separate verifier output from evidence proximity?

Activity

  1. carloshvp commented on Jul 29, 2026

    @carloshvp
    MemberAuthor

    Reconciliation after #101 and agentrust-io/cmcp#392 merged:

    Completed:

    • test: add action receipt conformance fixtures #101 added nine portable, machine-readable cases for accepted and rejected outcomes, a missing required receipt, signature or key mismatch, action reference mismatch, stale and out-of-order receipts, same-party issuance, and unsupported physical-completion claims.
    • feat(verify): add embodied action evidence fixtures cmcp#392 covers the ROS 2-specific goal UUID and serialized goal-preimage bindings, plus missing external evidence and required-receipt handling.
    • TRACE now owns the portable fixture matrix. cMCP owns the profile-aware verifier and ROS 2 binding fixture. Both remain static and require no live ROS installation.

    The open design questions are resolved: fixture ownership is split by portability, the current minimum matrix is represented across #101 and agentrust-io/cmcp#392, ROS 2 provenance is documented in the cMCP fixture, and same-party issuance produces a verifier warning.

    No residual work remains within the scope described here. New controller adapters, live ROS CI, or stronger real-world outcome claims belong in separate follow-up issues. Closing as completed.

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

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions