SIMULATED SAMPLE

This report was generated from the committed dry-run fixture in the Bolyra repository by the shipped report tool, @bolyra/operator-trial report 0.1.0 with @bolyra/receipts 0.11.0 (re-verify command pinned to @bolyra/cli@0.9.0). The fixture came from a dry run: simulated credentials, an ephemeral signer, no proof verification, a built-in localhost echo endpoint, no customer endpoint. It shows the deliverable's form and limits, not a customer run, and it is not evidence that anyone uses Bolyra.

The anchors below (signer, receipt count, head hash) were copied from the bundle's own files, so they establish consistency with the bundle only, not signer identity or completeness. Status counts: SIGNED 18 · OBSERVED 12 · DERIVED 21 · ABSENT 27 · FAILED 0. Missing evidence is printed as ABSENT and failed checks as FAILED; nothing is filtered.

Files. report.json (same findings as this page) · input bundle: receipts.jsonl · summary.json · signer.json · VERIFY.txt · source at commit 93239a88 (tool and fixture) · back to the acceptance-exercise offer.

Reproduce. Node 20 or newer. This regenerates report.html and report.json. Compared with the published files, report.json differs only in the generation timestamp; report.html additionally lacks this banner and the "SIMULATED sample:" title prefix, which the publication step (landing/evidence-sample/build.mjs) adds around the unchanged report. Source manifest sha256 (report tool + fixture) b8dc3eaa6d6daecda471727e5efe9d31f6aa8cc885a3bd5b8dad5ac9d902951c.

git clone https://github.com/bolyra/bolyra.git && cd bolyra && git checkout 93239a88
cd examples/operator-trial && npm ci
npm run report -- --bundle test/report-fixtures/dry-run --signer 0xb1f30bddf40612b8aa0634d5ca5c21aa5a2f5dff --expect-count 3 --expect-head 0xba154095cb6bdf6dfc8351519faabdebf64598dfcda3f8e978f934cfaf65b3f1

The Re-verify yourself command further down verifies the receipt chain with the published CLI; it does not reproduce the report's own findings (the id check B1a is report-local).

Reviewer evidence report

Bundle dry-run, generated 2026-10-18T19:37:01.419Z by @bolyra/operator-trial report 0.1.0 using @bolyra/receipts 0.11.0.

What this report is. For each claim a reviewer might make about this bundle, it says whether the bundle supports it, by which artifact and field, and with what kind of evidence. It makes no judgement beyond that: no score, no verdict, no certification.

What produced the bundle. The shipped operator-trial 0.1.0 runs the gateway with devMode: true and static simulated credentials (examples/operator-trial/src/gateway-config.ts), signs receipts with an ephemeral key, and verifies no zero-knowledge proof. This is a property of the implementation that produced bundles of this shape; it is not something this bundle proves about itself.

What this report never claims. That the endpoint executed anything, that a human consented, who receives funds or controls a settlement address, that a spend limit applied, that any subject was authenticated, or that production credentials were used. Where such a claim appears below, its status is ABSENT.

Anchors

AnchorValueSource
signer0xb1f30bddf40612b8aa0634d5ca5c21aa5a2f5dffcommand line (--signer)
receipt count3command line (--expect-count)
head hash0xba154095cb6bdf6dfc8351519faabdebf64598dfcda3f8e978f934cfaf65b3f1command line (--expect-head)

Values were supplied through command-line flags. Their independence from this bundle is unknown. Copying signer/count/head from bundle files establishes consistency with those supplied values; it does not establish signer identity or independently establish completeness. External assurance requires a separately trusted signer reference and checkpoint.

Summary of statuses

SIGNED: 18 · OBSERVED: 12 · DERIVED: 21 · ABSENT: 27 · FAILED: 0

Bundle-level findings

