Full receipt JSON
{
"benchmark": {
"name": "heartwood-trust-receipts-benchmark",
"target_heartwood_version": "0.2.5",
"version": "1.0.0"
},
"claim_scan": {
"clean": true,
"violation_count": 0,
"violations": []
},
"competitors": [
{
"capabilities": {
"auditable_retirement": null,
"crypto_erase_proof": null,
"external_anchor": null,
"hash_chained_audit": null,
"key_destruction_receipt": null,
"policy_before_ranking": null,
"signed_provenance": null,
"strict_enforcement": null
},
"name": "mem0",
"requirements": {
"adapter": "not implemented in benchmark v1",
"measured_in_this_run": "nothing",
"needs": "a live adapter and an owner-approved, funded run before any capability, requirement, or comparison for this substrate is published"
},
"status": "stub"
},
{
"capabilities": {
"auditable_retirement": null,
"crypto_erase_proof": null,
"external_anchor": null,
"hash_chained_audit": null,
"key_destruction_receipt": null,
"policy_before_ranking": null,
"signed_provenance": null,
"strict_enforcement": null
},
"name": "zep",
"requirements": {
"adapter": "not implemented in benchmark v1",
"measured_in_this_run": "nothing",
"needs": "a live adapter and an owner-approved, funded run before any capability, requirement, or comparison for this substrate is published"
},
"status": "stub"
},
{
"capabilities": {
"auditable_retirement": null,
"crypto_erase_proof": null,
"external_anchor": null,
"hash_chained_audit": null,
"key_destruction_receipt": null,
"policy_before_ranking": null,
"signed_provenance": null,
"strict_enforcement": null
},
"name": "supermemory",
"requirements": {
"adapter": "not implemented in benchmark v1",
"measured_in_this_run": "nothing",
"needs": "a live adapter and an owner-approved, funded run before any capability, requirement, or comparison for this substrate is published"
},
"status": "stub"
}
],
"probes": [
{
"cases": [
{
"case_id": "forgery_off_content_hash",
"case_type": "contract",
"claim_anchor": "content_provenance_authenticity",
"description": "A tampered content hash is surfaced as invalid at read (OFF mode).",
"expectation": "record present with content_hash_match=False and signature_valid=False",
"matches_contract": true,
"measured": {
"content_hash_match": false,
"retrieved": true,
"signature_valid": false
}
},
{
"case_id": "forgery_off_forged_signature",
"case_type": "contract",
"claim_anchor": "content_provenance_authenticity",
"description": "A forged producer signature fails verification and is surfaced.",
"expectation": "record present with signature_valid=False",
"matches_contract": true,
"measured": {
"retrieved": true,
"signature_valid": false
}
},
{
"case_id": "forgery_enforce_fails_closed",
"case_type": "contract",
"claim_anchor": "content_provenance_authenticity",
"description": "Strict ENFORCE fails the recall closed when a returnable record fails verification.",
"expectation": "recall raises StrictSignatureError naming the tampered id",
"matches_contract": true,
"measured": {
"dropped_ids": [
"mem_bench_forgery_0001"
],
"raised": "StrictSignatureError"
}
},
{
"case_id": "forgery_filter_drops_and_counts",
"case_type": "contract",
"claim_anchor": "content_provenance_authenticity",
"description": "Strict FILTER drops the failing record and counts it (loud, not silent).",
"expectation": "record absent from results and present in strict_dropped ids",
"matches_contract": true,
"measured": {
"absent_from_results": true,
"strict_dropped_ids": [
"mem_bench_forgery_0001"
]
}
},
{
"case_id": "forgery_boundary_unsigned_metadata",
"case_type": "boundary",
"claim_anchor": "NOT_CLAIMED:authorization_integrity",
"description": "Provenance signs (id, content_hash, source.uri, created_by, epistemic) only; a metadata edit is not detected by signature verification. Documented non-claim (see docs/api/continuity.md).",
"expectation": "signature_valid=True and content_hash_match=True despite a classification downgrade (measured boundary, not a defect)",
"matches_contract": true,
"measured": {
"classification_now": "internal",
"content_hash_match": true,
"retrieved": true,
"signature_valid": true
}
}
],
"notes": [],
"probe_class": "forgery_injection",
"receipt_name": "Signed provenance",
"status": "PASS"
},
{
"cases": [
{
"case_id": "policy_leak_adversarial_cue",
"case_type": "contract",
"claim_anchor": "policy_before_ranking",
"description": "An adversarial cue targeting confidential content does not leak it to an under-cleared reader.",
"expectation": "confidential record absent from results; content not present",
"matches_contract": true,
"measured": {
"confidential_in_results": false,
"result_ids": [
"mem_bench_public_kb_0001"
],
"text_leaked": false
}
},
{
"case_id": "policy_leak_denial_audited_not_surfaced",
"case_type": "contract",
"claim_anchor": "policy_before_ranking",
"description": "The denial is recorded on the audit log (operator-visible) but not surfaced in the caller result set (constant shape).",
"expectation": "audit denied>=1 while confidential record absent from results",
"matches_contract": true,
"measured": {
"confidential_in_results": false,
"denied_in_audit": 1
}
},
{
"case_id": "policy_leak_filter_cannot_escalate",
"case_type": "contract",
"claim_anchor": "policy_before_ranking",
"description": "Caller filters only narrow the candidate set; they cannot widen past the principal's clearance.",
"expectation": "confidential record still absent when caller passes allowed_classifications including 'confidential'",
"matches_contract": true,
"measured": {
"confidential_in_results": false,
"text_leaked": false
}
},
{
"case_id": "policy_positive_control_cleared_reader",
"case_type": "positive_control",
"claim_anchor": "policy_before_ranking",
"description": "A properly cleared principal (legal role, confidential clearance) does retrieve the confidential record.",
"expectation": "confidential record present for the cleared reader",
"matches_contract": true,
"measured": {
"confidential_in_results": true
}
},
{
"case_id": "policy_leak_boundary_db_write_downgrade",
"case_type": "boundary",
"claim_anchor": "NOT_CLAIMED:authorization_integrity",
"description": "Recall authorization runs on unsigned mutable metadata (classification, roles); a database-write attacker can downgrade it and reach the record. Documented non-claim under the single-trust-domain assumption (see docs/api/continuity.md).",
"expectation": "under-cleared reader reaches the record after a raw metadata downgrade (measured boundary, not a recall-time defect)",
"matches_contract": true,
"measured": {
"reached_after_downgrade": true,
"result_ids": [
"mem_bench_confidential_0001"
]
}
}
],
"notes": [],
"probe_class": "policy_leak",
"receipt_name": "Policy before ranking",
"status": "PASS"
},
{
"cases": [
{
"case_id": "tamper_inplace_edit_detected",
"case_type": "contract",
"claim_anchor": "tamper_evidence",
"description": "An in-place edit of an audit row body is detected by verify_audit().",
"expectation": "verify_audit() True before, False after the edit",
"matches_contract": true,
"measured": {
"after": false,
"before": true
}
},
{
"case_id": "tamper_interior_drop_detected",
"case_type": "contract",
"claim_anchor": "tamper_evidence",
"description": "Dropping an interior audit row breaks the hash chain and is detected.",
"expectation": "verify_audit() False after the interior row is dropped",
"matches_contract": true,
"measured": {
"after": false
}
},
{
"case_id": "tamper_tail_truncation_chain_boundary",
"case_type": "boundary",
"claim_anchor": "tamper_evidence",
"description": "The in-database chain alone cannot see tail-truncation: the surviving prefix still hashes consistently. Documented boundary (README: 'tail-truncation needs an external anchor').",
"expectation": "verify_audit() stays True after the last row is truncated (measured boundary)",
"matches_contract": true,
"measured": {
"chain_only_verify": true
}
},
{
"case_id": "tamper_tail_truncation_anchor_detects",
"case_type": "contract",
"claim_anchor": "tamper_evidence",
"description": "With an external anchor, the same tail-truncation is detected.",
"expectation": "verify_against_anchors() reports ok=False while chain_ok=True",
"matches_contract": true,
"measured": {
"anchor_ok": false,
"anchor_status": "degraded",
"chain_ok": true
}
},
{
"case_id": "tamper_positive_control_clean_chain",
"case_type": "positive_control",
"claim_anchor": "tamper_evidence",
"description": "An untouched chain verifies and its anchor verification passes.",
"expectation": "verify_audit() True and verify_against_anchors() ok=True",
"matches_contract": true,
"measured": {
"anchor_ok": true,
"chain": true
}
}
],
"notes": [],
"probe_class": "audit_tamper_detection",
"receipt_name": "Tamper-evident audit",
"status": "PASS"
},
{
"cases": [
{
"case_id": "retire_unindex_removes_from_corpus",
"case_type": "contract",
"claim_anchor": "auditable_retirement",
"description": "set_indexed(False) removes a record from the answerable corpus; no opt-in or back-dated filter reaches it.",
"expectation": "record absent from default recall AND from an opt-in (include_expired + all review states) recall",
"matches_contract": true,
"measured": {
"in_default": false,
"in_optin": false
}
},
{
"case_id": "retire_expire_default_hidden_optin_visible",
"case_type": "contract",
"claim_anchor": "auditable_retirement",
"description": "expire() removes a record from default recall but keeps it reachable via include_expired.",
"expectation": "absent by default, present with include_expired=True",
"matches_contract": true,
"measured": {
"in_default": false,
"in_include_expired": true
}
},
{
"case_id": "retire_supersede_default_hidden_optin_visible",
"case_type": "contract",
"claim_anchor": "auditable_retirement",
"description": "transition_review(superseded) hides a record from default recall but keeps it reachable via include_review_states.",
"expectation": "absent by default, present with include_review_states=[superseded]",
"matches_contract": true,
"measured": {
"in_default": false,
"in_include_superseded": true
}
},
{
"case_id": "retire_is_audited_and_chain_valid",
"case_type": "contract",
"claim_anchor": "auditable_retirement",
"description": "Each retirement writes an audit event and the hash chain still verifies.",
"expectation": "index_state audit event present for the unindexed record and verify_audit() True",
"matches_contract": true,
"measured": {
"chain": true,
"index_state_audited": true
}
},
{
"case_id": "retire_boundary_raw_write_unaudited",
"case_type": "boundary",
"claim_anchor": "NOT_CLAIMED:tamper_proof_rbac_or_visibility",
"description": "A direct UPDATE to `indexed` bypasses set_indexed() and removes the record from recall with nothing on the audit log. Documented boundary (docs: 'direct column writes are a policy violation').",
"expectation": "record gone from recall AND no index_state audit event for it (measured boundary, not a defect)",
"matches_contract": true,
"measured": {
"gone_from_recall": true,
"no_audit_event": true
}
}
],
"notes": [],
"probe_class": "record_retirement",
"receipt_name": "Recall visibility and retirement",
"status": "PASS"
},
{
"cases": [
{
"case_id": "erasure_forget_shreds_key",
"case_type": "contract",
"claim_anchor": "content_provenance_authenticity",
"description": "forget(mode=hard) returns a key-destruction receipt and purges derived artifacts.",
"expectation": "key_shredded=True and purged>=1",
"matches_contract": true,
"measured": {
"key_shredded": true,
"purged": 1
}
},
{
"case_id": "erasure_event_retained_and_chain_valid",
"case_type": "contract",
"claim_anchor": "content_provenance_authenticity",
"description": "The erasure event is retained on the hash chain even after the payload is shredded, and the chain still verifies.",
"expectation": "forget audit event present and verify_audit() True",
"matches_contract": true,
"measured": {
"chain": true,
"forget_audited": true
}
},
{
"case_id": "erasure_boundary_conditional_on_root_absence",
"case_type": "boundary",
"claim_anchor": "NOT_CLAIMED:db_compromise_resistance",
"description": "The proof is conditional: with the wrapping root still present it does not assert unrecoverability. This is key-destruction evidence, not byte-level content deletion (documented boundary).",
"expectation": "content_unrecoverable=False when root_present=True (measured boundary, not a defect)",
"matches_contract": true,
"measured": {
"content_unrecoverable": false,
"reason": "root still present"
}
}
],
"notes": [],
"probe_class": "erasure_receipts",
"receipt_name": "Key-destruction receipt",
"status": "PASS"
}
],
"reproducibility": {
"deterministic_models": "heartwood dev hashing embedder + lexical reranker",
"fixed_fixtures": true,
"note": "this run fixes the model pair above and does not measure retrieval quality; no cross-embedder comparison was run",
"offline": true
},
"run_metadata": {
"generated_at_pacific": "2026-08-07 10:59:57 PDT",
"generated_at_utc": "2026-08-07T17:59:57.977223+00:00",
"platform": "macOS-26.5.2-arm64-arm-64bit",
"python": "3.11.15"
},
"spend_receipt": {
"new_credentials_or_signups": 0,
"new_runtime_dependencies": 0,
"notes": "stdlib + numpy (a Heartwood dependency) only; competitor adapters are stubs; PyPI installation of Heartwood's own declared dependencies is not a third-party service call",
"third_party_network_calls": 0,
"usd_spent": 0
},
"summary": {
"boundaries_published": 5,
"contract_cases_failed": 0,
"contract_cases_upheld": 18,
"overall": "PASS",
"probe_status_counts": {
"PASS": 5
}
},
"system_under_test": {
"adapter": "heartwood",
"heartwood_version_measured": "0.2.5",
"version_match": true
}
}