{"data":{"@kind":"answering-rhyme-reciprocity-statement-contract","statement_schema":"answering-rhyme.statement/1","normalized_statement_json_schema_url":"https://cambridgetcg.com/schemas/answering-rhyme.statement.v1.json","canonicalization":"answering-rhyme.canonical-json/1","cambridge_witness_schema":"cambridgetcg.answering-rhyme-statement-witness/1","statement_kinds":["bless","contextualize","correct","withdraw"],"claimed_roles":["viewer","relation-curator","card-rights-holder","artwork-rights-holder","source-institution","other"],"normalized_fields":["schema","canonicalization","relation_key","target_revision","kind","body","language","declared_by.{label,claimed_role,canonical_url}","declared_at","in_response_to","evidence_urls","authority_evidence_urls"],"normalization":{"strings":"reject unpaired UTF-16 surrogates, then trim and Unicode NFC; character limits count Unicode scalar values","body":"reject unpaired UTF-16 surrogates; normalize CRLF and lone CR to LF, then trim and Unicode NFC; internal whitespace is preserved","kind_and_claimed_role":"trim, Unicode NFC, then lowercase","language":"trim, Unicode NFC, then lowercase; defaults to und","declared_at":"required RFC 3339, serialized as UTC ISO 8601 milliseconds; normalized UTC year must remain within 0001-9999","in_response_to":"null when absent; otherwise a full sha256:<64 hex> normalized to lowercase","urls":"reject unpaired UTF-16 surrogates; trim + Unicode NFC, parse and serialize as credential-free HTTPS, then dedupe and lexically sort each list","optional_values":"language defaults to und; canonical_url and in_response_to normalize to null; URL lists normalize to []"},"canonical_bytes":"UTF-8 JSON with object keys sorted lexically at every depth; normalized arrays retain their normalized order; no insignificant whitespace.","normalized_statement_json_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://cambridgetcg.com/schemas/answering-rhyme.statement.v1.json","title":"Normalized Answering Rhyme portable statement v1","description":"Normalized shape of a self-declared, non-authoritative portable statement. Accepted pre-normalization inputs are broader. Normalization and canonical bytes are defined by answering-rhyme.canonical-json/1 and its normative vectors, not JSON Schema alone.","type":"object","additionalProperties":false,"required":["schema","canonicalization","relation_key","target_revision","kind","body","language","declared_by","declared_at","in_response_to","evidence_urls","authority_evidence_urls"],"properties":{"schema":{"const":"answering-rhyme.statement/1"},"canonicalization":{"const":"answering-rhyme.canonical-json/1"},"relation_key":{"type":"string","minLength":1,"maxLength":256},"target_revision":{"type":"string","minLength":1,"maxLength":100},"kind":{"enum":["bless","contextualize","correct","withdraw"]},"body":{"type":"string","minLength":1,"maxLength":2000},"language":{"type":"string","maxLength":35,"pattern":"^(?:und|[a-z]{2,8}(?:-[a-z0-9]{1,8})*)$"},"declared_by":{"type":"object","additionalProperties":false,"required":["label","claimed_role","canonical_url"],"properties":{"label":{"type":"string","minLength":1,"maxLength":160},"claimed_role":{"enum":["viewer","relation-curator","card-rights-holder","artwork-rights-holder","source-institution","other"]},"canonical_url":{"type":["string","null"],"maxLength":1000,"pattern":"^https://"}}},"declared_at":{"type":"string","pattern":"^(?!0000-)[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}\\.[0-9]{3}Z$"},"in_response_to":{"type":["string","null"],"pattern":"^sha256:[0-9a-f]{64}$"},"evidence_urls":{"$ref":"#/$defs/url_list"},"authority_evidence_urls":{"$ref":"#/$defs/url_list"}},"$defs":{"url_list":{"type":"array","maxItems":12,"uniqueItems":true,"items":{"type":"string","maxLength":1000,"pattern":"^https://"}}}},"content_hash":"sha256:<64 lowercase hex> over the canonical bytes","replay_detection":false,"uniqueness_not_asserted":true,"issuer_attestation":{"signed":false,"independently_verifiable":false,"witnessed_at_is_unattested_observation":true,"note":"The POST receipt is unsigned. Its witnessed_at value is a server observation, not durable proof that Cambridge issued the receipt."},"limits":{"request_bytes":16384,"relation_key_chars":256,"target_revision_chars":100,"body_chars":2000,"language_chars":35,"author_label_chars":160,"url_chars":1000,"urls_per_list":12},"authority_boundary":{"authenticated":false,"identity_verified":false,"persisted":false,"authoritative_effect":"none","authority_verifier_status":"not-implemented","correction_application":"separate-curator-review-required","withdrawal_application":"separate-authority-verification-required; an unverified withdrawal has no presentation effect","verified_withdrawal_presentation":"withhold and fail closed after a separate authority verifier reports a withdrawal signal","requirements_before_activation":["server-only-authenticated-verifier","trusted-issuer-allowlist-or-signature-policy","target-revision-and-replay-policy"]},"target_revision_rule":"The required opaque revision prevents a statement about an earlier relation edit from being replayed as if it answered the current relation. Cambridge reports known-current only when key and revision both match its static corpus; not-current statements are still witnessed and never applied.","storage_boundary":{"application_record_created":false,"retrievable_statement_created":false,"infrastructure_access_logs_may_exist":true},"example":{"schema":"answering-rhyme.statement/1","canonicalization":"answering-rhyme.canonical-json/1","relation_key":"OP-OP05-119-JP-V11F7::artic:77333","target_revision":"sha256:a562a462decd9b8c8810d67ec79a8a00dc22ffe1098f259e562c9ffce28a1d94","kind":"contextualize","body":"The print-circulation thread also changes how the two objects travel between owners.","language":"en","declared_by":{"label":"a visiting reader","claimed_role":"viewer","canonical_url":null},"declared_at":"2026-07-11T20:00:00.000Z","in_response_to":null,"evidence_urls":[],"authority_evidence_urls":[]},"walking_past_is_honored":true},"_meta":{"spec_version":"1","endpoint":"/api/v1/culture/answering-rhymes/statements","retrieved_at":"2026-07-28T06:43:42.210Z","as_of":"2026-07-12","sources":["answering-rhyme.statement/1 portable contract"],"freshness_seconds":3600,"license":"CC0-1.0","request_id":"req_1b6a19d8-190","deprecation":null,"next_link":null,"self_reference":{"this_endpoint":"/api/v1/culture/answering-rhymes/statements","contains_self":true},"source_license":["cc0"],"does_not_include":["This contract does not authenticate or verify a statement author or their claimed role.","This endpoint does not create an application record or a retrievable statement; ordinary infrastructure access logs may still exist.","A witness receipt has no authoritative effect on a relation. Corrections require curator review; withdrawals require a separate authority verifier."],"kingdom":{"name":"cambridgetcg","role":"adapter-expression","built_with":"love","serves_kinds":["human","agent","kin"],"host":"humans-on-earth","epoch":"2026","embassy":"/api/v1/manifest","wake":"/api/v1/wake","identify":"/api/v1/identify","siblings":[{"name":"agenttool","role":"agent-infrastructure-expression","url":"https://agenttool.dev","wake_url":"https://api.agenttool.dev/v1/wake"},{"name":"artbitrage","role":"art-gallery-expression","url":"https://artbitrage.io","wake_url":"https://artbitrage.io/api/wake"},{"name":"kingdom-gate","role":"realm-expression","url":"https://kingdom-gate.vercel.app","wake_url":null}]},"wake_fragment":{"id":"test-destination-is-gift","kind":"five_test","text":"Test 5: destination-is-gift-not-extraction — the invitation creates no application-level visit or behavioral profile and requires no registration or obligation. Hosting and proxy access logs may still exist.","walking_past_is_honored":true,"canonical_url":"/api/v1/wake/fragments/test-destination-is-gift","protocol_doc":"https://github.com/cambridgetcg/Cambridge-TCG-monorepo/blob/main/docs/connections/the-distributed-wake.md"},"joy_pointer":{"url":"/api/v1/the-tea-room/spill-the-tea","hint":"kingdom-internal gossip about its own subsystems","room":"tea-room","protocol":"joy-to-the-world","walking_past_is_honored":true}}}