#ClaimStatusEvidenceNote
B2Receipts form one intact hash chain (genesis, seq, prevReceiptHash, stored receiptHash)DERIVEDreceipts.jsonl
inputs: verifyReceiptChain(@bolyra/receipts) with expectedSigner = anchor; log: 3 receipt line(s)
3 receipt(s), 3 chained; recomputed head hash 0xba154095cb6bdf6dfc8351519faabdebf64598dfcda3f8e978f934cfaf65b3f1
B3aReceipt count matches the supplied count checkpointDERIVEDreceipts.jsonl
inputs: --expect-count 3; log: 3 receipt line(s)
count matches the supplied checkpoint.
B3bHash of the last readable chained receipt matches the supplied head checkpointDERIVEDreceipts.jsonl line 3
inputs: --expect-head 0xba154095cb6bdf6dfc8351519faabdebf64598dfcda3f8e978f934cfaf65b3f1; recomputed: 0xba154095cb6bdf6dfc8351519faabdebf64598dfcda3f8e978f934cfaf65b3f1, the recomputed hash of the last readable chained receipt (line 3)
the supplied checkpoint equals 0xba154095cb6bdf6dfc8351519faabdebf64598dfcda3f8e978f934cfaf65b3f1, the recomputed hash of the last readable chained receipt (line 3).
B8aHost's unsigned receiptCount equals the number of receipt linesOBSERVEDsummary.json receiptCount
receipts.jsonl
receiptCount 3 (unsigned) equals the number of receipt lines.
B8bHost's unsigned headReceiptHash equals the recomputed hash of the last readable chained receiptOBSERVEDsummary.json headReceiptHash
receipts.jsonl line 3
headReceiptHash (unsigned) equals 0xba154095cb6bdf6dfc8351519faabdebf64598dfcda3f8e978f934cfaf65b3f1, the recomputed hash of the last readable chained receipt (line 3).
B4Signer in signer.json equals the supplied signer anchorDERIVEDsigner.json signer
inputs: --signer 0xb1f30bddf40612b8aa0634d5ca5c21aa5a2f5dff
matches the supplied anchor.
B6Host reports an ephemeral signerOBSERVEDsigner.json ephemeralthe host asserts the key was generated for this run; no key-destruction claim follows.
B4bVERIFY.txt names the anchored signer (compared, never used as an anchor)OBSERVEDVERIFY.txtVERIFY.txt names the anchored signer (unsigned text; not used as an anchor).
B5Proof verification modeABSENTnonethe bundle does not record whether proofs were verified. Separately: the shipped operator-trial 0.1.0 runs the gateway with devMode: true and static simulated credentials (examples/operator-trial/src/gateway-config.ts); that is a property of the implementation, not authenticated provenance of this bundle.
B7Host-reported dry-run flagOBSERVEDsummary.json dryRundryRun: true (the host reports the built-in echo endpoint was used).

Per receipt line

