open-standards/joule-ui/conformance/v1/MANIFEST.json
Transaction Science 079fabafe8 joule-ui: make the interaction actor mandatory (SPEC /2)
Every sealed interaction now names the principal that fired it. The actor
is a required field on Interaction, a required argument to run_interaction,
and is bound into the signed canonical core — so an interaction can no
longer be attributed to a different principal without breaking the chain.

Human and agent are traced identically (a did:key either way); the standard
draws no distinction. An unauthenticated host attributes fires to its own
session principal — joule-ui-serve defaults this to the host's own did:key
(derived from its signing key) and exposes with_session_actor for
deployments that authenticate the caller.

The canonical-core profile tag is bumped joule-ui/interaction/1 -> /2,
since the actor is now part of the signed preimage; the two cores are
distinct bytes and never collide. SPEC §7.1 + C2/C3 updated, conformance
v1 vectors regenerated, examples and the conformance harness pass an actor.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-06-12 22:19:18 -04:00

15 lines
No EOL
502 B
JSON

{
"classes": [
"C1",
"C2",
"C3",
"C4"
],
"files": {
"c1-validation.json": "b3:9cc818823b64111e22650ae238030c50b41cdefbb16e1660125693640438e82a",
"c2-interaction.json": "b3:be88230acd15f45e5e47bd2975bbd9ded3305051e02a60e773cdd99265cb338b",
"c3-authorization.json": "b3:3d445296665f58e128fc0e154bde5fa0afec93ac040f2da83702c27212f83e03",
"c4-chain.json": "b3:08155284dd836322ac74bb820c1d1ab72c1bee2fa6486aa52217acf22529821d"
},
"pack": "joule-ui-conformance/v1"
}