#lineClaimStatusEvidenceNote
B11Receipt's signature recovers to the anchored signer and its payload hash recomputesDERIVEDreceipts.jsonl line 1 signature.value
receipts.jsonl line 1 signature.payloadHash
inputs: verifyReceipt(@bolyra/receipts) with expectedSigner = 0xb1f30bddf40612b8aa0634d5ca5c21aa5a2f5dff
signature recovered to the anchor; payload hash recomputed.
B12Receipt's signature recovers to the anchored signer and its payload hash recomputesDERIVEDreceipts.jsonl line 2 signature.value
receipts.jsonl line 2 signature.payloadHash
inputs: verifyReceipt(@bolyra/receipts) with expectedSigner = 0xb1f30bddf40612b8aa0634d5ca5c21aa5a2f5dff
signature recovered to the anchor; payload hash recomputed.
B13Receipt's signature recovers to the anchored signer and its payload hash recomputesDERIVEDreceipts.jsonl line 3 signature.value
receipts.jsonl line 3 signature.payloadHash
inputs: verifyReceipt(@bolyra/receipts) with expectedSigner = 0xb1f30bddf40612b8aa0634d5ca5c21aa5a2f5dff
signature recovered to the anchor; payload hash recomputed.
B1a1Receipt's id equals the first 18 characters of its stored payload hash and is unique in the logDERIVEDreceipts.jsonl line 1 id
receipts.jsonl line 1 signature.payloadHash
inputs: report-local check: id === signature.payloadHash.slice(0, 18) and unique; not covered by @bolyra/receipts or @bolyra/cli
consistent with the stored payload hash and unique in the log. Authenticity of the hash itself is B1.
B1a2Receipt's id equals the first 18 characters of its stored payload hash and is unique in the logDERIVEDreceipts.jsonl line 2 id
receipts.jsonl line 2 signature.payloadHash
inputs: report-local check: id === signature.payloadHash.slice(0, 18) and unique; not covered by @bolyra/receipts or @bolyra/cli
consistent with the stored payload hash and unique in the log. Authenticity of the hash itself is B1.
B1a3Receipt's id equals the first 18 characters of its stored payload hash and is unique in the logDERIVEDreceipts.jsonl line 3 id
receipts.jsonl line 3 signature.payloadHash
inputs: report-local check: id === signature.payloadHash.slice(0, 18) and unique; not covered by @bolyra/receipts or @bolyra/cli
consistent with the stored payload hash and unique in the log. Authenticity of the hash itself is B1.

Attempt 1

#ClaimStatusEvidenceNote
A1The summary's receipt id names exactly one valid receipt in the logDERIVEDsummary.json attempts[0].receiptId
receipts.jsonl line 1 id
inputs: receiptId 0x6f82e3b05de9c571
names receipt line 1.
A2Decision (allow / deny)SIGNEDreceipts.jsonl line 1 payload.decision.allowedallow
A3Decision reason textSIGNEDreceipts.jsonl line 1 payload.decision.reasonCode"allowed | action=echo-action POST 127.0.0.1:53727/echo"
A4bAction descriptor parsed from the signed reason text (operator-trial convention, not a receipt schema field)DERIVEDreceipts.jsonl line 1 payload.decision.reasonCode
inputs: rule: trailing " | action=<name> <METHOD> <host><path>"
echo-action POST 127.0.0.1:53727/echo
A4cRecorded action and signed action descriptor agreeDERIVEDsummary.json action
receipts.jsonl line 1 payload.decision.reasonCode
inputs: A4a@1; A4b@1
the unsigned record and the signed descriptor name the same action.
A5Signer-asserted simulated subject identifiers; subject authentication is not establishedSIGNEDreceipts.jsonl line 1 payload.subjectrootDid did:bolyra:dev:000000000000000000000000000000000ef9f5257e42e60d82de43ef46cc2ff0; actingDid did:bolyra:dev:000000000000000000000000000000000ef9f5257e42e60d82de43ef46cc2ff0; commitments 19907046019634888722304576993792634864 / 19907046019634888722304576993792634864. Dev DIDs from a simulated credential; these identify a key material commitment, not a person or legal entity.
A6Recorded permission bitmaskSIGNEDreceipts.jsonl line 1 payload.decision.permissionBitmaskpermissionBitmask 2.
A8aNonceSIGNEDreceipts.jsonl line 1 payload.proof.noncenonce 33050125237918531785092188808
A9aProof hashesSIGNEDreceipts.jsonl line 1 payload.proofhumanProofHash 2d56104a64b95a80432c6e2f0e485eeb6f6f6ece2d1ad8ccfd8537801605a718; agentProofHash 2d56104a64b95a80432c6e2f0e485eeb6f6f6ece2d1ad8ccfd8537801605a718; publicSignalsHash d0087fedfb3948873668c23bda78b8bf45a628406760400113c4de96b46cdc8a. Hashes only; see A9b.
A4aAction name, method, host, path as the host recorded themOBSERVEDsummary.json actionecho-action POST 127.0.0.1:53727/echo
A7aPermission the host configured as requiredABSENTnonethe required permission is host configuration; the bundle does not carry it in signed or unsigned form.
A9bHuman and agent proofs were verifiedABSENTnonethe bundle provides no evidence that any proof was verified; A9a lists hashes only. Separately: the shipped operator-trial 0.1.0 disables proof verification (dev mode; see B5).
A10Host reports invoking fetch toward the endpoint; delivery and execution unprovenOBSERVEDsummary.json attempts[0].dispatcheddispatched: true. 'dispatched' means the host reports invoking fetch; delivery and execution at the endpoint are not proven.
A11Upstream HTTP statusOBSERVEDsummary.json attempts[0].upstreamStatusupstreamStatus: 200 (as observed by the host).
A12Decision was signed before dispatchABSENTnonethe bundle holds no ordering evidence. The host's code verifies the persisted receipt before dispatching, but the bundle does not record that.
A13The endpoint executed the actionABSENTnonenever claimed by the trial; an upstream status is the host's observation of a response, not proof of execution.
A14A human consented to this actionABSENTnoneno consent artifact exists in the bundle.
A15A mandate or spend limit bounded this actionABSENTnonethe receipt records a permission tier mask only; there is no cumulative budget, and this is an auth receipt, not a commerce receipt.
A16Who receives funds or controls a settlement addressABSENTnonenothing in the bundle names a payee, a settlement address, or who controls one.
A17Production credentials or registry were usedABSENTnonesee B5: simulated credentials, no registry.

Attempt 2

#ClaimStatusEvidenceNote
A1The summary's receipt id names exactly one valid receipt in the logDERIVEDsummary.json attempts[1].receiptId
receipts.jsonl line 2 id
inputs: receiptId 0xf139357ce998561b
names receipt line 2.
A2Decision (allow / deny)SIGNEDreceipts.jsonl line 2 payload.decision.alloweddeny
A3Decision reason textSIGNEDreceipts.jsonl line 2 payload.decision.reasonCode"policy_denied: Tool "echo-action" requires permissions 10b, agent has 1b | action=echo-action POST 127.0.0.1:53727/echo"
A4bAction descriptor parsed from the signed reason text (operator-trial convention, not a receipt schema field)DERIVEDreceipts.jsonl line 2 payload.decision.reasonCode
inputs: rule: trailing " | action=<name> <METHOD> <host><path>"
echo-action POST 127.0.0.1:53727/echo
A4cRecorded action and signed action descriptor agreeDERIVEDsummary.json action
receipts.jsonl line 2 payload.decision.reasonCode
inputs: A4a@2; A4b@2
the unsigned record and the signed descriptor name the same action.
A5Signer-asserted simulated subject identifiers; subject authentication is not establishedSIGNEDreceipts.jsonl line 2 payload.subjectrootDid did:bolyra:dev:000000000000000000000000000000001ade2c3d19dcd4de118b34bd618d259f; actingDid did:bolyra:dev:000000000000000000000000000000001ade2c3d19dcd4de118b34bd618d259f; commitments 35713515059947112636640560610871682463 / 35713515059947112636640560610871682463. Dev DIDs from a simulated credential; these identify a key material commitment, not a person or legal entity.
A6Recorded permission bitmaskSIGNEDreceipts.jsonl line 2 payload.decision.permissionBitmaskpermissionBitmask 1.
A7bRequired mask as reported in the denial text (reported, not the enforced configuration)DERIVEDreceipts.jsonl line 2 payload.decision.reasonCode
inputs: rule: "requires permissions <mask>, agent has <mask>" in the signed reason text
reported required 10b, agent 1b; this is what the host wrote into the reason, not the enforced configuration.
A8aNonceSIGNEDreceipts.jsonl line 2 payload.proof.noncenonce 33050125250618937014349418370
A9aProof hashesSIGNEDreceipts.jsonl line 2 payload.proofhumanProofHash 8b969a16da2a9f7ed464c1b5aaa66f8f9f47ba4c55e2a98677e0b7461f174f2b; agentProofHash 8b969a16da2a9f7ed464c1b5aaa66f8f9f47ba4c55e2a98677e0b7461f174f2b; publicSignalsHash 79ac2a7880d69b586ecea46a9c5454d080f485f7d3e85cdb30297a72c5ef98f6. Hashes only; see A9b.
A4aAction name, method, host, path as the host recorded themOBSERVEDsummary.json actionecho-action POST 127.0.0.1:53727/echo
A7aPermission the host configured as requiredABSENTnonethe required permission is host configuration; the bundle does not carry it in signed or unsigned form.
A9bHuman and agent proofs were verifiedABSENTnonethe bundle provides no evidence that any proof was verified; A9a lists hashes only. Separately: the shipped operator-trial 0.1.0 disables proof verification (dev mode; see B5).
A10Host reports invoking fetch toward the endpoint; delivery and execution unprovenOBSERVEDsummary.json attempts[1].dispatcheddispatched: false. 'dispatched' means the host reports invoking fetch; delivery and execution at the endpoint are not proven.
A11Upstream HTTP statusABSENTnoneno upstream status was recorded.
A12Decision was signed before dispatchABSENTnonethe bundle holds no ordering evidence. The host's code verifies the persisted receipt before dispatching, but the bundle does not record that.
A13The endpoint executed the actionABSENTnonenever claimed by the trial; an upstream status is the host's observation of a response, not proof of execution.
A14A human consented to this actionABSENTnoneno consent artifact exists in the bundle.
A15A mandate or spend limit bounded this actionABSENTnonethe receipt records a permission tier mask only; there is no cumulative budget, and this is an auth receipt, not a commerce receipt.
A16Who receives funds or controls a settlement addressABSENTnonenothing in the bundle names a payee, a settlement address, or who controls one.
A17Production credentials or registry were usedABSENTnonesee B5: simulated credentials, no registry.

Attempt 3

#ClaimStatusEvidenceNote
A1The summary's receipt id names exactly one valid receipt in the logDERIVEDsummary.json attempts[2].receiptId
receipts.jsonl line 3 id
inputs: receiptId 0xce71d54449634289
names receipt line 3.
A2Decision (allow / deny)SIGNEDreceipts.jsonl line 3 payload.decision.alloweddeny
A3Decision reason textSIGNEDreceipts.jsonl line 3 payload.decision.reasonCode"authentication_failed: Nonce already used — proof replay rejected [tool: echo-action] | action=echo-action POST 127.0.0.1:53727/echo"
A4bAction descriptor parsed from the signed reason text (operator-trial convention, not a receipt schema field)DERIVEDreceipts.jsonl line 3 payload.decision.reasonCode
inputs: rule: trailing " | action=<name> <METHOD> <host><path>"
echo-action POST 127.0.0.1:53727/echo
A4cRecorded action and signed action descriptor agreeDERIVEDsummary.json action
receipts.jsonl line 3 payload.decision.reasonCode
inputs: A4a@3; A4b@3
the unsigned record and the signed descriptor name the same action.
A5Signer-asserted simulated subject identifiers; subject authentication is not establishedSIGNEDreceipts.jsonl line 3 payload.subjectrootDid did:bolyra:dev:000000000000000000000000000000000ef9f5257e42e60d82de43ef46cc2ff0; actingDid did:bolyra:dev:000000000000000000000000000000000ef9f5257e42e60d82de43ef46cc2ff0; commitments 19907046019634888722304576993792634864 / 19907046019634888722304576993792634864. Dev DIDs from a simulated credential; these identify a key material commitment, not a person or legal entity.
A6Recorded permission bitmaskSIGNEDreceipts.jsonl line 3 payload.decision.permissionBitmaskpermissionBitmask 0. Implementation note (not from the bundle): in the shipped trial, attempt 3 is the replay; the gateway's failure default for a replay is 0 because verification fails before tool policy runs, so a 0 here is not evidence that permissions were evaluated.
A8aNonceSIGNEDreceipts.jsonl line 3 payload.proof.noncenonce 33050125237918531785092188808
A9aProof hashesSIGNEDreceipts.jsonl line 3 payload.proofhumanProofHash 2d56104a64b95a80432c6e2f0e485eeb6f6f6ece2d1ad8ccfd8537801605a718; agentProofHash 2d56104a64b95a80432c6e2f0e485eeb6f6f6ece2d1ad8ccfd8537801605a718; publicSignalsHash d0087fedfb3948873668c23bda78b8bf45a628406760400113c4de96b46cdc8a. Hashes only; see A9b.
A4aAction name, method, host, path as the host recorded themOBSERVEDsummary.json actionecho-action POST 127.0.0.1:53727/echo
A7aPermission the host configured as requiredABSENTnonethe required permission is host configuration; the bundle does not carry it in signed or unsigned form.
A9bHuman and agent proofs were verifiedABSENTnonethe bundle provides no evidence that any proof was verified; A9a lists hashes only. Separately: the shipped operator-trial 0.1.0 disables proof verification (dev mode; see B5).
A10Host reports invoking fetch toward the endpoint; delivery and execution unprovenOBSERVEDsummary.json attempts[2].dispatcheddispatched: false. 'dispatched' means the host reports invoking fetch; delivery and execution at the endpoint are not proven.
A11Upstream HTTP statusABSENTnoneno upstream status was recorded.
A12Decision was signed before dispatchABSENTnonethe bundle holds no ordering evidence. The host's code verifies the persisted receipt before dispatching, but the bundle does not record that.
A13The endpoint executed the actionABSENTnonenever claimed by the trial; an upstream status is the host's observation of a response, not proof of execution.
A14A human consented to this actionABSENTnoneno consent artifact exists in the bundle.
A15A mandate or spend limit bounded this actionABSENTnonethe receipt records a permission tier mask only; there is no cumulative budget, and this is an auth receipt, not a commerce receipt.
A16Who receives funds or controls a settlement addressABSENTnonenothing in the bundle names a payee, a settlement address, or who controls one.
A17Production credentials or registry were usedABSENTnonesee B5: simulated credentials, no registry.
A8bAttempt presented attempt 1's nonce and was deniedDERIVEDreceipts.jsonl line 1 payload.proof.nonce
receipts.jsonl line 3 payload.proof.nonce
receipts.jsonl line 3 payload.decision.allowed
inputs: A1@1; A1@3; A8a@1; A8a@3; A2@3
same signed nonce as attempt 1, and the decision was deny.

Re-verify yourself

From the bundle directory, with Node 20 or newer (the first run downloads the pinned CLI):

npx @bolyra/cli@0.9.0 receipt verify-chain ./receipts.jsonl --signer 0xb1f30bddf40612b8aa0634d5ca5c21aa5a2f5dff --expect-count 3 --expect-head 0xba154095cb6bdf6dfc8351519faabdebf64598dfcda3f8e978f934cfaf65b3f1

Change payload.decision.allowed in any receipt line without re-signing and re-run the command: expect FAIL line <n>: [signature-invalid] for that line, possibly with additional chain failures. The id check in this report (B1a) is not part of the CLI's output.

Status legend

SIGNED
An authenticated signer assertion, not independently established truth: the value is inside a receipt payload whose ES256K signature recovered to the anchored signer and whose payload hash recomputed.
OBSERVED
An unsigned host assertion: recorded by the trial host, signed by nothing.
DERIVED
A conclusion this report computes from SIGNED or OBSERVED values, reviewer anchors, or a named check; the row names its inputs and the rule.
ABSENT
No supporting evidence for this claim in the bundle. The row says what would be needed.
FAILED
Evidence is present and a named check on it failed, or two sources contradict.

Claim titles are fixed in the generating tool (claims.ts); the bundle cannot add or remove a claim.