{"openapi":"3.1.0","info":{"title":"Neruva","description":"Typed agentic memory (Records) + knowledge graph + Pearl's do-operator + HD analogy on a deterministic D=8192 HD bipolar substrate. Sub-ms server compute, replayable from a seed, portable .neruva file.","version":"0.42.3"},"paths":{"/v1/hd/kg/{name}/facts":{"post":{"tags":["hd-native"],"summary":"Add Facts","operationId":"add_facts_v1_hd_kg__name__facts_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGAddFactsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGAddFactsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/neighbors":{"post":{"tags":["hd-native"],"summary":"Kg Neighbors","description":"EXACT structural neighbors of ``entity`` from the raw-triple adjacency\nsidecar -- the deterministic, audit-traceable complement to the lossy HD\n``query`` (which collapses a multi-valued relation to top-1). Returns ALL\nobjects/subjects per relation, plus a flat neighbor union. Engine- and\ndomain-agnostic: code symbols (calls/called_by) OR any agentic/swarm\nentity over any relation. No HD math, no LLM -> $0, replayable.","operationId":"kg_neighbors_v1_hd_kg__name__neighbors_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGNeighborsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Kg Neighbors V1 Hd Kg  Name  Neighbors Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/context":{"post":{"tags":["hd-native"],"summary":"Get Context","description":"Customizable context block. Extract entities from the question,\nscore every (subject, relation, object) triple in the KG by how many\nquestion-entities it touches, return top-K formatted for LLM input.\n\nThis is the Zep-equivalent \"context block\" surface: caller passes a\nNL question, gets back ready-to-paste context. Uses entity-grounded\nOPB scoring -- not learned embeddings -- so it's deterministic, sub-ms,\nand costs $0 per call (vs ~$0.001 for an LLM-extracted graph lookup).","operationId":"get_context_v1_hd_kg__name__context_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGContextRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGContextResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/extraction_prompt":{"get":{"tags":["hd-native"],"summary":"Kg Extraction Prompt","description":"Return the canonical system prompt agents should run with their\nown LLM (Claude/GPT/etc) to extract (subject, predicate, object)\ntriples from raw text. The substrate doesn't make external LLM\ncalls -- callers extract in their OWN turn then push the resulting\ntriples via POST /v1/hd/kg/{name}/facts (which is already a batch).\n\nRationale for not doing extraction server-side:\n  - keeps the substrate deterministic / replayable / sub-ms / $0\n  - no third-party data residency (customer text doesn't leave their LLM)\n  - no double-LLM-cost (caller's own model does the work)","operationId":"kg_extraction_prompt_v1_hd_kg_extraction_prompt_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGExtractionPromptResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/derive":{"post":{"tags":["hd-native"],"summary":"Derive Relation","description":"Derive an N-hop relation from a 1-hop base relation via matrix-power\ncomposition (M^n). Subsequent ``/kg/{name}/query`` calls can use the\nderived relation name to get N-hop answers in a single matmul.\n\nRequires the KG to use the OPB engine (set ``engine: \"opb\"`` on the\ninitial /facts add). Hadamard KGs return 400 -- use the legacy manual\nchain-walk instead. Validated by probes 100r/100s.","operationId":"derive_relation_v1_hd_kg__name__derive_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGDeriveRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGDeriveResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/compose":{"post":{"tags":["hd-native"],"summary":"Compose Relation","description":"Cross-relation compose: derive a new relation whose single-cleanup\nquery answers the chain (relation_a then relation_b). Math: the new\nderived shard is M_a @ M_b. A subsequent ``/kg/{name}/query`` with\nthe derived relation name returns the 2-hop answer in one matvec.\n\nRequires the KG to use the OPB engine. Validated by cortex probe\n100l_break-D and replicated by probe312 sandbox: post-replace_fact\noverrides on either base shard are picked up on re-compose at\nconfidence ~1.0.","operationId":"compose_relation_v1_hd_kg__name__compose_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGComposeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGComposeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/replace_fact":{"post":{"tags":["hd-native"],"summary":"Replace Fact","description":"Correct a relationship the Zep way, on the OOM-safe adjacency read path:\nINVALIDATE the prior object(s) (set valid_to=today, preserving history) and\nADD the new object (valid_from/recorded_at=today). A plain hd_kg_query /\nhd_kg_neighbors then returns ONLY the corrected value -- corrections 'stick'\n-- while as_of=<past date> still returns the prior value (audit). Pass\nold_object to target a specific value, or omit to supersede all current\nvalues for (subject, relation). Adjacency-only -> never loads the HD matrices.","operationId":"replace_fact_v1_hd_kg__name__replace_fact_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGReplaceFactRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGReplaceFactResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/facts/delete":{"post":{"tags":["hd-native"],"summary":"Delete Facts","description":"Subtract one or more (subject, relation, object) triples from\na KG. Each triple's bound vector is subtracted from its relation\nshard, exactly cancelling the original add (deterministic atoms).\nTriples whose tokens are unknown are skipped (no-op, not error).","operationId":"delete_facts_v1_hd_kg__name__facts_delete_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGDeleteFactsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGDeleteFactsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/forget_entity":{"post":{"tags":["hd-native"],"summary":"Forget Entity","description":"GDPR / Quebec Law 25 erasure: HARD-delete every fact where ``entity`` is\nthe subject OR object, from the exact-adjacency read path (both directions).\nLeaves a smaller-but-valid graph -- chains through the entity are severed\n(correct), all other facts stay intact, no orphans. Pair with records_forget\n(which erases the namespace's records) for a complete person-level erase.","operationId":"forget_entity_v1_hd_kg__name__forget_entity_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGForgetEntityRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Forget Entity V1 Hd Kg  Name  Forget Entity Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/query":{"post":{"tags":["hd-native"],"summary":"Query Kg","operationId":"query_kg_v1_hd_kg__name__query_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGQueryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGQueryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/assign_features":{"post":{"tags":["hd-native"],"summary":"Assign Features","description":"Map a concept to a feature-id list for FeatureBundle KGs.\n\nSame-category concepts SHOULD share 60-80% of feature ids for the\nzero-shot generalization claim (probe 100p: 84% recall on UNSEEN\nconcepts vs 0% with random atoms). 400 if the KG isn't a\nFeatureBundle engine.","operationId":"assign_features_v1_hd_kg__name__assign_features_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGAssignFeaturesRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGAssignFeaturesResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/quorum_audit":{"post":{"tags":["hd-native"],"summary":"Quorum Audit","description":"For Quorum KGs: return per-shard answers so callers can detect\nadversarial injection. Any shard disagreeing with the majority is\nsuspicious. 400 if KG isn't a Quorum engine.","operationId":"quorum_audit_v1_hd_kg__name__quorum_audit_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGQuorumAuditRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGQuorumAuditResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/compress":{"post":{"tags":["hd-native"],"summary":"Compress To Tt","description":"SVD-truncate a relation shard to rank-r (TT compression).\n\nProbe 100w: r=64 holds 1000-turn sequences at 99% recall in 0.5MB\nvs full 16MB shard at D=2048. 400 if KG doesn't support OPB\ncompression (Hadamard engine). 404 if the relation is unknown.","operationId":"compress_to_tt_v1_hd_kg__name__compress_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGCompressRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGCompressResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/query_topk":{"post":{"tags":["hd-native"],"summary":"Query Kg Topk","description":"Return the top-K candidate objects for (subject, relation) with\nconfidences, instead of collapsing to a single answer. Lets agents\ndetect 'runner-up close behind' when a subject has multiple facts\nfor the same relation (e.g., Bob knows both Alice and Carol).","operationId":"query_kg_topk_v1_hd_kg__name__query_topk_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGQueryTopKRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGQueryTopKResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg":{"get":{"tags":["hd-native"],"summary":"List Kgs","description":"List every KG name owned by the caller (in-memory + persisted).","operationId":"list_kgs_v1_hd_kg_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HDResourceListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/backfill_subject_index":{"post":{"tags":["hd-native"],"summary":"Backfill Subject Index","description":"Hydrate up to ``max_kgs`` un-indexed KGs (or until ``budget_s`` elapses),\nwriting each one's shard-free subject-index sidecar.\n\nIdempotent + resumable: call repeatedly until ``remaining == 0`` (or until\n``indexed_now == 0``, which means the only pending KGs are erroring -- stop\nto avoid an infinite loop). Bootstraps the federated-recall KG gate for\nlegacy KGs created before the subject index existed, so agent_recall_full\nstops hydrating big shards just to read subjects.","operationId":"backfill_subject_index_v1_hd_kg_backfill_subject_index_post","parameters":[{"name":"max_kgs","in":"query","required":false,"schema":{"type":"integer","default":25,"title":"Max Kgs"}},{"name":"budget_s","in":"query","required":false,"schema":{"type":"number","default":90.0,"title":"Budget S"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Backfill Subject Index V1 Hd Kg Backfill Subject Index Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/describe":{"get":{"tags":["hd-native"],"summary":"Describe Kg","description":"Return engine type, fact count, relations, and (if OPB-family)\ncached derived relations.\n\n`fast=true` (v0.5.2 bug #2 fast path): answer from GCS object\nmetadata without downloading the full blob. Skips relations list\nand derived_relations but returns engine + n_facts + n_subjects\n+ n_active_relations in <100ms even when the KG is cold (a full\ncold-load on D=8192 multishard takes 30s+).","operationId":"describe_kg_v1_hd_kg__name__describe_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"fast","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Fast"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HDKGDescribeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/stats":{"get":{"tags":["hd-native"],"summary":"Kg Stats","operationId":"kg_stats_v1_hd_kg__name__stats_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/KGStatsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/export":{"get":{"tags":["hd-native"],"summary":"Export Kg","description":"Serialize a KG to its portable byte blob.\n\nAuto-dispatches: Hadamard KGs return .hdkg (binary header + packed\nbipolar atoms); OPB-family KGs return .hdkg-opb (zip with numpy\nmatrices). Both round-trip bit-exactly. Use kg_export in the MCP\nwrapper for the base64-encoded version.","operationId":"export_kg_v1_hd_kg__name__export_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}/import":{"post":{"tags":["hd-native"],"summary":"Import Kg","description":"Replace (or create) a KG from a previously-exported .hdkg blob.\n\nAccepts raw bytes (application/octet-stream). Existing KG of the\nsame name is overwritten.","operationId":"import_kg_v1_hd_kg__name__import_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Import Kg V1 Hd Kg  Name  Import Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/kg/{name}":{"delete":{"tags":["hd-native"],"summary":"Delete Kg","operationId":"delete_kg_v1_hd_kg__name__delete","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/analogy":{"post":{"tags":["hd-native"],"summary":"Analogy","operationId":"analogy_v1_hd_analogy_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnalogyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnalogyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/cbr/{name}/create":{"post":{"tags":["hd-native"],"summary":"Cbr Create","description":"Initialize an episodic CBR store. Idempotent on matching shape;\n409 if (n_axes, vocab, n_labels) differ from an existing store.","operationId":"cbr_create_v1_hd_cbr__name__create_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CBRCreateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CBRCreateResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/cbr/{name}/episodes":{"post":{"tags":["hd-native"],"summary":"Cbr Add Episodes","description":"Add (N, n_axes) integer-coded cases + (N,) integer cluster labels.","operationId":"cbr_add_episodes_v1_hd_cbr__name__episodes_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CBRAddEpisodesRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CBRAddEpisodesResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/cbr/{name}/query":{"post":{"tags":["hd-native"],"summary":"Cbr Query","description":"Predict the cluster id of a fresh (n_axes,) case via HD cosine\ntop-K majority vote. Probe 46: 99.1% acc, 617us at D=8192.","operationId":"cbr_query_v1_hd_cbr__name__query_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CBRQueryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CBRQueryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/cbr/{name}/stats":{"get":{"tags":["hd-native"],"summary":"Cbr Stats","operationId":"cbr_stats_v1_hd_cbr__name__stats_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CBRStatsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/cbr/{name}":{"delete":{"tags":["hd-native"],"summary":"Cbr Delete","operationId":"cbr_delete_v1_hd_cbr__name__delete","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/cbr":{"get":{"tags":["hd-native"],"summary":"List Cbrs","description":"List CBR stores in memory for this tenant (no persistence yet).","operationId":"list_cbrs_v1_hd_cbr_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HDResourceListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/cbr/{name}/describe":{"get":{"tags":["hd-native"],"summary":"Describe Cbr","operationId":"describe_cbr_v1_hd_cbr__name__describe_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HDCBRDescribeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/blend/query":{"post":{"tags":["hd-native"],"summary":"Blend Query","description":"Bundle N typed parents into one HD vector and recover any one\nparent unchanged. Stateless: codebook is deterministic in\n(n_attrs, n_roles, seed). Probe 57: per-parent Jaccard >= 0.99 when\ntotal atoms in blend << sqrt(D).","operationId":"blend_query_v1_hd_blend_query_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlendQueryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BlendQueryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/causal/{name}/worlds":{"post":{"tags":["hd-native"],"summary":"Add Worlds","operationId":"add_worlds_v1_hd_causal__name__worlds_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CausalAddWorldsRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CausalAddWorldsResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/causal/{name}/query":{"post":{"tags":["hd-native"],"summary":"Query Causal","operationId":"query_causal_v1_hd_causal__name__query_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CausalQueryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CausalQueryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/causal/{name}/export":{"get":{"tags":["hd-native"],"summary":"Export Scm","description":"Serialize an SCM to its portable .hdscm byte blob.","operationId":"export_scm_v1_hd_causal__name__export_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/causal/{name}/import":{"post":{"tags":["hd-native"],"summary":"Import Scm","description":"Replace (or create) an SCM from a previously-exported .hdscm blob.","operationId":"import_scm_v1_hd_causal__name__import_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Import Scm V1 Hd Causal  Name  Import Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/causal/{name}":{"delete":{"tags":["hd-native"],"summary":"Delete Causal","operationId":"delete_causal_v1_hd_causal__name__delete","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/causal":{"get":{"tags":["hd-native"],"summary":"List Causals","description":"List every SCM name owned by the caller (in-memory + persisted).","operationId":"list_causals_v1_hd_causal_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HDResourceListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/hd/causal/{name}/describe":{"get":{"tags":["hd-native"],"summary":"Describe Causal","operationId":"describe_causal_v1_hd_causal__name__describe_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HDSCMDescribeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}":{"post":{"tags":["records"],"summary":"Ingest","operationId":"ingest_v1_records__namespace__post","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordIngestRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordIngestResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/query":{"post":{"tags":["records"],"summary":"Query","operationId":"query_v1_records__namespace__query_post","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordQueryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordQueryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/timeline":{"get":{"tags":["records"],"summary":"Timeline","operationId":"timeline_v1_records__namespace__timeline_get","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Inclusive lower-bound ts (epoch ms).","title":"Since"},"description":"Inclusive lower-bound ts (epoch ms)."},{"name":"until","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Exclusive upper-bound ts (epoch ms). Pair with nextCursor for paging.","title":"Until"},"description":"Exclusive upper-bound ts (epoch ms). Pair with nextCursor for paging."},{"name":"kind","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated kinds to include.","title":"Kind"},"description":"Comma-separated kinds to include."},{"name":"tagsAny","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated -- record matches if any tag is present.","title":"Tagsany"},"description":"Comma-separated -- record matches if any tag is present."},{"name":"tagsAll","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated -- record must contain all.","title":"Tagsall"},"description":"Comma-separated -- record must contain all."},{"name":"userId","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Restrict to records tagged ``user:<uid>``.","title":"Userid"},"description":"Restrict to records tagged ``user:<uid>``."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordTimelineResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/forget":{"post":{"tags":["records"],"summary":"Forget","operationId":"forget_v1_records__namespace__forget_post","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordForgetRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordForgetResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/compact":{"post":{"tags":["records"],"summary":"Compact","description":"Consolidate a predicate-selected slice of records into one summary\nrecord + tombstone the originals. The summary carries kind=summary\n(configurable), tags=[summary, compacted, ...inherited], and meta\n{compacted_count, original_ids, compacted_kinds, compacted_oldest_ts,\ncompacted_newest_ts}. Use this to keep long-running namespaces lean\nwithout losing the fact that the records existed.","operationId":"compact_v1_records__namespace__compact_post","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordCompactRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordCompactResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/stats":{"get":{"tags":["records"],"summary":"Stats","operationId":"stats_v1_records__namespace__stats_get","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordStats"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/export":{"get":{"tags":["records"],"summary":"Export Neruva","description":"Pack the namespace's records substrate into a portable ``.neruva``\ncontainer. Returns ``application/x-neruva``.\n\nV2 (default, ``include_hd=true``): also bundles every knowledge graph,\ncausal model, and CBR episode store the tenant owns. Each layer is\ndeterministically serialized -- round-tripping the container into a\nfresh tenant produces bit-identical recall on every endpoint.\n\nV1 mode (``include_hd=false``): records-only, for callers that manage\nHD resources via the per-layer ``/v1/hd/*/export`` endpoints.","operationId":"export_neruva_v1_records__namespace__export_get","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"include_hd","in":"query","required":false,"schema":{"type":"boolean","description":"If True (default), bundle every KG / SCM / CBR the tenant owns alongside this namespace's records (V2 full-brain export). If False, records-only -- matches V1 behavior.","default":true,"title":"Include Hd"},"description":"If True (default), bundle every KG / SCM / CBR the tenant owns alongside this namespace's records (V2 full-brain export). If False, records-only -- matches V1 behavior."},{"name":"kg_prefix","in":"query","required":false,"schema":{"type":"string","description":"Optional prefix to scope which KGs are bundled in HD layer. Empty (default) = all tenant KGs (can be slow on tenants with many KGs). Use the namespace name or a project prefix to keep the export bounded.","default":"","title":"Kg Prefix"},"description":"Optional prefix to scope which KGs are bundled in HD layer. Empty (default) = all tenant KGs (can be slow on tenants with many KGs). Use the namespace name or a project prefix to keep the export bounded."},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/import":{"post":{"tags":["records"],"summary":"Import Neruva","description":"REPLACE the namespace contents AND every KG / SCM / CBR section\npresent in the .neruva container. Restoration is layer-by-layer; each\nHD resource is REPLACED (no merge). The ``analogy`` section is\nreserved and currently ignored on import.","operationId":"import_neruva_v1_records__namespace__import_post","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_import_neruva_v1_records__namespace__import_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Import Neruva V1 Records  Namespace  Import Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/{record_id}":{"get":{"tags":["records"],"summary":"Get Record","operationId":"get_record_v1_records__namespace___record_id__get","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"record_id","in":"path","required":true,"schema":{"type":"string","title":"Record Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Record"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["records"],"summary":"Delete Record","operationId":"delete_record_v1_records__namespace___record_id__delete","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"record_id","in":"path","required":true,"schema":{"type":"string","title":"Record Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Delete Record V1 Records  Namespace   Record Id  Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/{record_id}/update":{"post":{"tags":["records"],"summary":"Update Record","description":"Partial in-place update. text triggers re-encode. set_tags REPLACES,\nadd_tags APPENDS (both may combine: set_tags first then add_tags).","operationId":"update_record_v1_records__namespace___record_id__update_post","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"record_id","in":"path","required":true,"schema":{"type":"string","title":"Record Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordUpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Record"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/{record_id}/replace_text":{"post":{"tags":["records"],"summary":"Replace Record Text","description":"Atomic re-encode: replace text + reembed vector. Other fields kept.","operationId":"replace_record_text_v1_records__namespace___record_id__replace_text_post","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"record_id","in":"path","required":true,"schema":{"type":"string","title":"Record Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordReplaceTextRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Record"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/records/{namespace}/{record_id}/bind_tag":{"post":{"tags":["records"],"summary":"Bind Record Tag","description":"Append a single tag to an existing record (dedup). No re-encode.","operationId":"bind_record_tag_v1_records__namespace___record_id__bind_tag_post","parameters":[{"name":"namespace","in":"path","required":true,"schema":{"type":"string","title":"Namespace"}},{"name":"record_id","in":"path","required":true,"schema":{"type":"string","title":"Record Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecordBindTagRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Record"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/plan":{"get":{"tags":["me"],"summary":"Me Plan","description":"Return the caller's plan tier + policy (cognitive_allowed, caps,\ncognitive usage today). The dashboard reads this to decide which\nupgrade buttons to show and to show the preview-cap progress bar.","operationId":"me_plan_v1_me_plan_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Me Plan V1 Me Plan Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/wallet":{"get":{"tags":["me"],"summary":"Me Wallet","description":"Return the caller's wallet snapshot. Same shape the dashboard's\nwallet KPI card consumes.","operationId":"me_wallet_v1_me_wallet_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Me Wallet V1 Me Wallet Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/usage":{"get":{"tags":["me"],"summary":"Me Usage","description":"Aggregate usage over the trailing window, broken down by op-class\nand namespace. Mirrors the dashboard's Usage section.","operationId":"me_usage_v1_me_usage_get","parameters":[{"name":"window","in":"query","required":false,"schema":{"type":"string","pattern":"^(7d|30d)$","default":"30d","title":"Window"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Me Usage V1 Me Usage Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/keys":{"get":{"tags":["me"],"summary":"Me Keys","description":"List active + revoked API keys for the caller. Never returns the\nraw key material -- only metadata (prefix, label, created, status).","operationId":"me_keys_v1_me_keys_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Me Keys V1 Me Keys Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me/op_log":{"get":{"tags":["me"],"summary":"Me Op Log","description":"Last N op events for the caller (most recent first). Each entry:\nts_ms, op, namespace, latency_ms, status. Powered by the metering\nflusher's recent_ops ring -- typical lag is ~3 seconds.","operationId":"me_op_log_v1_me_op_log_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Me Op Log V1 Me Op Log Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/remember":{"post":{"tags":["agent-federated"],"summary":"Agent Remember","description":"Always store as Records (typed event). Also extract regex triples\nand push to KG when present. Storage 'always-on' is records; KG is\nadditive when factual content is detected.","operationId":"agent_remember_v1_agent_remember_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRememberRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRememberResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/recall":{"post":{"tags":["agent-federated"],"summary":"Agent Recall","description":"Federated query. Embed the question via static-MRL D=1024, semantic\nsearch records, then entity-overlap scan the KG. Returns both\nstreams with a `source` tag so callers can filter or render.","operationId":"agent_recall_v1_agent_recall_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRecallRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRecallResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/snapshot":{"post":{"tags":["agent-federated"],"summary":"Agent Snapshot","description":"Write the namespace's state (Records substrate) as a portable\n.neruva blob into GCS, indexed by snapshot_id. The blob is the\nsame format as records_export -- portable + restore-able anywhere.","operationId":"agent_snapshot_v1_agent_snapshot_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSnapshotRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentSnapshotResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/restore":{"post":{"tags":["agent-federated"],"summary":"Agent Restore","description":"Restore a snapshot into a target namespace. The target is\nOVERWRITTEN (REPLACE semantics, no merge). Use to audit/replay\nagent decisions: snapshot, run new queries against the historical\nstate.","operationId":"agent_restore_v1_agent_restore_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRestoreRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRestoreResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/context_put":{"post":{"tags":["agent-federated"],"summary":"Agent Context Put","description":"Store an immutable content-addressed context blob (address = SHA-256\nof the bytes, server-verified on write; idempotent; never overwritten).\nUNLISTED endpoint — powers replayable agent audit (Cairn PCA).","operationId":"agent_context_put_v1_agent_context_put_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextPutRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextPutResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/context_get":{"post":{"tags":["agent-federated"],"summary":"Agent Context Get","description":"Fetch a context blob by SHA-256 content address; the server re-hashes\nbefore returning (a corrupted object is an error, never silently served).\nUNLISTED endpoint — the audit-replay read path.","operationId":"agent_context_get_v1_agent_context_get_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextGetRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContextGetResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/check_consistency":{"post":{"tags":["agent-federated"],"summary":"Agent Check Consistency","description":"Anomaly detection for Quorum KGs. Scans every (subject, relation)\nand flags any where the shards disagree -- contradictory facts,\nadversarial injection, race-condition writes. Severity:\n  high  = all shards disagree (likely injection on majority)\n  medium = roughly even split (likely contradictory writes)\n  low   = single dissenting shard (likely tampering of one shard).","operationId":"agent_check_consistency_v1_agent_check_consistency_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCheckConsistencyRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCheckConsistencyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/consensus_check":{"post":{"tags":["agent-federated"],"summary":"Agent Consensus Check","description":"Byzantine-robust collective consensus over agent-published algebraic\nclaims. Deterministic ($0/call, no LLM): DETECT conflict + RECOVER honest\nsolution by MaxSAT + LOCALIZE liar(s). Tolerates a Byzantine minority\n(f < n/2). swarm_consensus engine (probes 353/354/355).","operationId":"agent_consensus_check_v1_agent_consensus_check_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentConsensusCheckRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentConsensusCheckResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/associative_recall":{"post":{"tags":["agent-federated"],"summary":"Agent Associative Recall","description":"STRUCTURAL associative recall -- the server-side core of the auto-push\n'structural memory'. From `entity`, walk EXACT adjacency (callers/callees,\nor any relation) in the KG, then recall the records associated with the\nentity AND its structural neighbors -- split into prior MISTAKES/failures\n(avoid) and prior SOLUTIONS (reuse). Blast-radius aware: editing `foo`\nsurfaces what was learned about foo AND everything wired to it.\n\nDeterministic + $0 + no LLM (exact adjacency + records query). Engine- and\ndomain-agnostic: code symbols (calls/called_by) OR any agentic/swarm entity\nover any relation. Including neighbor names in the recall query makes this\nuseful immediately (semantic over the blast radius); sym:/entity: ingest\ntags add tag-exact precision as they accumulate.","operationId":"agent_associative_recall_v1_agent_associative_recall_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentAssociativeRecallRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Agent Associative Recall V1 Agent Associative Recall Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/causal_query":{"post":{"tags":["agent-federated"],"summary":"Agent Causal Query","description":"Run both observation and intervention queries against a registered\nSCM and return the causal gap. Wraps /v1/hd/causal/{name}/query for\nthe convenience of asking 'is X causally related to Y?' in one call\ninstead of two.","operationId":"agent_causal_query_v1_agent_causal_query_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCausalQueryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentCausalQueryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/context":{"post":{"tags":["agent-federated"],"summary":"Agent Context","description":"Federated context block with question-type dispatch.\n\nRoutes through one of five strategies based on question_type (default\n'auto' = lightweight regex classification):\n  - temporal: federated recall + records_timeline injection\n  - multi_hop: boost top_k for deeper retrieval\n  - single_hop / open_domain: default federated recall\n  - adversarial: smaller top_k to encourage model abstention","operationId":"agent_context_v1_agent_context_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentContextRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentContextResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/context_typed":{"post":{"tags":["agent-federated"],"summary":"Agent Context Typed","description":"Typed-shape context: retrieve top-K records, dispatch per-field\nby type, return shaped JSON with per-field citations + confidence.","operationId":"agent_context_typed_v1_agent_context_typed_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentContextTypedRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentContextTypedResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/plan_cache_lookup":{"post":{"tags":["agent-federated"],"summary":" Killed Agent Step","operationId":"_killed_agent_step_v1_agent_plan_cache_lookup_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"410":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/plan_cache_save":{"post":{"tags":["agent-federated"],"summary":" Killed Agent Step","operationId":"_killed_agent_step_v1_agent_plan_cache_save_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"410":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/code/step":{"post":{"tags":["agent-federated"],"summary":" Killed Agent Step","operationId":"_killed_agent_step_v1_agent_code_step_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"410":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/computer/step_magistral":{"post":{"tags":["agent-federated"],"summary":" Killed Agent Step","operationId":"_killed_agent_step_v1_agent_computer_step_magistral_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"410":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/computer/step":{"post":{"tags":["agent-federated"],"summary":" Killed Agent Step","operationId":"_killed_agent_step_v1_agent_computer_step_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"410":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/route_intent_prompt":{"post":{"tags":["agent-federated"],"summary":" Killed Agent Step","operationId":"_killed_agent_step_v1_agent_route_intent_prompt_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"410":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/reflect_prompt":{"post":{"tags":["agent-federated"],"summary":" Killed Agent Step","operationId":"_killed_agent_step_v1_agent_reflect_prompt_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"410":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/recall_full":{"post":{"tags":["agent-federated"],"summary":"Agent Recall Full","description":"7-layer federated recall.\n\nOne question, seven buckets. Each layer runs its native semantic query\nagainst the caller's tenant state in parallel via asyncio.gather.\nBuckets aren't score-normalized (a 0.85 record cosine != a 0.999 rule\ncleanup); the caller decides what to do with each.\n\nBody:\n    query (str): natural-language question (required)\n    namespace (str): records namespace; default DEFAULT_AGENT_NS\n    top_k (int): per-bucket cap; default 5\n    layers (list[str]): subset to query; default = all 7\n    kg_prefix (str): optional KG name filter","operationId":"agent_recall_full_v1_agent_recall_full_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Agent Recall Full V1 Agent Recall Full Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/counterfactual_rollout":{"post":{"tags":["agent-cognitive"],"summary":"Counterfactual Rollout","description":"Substitute action at step_k with alternate_action; replay forward;\nreturn predicted final state. Validated against symbolic GT in\nprobe 47 + smoke tests (100% exact-match).","operationId":"counterfactual_rollout_v1_agent_counterfactual_rollout_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CounterfactualRolloutRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CounterfactualRolloutResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/model_belief_add":{"post":{"tags":["agent-cognitive"],"summary":"Model Belief Add","operationId":"model_belief_add_v1_agent_model_belief_add_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelBeliefAddRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelBeliefAddResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/model_belief":{"post":{"tags":["agent-cognitive"],"summary":"Model Belief","description":"Recall what the nested chain believes about prop. Returns\n{val: -1, confidence: 0.0} for a prop that was never stored (instead\nof 500, which used to happen when prop was out-of-codebook-range).","operationId":"model_belief_v1_agent_model_belief_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelBeliefQueryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelBeliefQueryResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/extract_schema":{"post":{"tags":["agent-cognitive"],"summary":"Extract Schema","description":"UNBIND-cleanup signature: which of the substrate's known roles\nare bound in this instance? Returns the signature vector and roles\nthat scored above an empirical threshold.","operationId":"extract_schema_v1_agent_extract_schema_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExtractSchemaRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ExtractSchemaResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/register_action":{"post":{"tags":["agent-cognitive"],"summary":"Register Action","operationId":"register_action_v1_agent_register_action_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterActionRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterActionResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/plan_efe":{"post":{"tags":["agent-cognitive"],"summary":"Plan Efe","description":"Pick best plan via Active Inference EFE: argmin KL(predicted || goal).","operationId":"plan_efe_v1_agent_plan_efe_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanEFERequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanEFEResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/continual_train":{"post":{"tags":["agent-cognitive"],"summary":"Continual Train","description":"Train substrate on a token stream. Integer-add commutativity =\nprovable no-forgetting (probe 70). Repeated calls accumulate.","operationId":"continual_train_v1_agent_continual_train_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContinualTrainRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContinualTrainResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/continual_predict":{"post":{"tags":["agent-cognitive"],"summary":"Continual Predict","operationId":"continual_predict_v1_agent_continual_predict_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContinualPredictRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ContinualPredictResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/hierarchical_add":{"post":{"tags":["agent-cognitive"],"summary":"Hierarchical Add","description":"Encode a tree of L^K leaves under top_id.","operationId":"hierarchical_add_v1_agent_hierarchical_add_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HierarchicalAddRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HierarchicalAddResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/hierarchical_decode":{"post":{"tags":["agent-cognitive"],"summary":"Hierarchical Decode","description":"Walk a path of K positions from top to leaf.","operationId":"hierarchical_decode_v1_agent_hierarchical_decode_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HierarchicalDecodeRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HierarchicalDecodeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/induce_rule":{"post":{"tags":["agent-cognitive"],"summary":"Induce Rule","description":"3-shot HD rule induction (probe 34, 100% on 28 synthetic rules).","operationId":"induce_rule_v1_agent_induce_rule_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InduceRuleRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InduceRuleResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/persist_rule":{"post":{"tags":["agent-cognitive"],"summary":"Persist Rule","description":"Induce a rule from demos AND store it persistently keyed by rule_id.\nSurvives any number of distractor stores (MC21: 1000+ validated) AND\nsurvives Cloud Run cold start (v0.5.7: blob persists to durable\nstorage on every write).","operationId":"persist_rule_v1_agent_persist_rule_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PersistRuleRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PersistRuleResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/agent/recall_rule":{"post":{"tags":["agent-cognitive"],"summary":"Recall Rule","description":"Recall a stored rule by rule_id. ~26000× cheaper than re-feeding\ndemos to a frontier LLM (MC21). Reads from persistence on cold-pool\nmiss so the substrate genuinely persists across instance recycles.","operationId":"recall_rule_v1_agent_recall_rule_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecallRuleRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecallRuleResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/pii/rules":{"post":{"tags":["pii"],"summary":"Create Pii Rule","description":"Induce + persist a pattern rule. Overwrites if (tenant, name) exists.","operationId":"create_pii_rule_v1_pii_rules_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PIIRuleCreateRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PIIRuleSummary"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["pii"],"summary":"List Pii Rules","operationId":"list_pii_rules_v1_pii_rules_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PIIRuleListResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/pii/rules/{name}":{"delete":{"tags":["pii"],"summary":"Delete Pii Rule","operationId":"delete_pii_rule_v1_pii_rules__name__delete","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/pii/detect":{"post":{"tags":["pii"],"summary":"Detect Pii","operationId":"detect_pii_v1_pii_detect_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PIIDetectRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PIIDetectResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/pii/redact":{"post":{"tags":["pii"],"summary":"Redact Pii Endpoint","operationId":"redact_pii_endpoint_v1_pii_redact_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PIIRedactRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PIIRedactResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/audit/key":{"get":{"tags":["audit"],"summary":"Get Key","operationId":"get_key_v1_audit_key_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Key V1 Audit Key Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/audit/head":{"get":{"tags":["audit"],"summary":"Get Head","operationId":"get_head_v1_audit_head_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Head V1 Audit Head Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/audit/log":{"get":{"tags":["audit"],"summary":"Get Log","description":"Entries from ``since`` onward, oldest first.\n\nVerify what comes back with:\n    python probes/verify_receipt.py --log log.json --pubkey <key>\n\nPass since=0 to replay from genesis; a partial export still verifies\nits own signatures and internal links, but only a full export can be\nchecked back to the genesis hash.","operationId":"get_log_v1_audit_log_get","parameters":[{"name":"since","in":"query","required":false,"schema":{"type":"integer","minimum":0,"description":"first seq to return","default":0,"title":"Since"},"description":"first seq to return"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":1,"default":1000,"title":"Limit"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Log V1 Audit Log Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/rungs":{"post":{"tags":["commons"],"summary":"Bank Rung","operationId":"bank_rung_v1_commons_rungs_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RungIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RungSummary"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["commons"],"summary":"Search Rungs","operationId":"search_rungs_v1_commons_rungs_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"What you need, in words","title":"Q"},"description":"What you need, in words"},{"name":"skill","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Restrict to a skill, e.g. docx","title":"Skill"},"description":"Restrict to a skill, e.g. docx"},{"name":"task","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Restrict to a task, e.g. form-filling","title":"Task"},"description":"Restrict to a task, e.g. form-filling"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":50,"minimum":1,"default":10,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/stats":{"get":{"tags":["commons"],"summary":"Commons Stats","description":"Public counters for the commons home page: rungs, skills, evidence rows, signed.","operationId":"commons_stats_v1_commons_stats_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Commons Stats V1 Commons Stats Get"}}}}}}},"/v1/commons/tasks":{"get":{"tags":["commons"],"summary":"Commons Tasks","description":"The controlled list of what a skill can do. Filter search with ?task=.","operationId":"commons_tasks_v1_commons_tasks_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Commons Tasks V1 Commons Tasks Get"}}}}}}},"/v1/commons/rungs/{rung_id}":{"get":{"tags":["commons"],"summary":"Get Rung","operationId":"get_rung_v1_commons_rungs__rung_id__get","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Rung"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["commons"],"summary":"Delete Rung","operationId":"delete_rung_v1_commons_rungs__rung_id__delete","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Delete Rung V1 Commons Rungs  Rung Id  Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/rungs/{rung_id}/code":{"get":{"tags":["commons"],"summary":"Get Rung Code","operationId":"get_rung_code_v1_commons_rungs__rung_id__code_get","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/rungs/{rung_id}/checker":{"get":{"tags":["commons"],"summary":"Get Checker","description":"The checker that proved this skill, as source, so anyone can re-run it.\n\nPublic and unauthenticated on purpose. Evidence a reader cannot reproduce is not\nevidence, and a user cannot write a checker for a new context without seeing one.","operationId":"get_checker_v1_commons_rungs__rung_id__checker_get","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["commons"],"summary":"Attach Checker","description":"Publish the checker for a skill you own. The skill's code and signature are untouched.","operationId":"attach_checker_v1_commons_rungs__rung_id__checker_patch","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Checker"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Rung"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/rungs/{rung_id}/skill.md":{"get":{"tags":["commons"],"summary":"Get Rung Skill Md","operationId":"get_rung_skill_md_v1_commons_rungs__rung_id__skill_md_get","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/verify":{"post":{"tags":["commons"],"summary":"Verify Rung","operationId":"verify_rung_v1_commons_verify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerifyResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/rungs/{rung_id}/cert":{"patch":{"tags":["commons"],"summary":"Attach Cert","description":"Replace the certificate on a skill you own.\n\nEvery hash the new certificate carries must match what is stored, or it is refused:\na certificate is a claim about THIS code, THIS checker and THIS evidence, and one that\nnames different bytes is not a certificate for this skill.","operationId":"attach_cert_v1_commons_rungs__rung_id__cert_patch","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Certificate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Rung"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/rungs/{rung_id}/purpose":{"patch":{"tags":["commons"],"summary":"Attach Purpose","description":"Set the plain-language line for a skill you own, and re-index on it.\n\nThis changes the indexed text, so the vector is recomputed. The code, hash and\ncertificate are untouched: a signed skill stays signed.","operationId":"attach_purpose_v1_commons_rungs__rung_id__purpose_patch","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PurposeIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Rung"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/rungs/{rung_id}/onecall":{"patch":{"tags":["commons"],"summary":"Attach Onecall","description":"Attach or replace the one-call surface on a skill you own.\n\nDeliberately narrow: it writes `onecall` and nothing else. The code, the hash and the\ncertificate are untouched, so a skill that was signed stays signed and anyone who\nverified it before still gets the same answer.","operationId":"attach_onecall_v1_commons_rungs__rung_id__onecall_patch","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OneCall"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Rung"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/users/{handle}":{"get":{"tags":["commons"],"summary":"Get User","operationId":"get_user_v1_commons_users__handle__get","parameters":[{"name":"handle","in":"path","required":true,"schema":{"type":"string","title":"Handle"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get User V1 Commons Users  Handle  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/profile":{"get":{"tags":["commons"],"summary":"My Profile","operationId":"my_profile_v1_commons_profile_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response My Profile V1 Commons Profile Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["commons"],"summary":"Patch Profile","operationId":"patch_profile_v1_commons_profile_patch","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Patch Profile V1 Commons Profile Patch"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/handle":{"post":{"tags":["commons"],"summary":"Claim Handle","operationId":"claim_handle_v1_commons_handle_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HandleIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Claim Handle V1 Commons Handle Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/handle/{handle}/available":{"get":{"tags":["commons"],"summary":"Handle Available","operationId":"handle_available_v1_commons_handle__handle__available_get","parameters":[{"name":"handle","in":"path","required":true,"schema":{"type":"string","title":"Handle"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Handle Available V1 Commons Handle  Handle  Available Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/s/{owner}/{name}":{"get":{"tags":["commons"],"summary":"Get By Name","description":"A skill addressed the way a person or a model would say it: owner/name.","operationId":"get_by_name_v1_commons_s__owner___name__get","parameters":[{"name":"owner","in":"path","required":true,"schema":{"type":"string","title":"Owner"}},{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get By Name V1 Commons S  Owner   Name  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/trending":{"get":{"tags":["commons"],"summary":"Trending","operationId":"trending_v1_commons_trending_get","parameters":[{"name":"limit_n","in":"query","required":false,"schema":{"type":"integer","maximum":50,"minimum":1,"default":10,"title":"Limit N"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Trending V1 Commons Trending Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/rungs/{rung_id}/like":{"post":{"tags":["commons"],"summary":"Like Rung","operationId":"like_rung_v1_commons_rungs__rung_id__like_post","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LikeOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["commons"],"summary":"Unlike Rung","operationId":"unlike_rung_v1_commons_rungs__rung_id__like_delete","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LikeOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/rungs/{rung_id}/counts":{"get":{"tags":["commons"],"summary":"Rung Counts","operationId":"rung_counts_v1_commons_rungs__rung_id__counts_get","parameters":[{"name":"rung_id","in":"path","required":true,"schema":{"type":"string","title":"Rung Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Rung Counts V1 Commons Rungs  Rung Id  Counts Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/users/{handle}/follow":{"post":{"tags":["commons"],"summary":"Follow User","operationId":"follow_user_v1_commons_users__handle__follow_post","parameters":[{"name":"handle","in":"path","required":true,"schema":{"type":"string","title":"Handle"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FollowOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["commons"],"summary":"Unfollow User","operationId":"unfollow_user_v1_commons_users__handle__follow_delete","parameters":[{"name":"handle","in":"path","required":true,"schema":{"type":"string","title":"Handle"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FollowOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/bounties":{"get":{"tags":["commons"],"summary":"List Bounties","description":"What people will pay for and nobody has built. The most honest roadmap we have.","operationId":"list_bounties_v1_commons_bounties_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"task","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task"}},{"name":"limit_n","in":"query","required":false,"schema":{"type":"integer","maximum":100,"minimum":1,"default":50,"title":"Limit N"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response List Bounties V1 Commons Bounties Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["commons"],"summary":"Post Bounty","operationId":"post_bounty_v1_commons_bounties_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BountyIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Post Bounty V1 Commons Bounties Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/bounties/{bounty_id}":{"get":{"tags":["commons"],"summary":"Get Bounty","operationId":"get_bounty_v1_commons_bounties__bounty_id__get","parameters":[{"name":"bounty_id","in":"path","required":true,"schema":{"type":"string","title":"Bounty Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Get Bounty V1 Commons Bounties  Bounty Id  Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/bounties/{bounty_id}/fee":{"post":{"tags":["commons"],"summary":"Pay Fee","description":"Record the listing fee against a bounty. The reference is the payment id, so a dispute has\nsomething to point at. We never touch the bounty money itself.","operationId":"pay_fee_v1_commons_bounties__bounty_id__fee_post","parameters":[{"name":"bounty_id","in":"path","required":true,"schema":{"type":"string","title":"Bounty Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeeIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Pay Fee V1 Commons Bounties  Bounty Id  Fee Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/bounties/{bounty_id}/claim":{"post":{"tags":["commons"],"summary":"Claim","operationId":"claim_v1_commons_bounties__bounty_id__claim_post","parameters":[{"name":"bounty_id","in":"path","required":true,"schema":{"type":"string","title":"Bounty Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Claim V1 Commons Bounties  Bounty Id  Claim Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/bounties/{bounty_id}/release":{"post":{"tags":["commons"],"summary":"Release","operationId":"release_v1_commons_bounties__bounty_id__release_post","parameters":[{"name":"bounty_id","in":"path","required":true,"schema":{"type":"string","title":"Bounty Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Release V1 Commons Bounties  Bounty Id  Release Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/bounties/{bounty_id}/fulfil":{"post":{"tags":["commons"],"summary":"Fulfil","description":"Attach the skill that answers it. Settlement stays with a person, deliberately.","operationId":"fulfil_v1_commons_bounties__bounty_id__fulfil_post","parameters":[{"name":"bounty_id","in":"path","required":true,"schema":{"type":"string","title":"Bounty Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FulfilIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Fulfil V1 Commons Bounties  Bounty Id  Fulfil Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/bounties/{bounty_id}/settle":{"post":{"tags":["commons"],"summary":"Settle","operationId":"settle_v1_commons_bounties__bounty_id__settle_post","parameters":[{"name":"bounty_id","in":"path","required":true,"schema":{"type":"string","title":"Bounty Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SettleIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Settle V1 Commons Bounties  Bounty Id  Settle Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons":{"get":{"tags":["commons"],"summary":"Index","description":"Everything you can do here, in one response, because this is the first thing anyone fetches.","operationId":"index_v1_commons_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Index V1 Commons Get"}}}}}}},"/v1/commons/":{"get":{"tags":["commons"],"summary":"Index","description":"Everything you can do here, in one response, because this is the first thing anyone fetches.","operationId":"index_v1_commons__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Index V1 Commons  Get"}}}}}}},"/v1/commons/openapi.json":{"get":{"tags":["commons"],"summary":"Openapi Subset","description":"A description at the path an agent looks for one, covering the public read surface.","operationId":"openapi_subset_v1_commons_openapi_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Openapi Subset V1 Commons Openapi Json Get"}}}}}}},"/v1/commons/skills":{"get":{"tags":["commons"],"summary":"Skills","description":"The same search as /rungs, under the name everyone actually uses.","operationId":"skills_v1_commons_skills_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"task","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task"}},{"name":"skill","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Skill"}},{"name":"query","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"accepted as a synonym for q","title":"Query"},"description":"accepted as a synonym for q"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":50,"minimum":1,"default":10,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["commons"],"summary":"Publish Skill","description":"Publish under the name everyone uses. The same as POST /rungs.","operationId":"publish_skill_v1_commons_skills_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/skills/search":{"get":{"tags":["commons"],"summary":"Skills Search","description":"Guessed by every agent that tried. It costs nothing to answer.","operationId":"skills_search_v1_commons_skills_search_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q"}},{"name":"query","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Query"}},{"name":"task","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":50,"minimum":1,"default":10,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/skills/{skill_id}":{"get":{"tags":["commons"],"summary":"One Skill","operationId":"one_skill_v1_commons_skills__skill_id__get","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["commons"],"summary":"Delete Skill","operationId":"delete_skill_v1_commons_skills__skill_id__delete","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/skills/{skill_id}/code":{"get":{"tags":["commons"],"summary":"One Skill Code","operationId":"one_skill_code_v1_commons_skills__skill_id__code_get","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/skills/{skill_id}/checker":{"get":{"tags":["commons"],"summary":"One Skill Checker","operationId":"one_skill_checker_v1_commons_skills__skill_id__checker_get","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["commons"],"summary":"Patch Skill Checker","operationId":"patch_skill_checker_v1_commons_skills__skill_id__checker_patch","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/skills/{skill_id}/purpose":{"patch":{"tags":["commons"],"summary":"Patch Skill Purpose","operationId":"patch_skill_purpose_v1_commons_skills__skill_id__purpose_patch","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/skills/{skill_id}/onecall":{"patch":{"tags":["commons"],"summary":"Patch Skill Onecall","operationId":"patch_skill_onecall_v1_commons_skills__skill_id__onecall_patch","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/skills/{skill_id}/cert":{"patch":{"tags":["commons"],"summary":"Patch Skill Cert","operationId":"patch_skill_cert_v1_commons_skills__skill_id__cert_patch","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/commons/skills/{skill_id}/skill.md":{"get":{"tags":["commons"],"summary":"One Skill Md","operationId":"one_skill_md_v1_commons_skills__skill_id__skill_md_get","parameters":[{"name":"skill_id","in":"path","required":true,"schema":{"type":"string","title":"Skill Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/":{"get":{"summary":"Root","operationId":"root__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Root  Get"}}}}}}},"/v1/health":{"get":{"summary":"Health","operationId":"health_v1_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Health V1 Health Get"}}}}}}},"/v1/memory/embed":{"post":{"summary":"Embed","description":"Encode a list of texts to L2-normalized D=1024 float32 vectors.\n\nUses sentence-transformers/static-retrieval-mrl-en-v1 (CPU,\n~7000 texts/sec). Removes the bring-your-own-encoder requirement\n-- agents can call memory_embed -> memory_upsert as a one-line\ntext-to-storage flow.","operationId":"embed_v1_memory_embed_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmbedRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmbedResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes":{"post":{"summary":"Create Index","operationId":"create_index_v1_indexes_post","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateIndexRequest"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IndexDescription"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"summary":"List Indexes","operationId":"list_indexes_v1_indexes_get","parameters":[{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IndexList"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}":{"get":{"summary":"Describe Index","operationId":"describe_index_v1_indexes__name__get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IndexDescription"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"summary":"Delete Index","operationId":"delete_index_v1_indexes__name__delete","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/vectors/upsert":{"post":{"summary":"Upsert","operationId":"upsert_v1_indexes__name__vectors_upsert_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/query":{"post":{"summary":"Query","operationId":"query_v1_indexes__name__query_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/text/upsert":{"post":{"summary":"Text Upsert","operationId":"text_upsert_v1_indexes__name__text_upsert_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TextUpsertRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/text/query":{"post":{"summary":"Text Query","operationId":"text_query_v1_indexes__name__text_query_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TextQueryRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/text/replace":{"post":{"summary":"Text Replace","description":"Re-encode `new_text` and overwrite the vector + metadata.text in one call.\n\nSurgical: the bipolar prefilter row, the float rerank vector, AND\nthe metadata are all updated atomically. Use for refactor tracking\nand any case where an existing memory's content needs to change.","operationId":"text_replace_v1_indexes__name__text_replace_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TextReplaceRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TextReplaceResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/roles/bind":{"post":{"summary":"Bind Role","operationId":"bind_role_v1_indexes__name__roles_bind_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BindRoleRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BindRoleResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/roles/read":{"post":{"summary":"Read Roles","operationId":"read_roles_v1_indexes__name__roles_read_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReadRolesRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReadRolesResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/vectors/delete":{"post":{"summary":"Delete","operationId":"delete_v1_indexes__name__vectors_delete_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Delete V1 Indexes  Name  Vectors Delete Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/timeline":{"get":{"summary":"Timeline","description":"Chronological scan of a vector index namespace by metadata.ts\ndescending. Records without a ts in their metadata are skipped (use\nthe Records substrate for universal timeline). Page back in time\nby passing until=<oldest_ts_from_prev_page>.","operationId":"timeline_v1_indexes__name__timeline_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string","default":"","title":"Namespace"}},{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Since"}},{"name":"until","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Until"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","default":50,"title":"Limit"}},{"name":"includeValues","in":"query","required":false,"schema":{"type":"boolean","default":false,"title":"Includevalues"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemoryTimelineResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/vectors/fetch":{"get":{"summary":"Fetch","operationId":"fetch_v1_indexes__name__vectors_fetch_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"ids","in":"query","required":true,"schema":{"type":"array","items":{"type":"string"},"description":"Vector ids. Pass either ?ids=a&ids=b&ids=c (repeated query-string) or ?ids=a,b,c (comma-separated). Both forms supported.","title":"Ids"},"description":"Vector ids. Pass either ?ids=a&ids=b&ids=c (repeated query-string) or ?ids=a,b,c (comma-separated). Both forms supported."},{"name":"namespace","in":"query","required":false,"schema":{"type":"string","default":"","title":"Namespace"}},{"name":"includeValues","in":"query","required":false,"schema":{"type":"boolean","description":"Include the raw D-dim float vector in the response. Default false (matches /query). Set true when you actually need the values; otherwise the metadata-only response is much smaller and cheaper to send to an LLM agent (D=1024 floats = ~10KB per vector).","default":false,"title":"Includevalues"},"description":"Include the raw D-dim float vector in the response. Default false (matches /query). Set true when you actually need the values; otherwise the metadata-only response is much smaller and cheaper to send to an LLM agent (D=1024 floats = ~10KB per vector)."},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FetchResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/vectors/update":{"post":{"summary":"Update","operationId":"update_v1_indexes__name__vectors_update_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Update V1 Indexes  Name  Vectors Update Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/export":{"get":{"summary":"Export Namespace","operationId":"export_namespace_v1_indexes__name__export_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string","default":"","title":"Namespace"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/import":{"post":{"summary":"Import Namespace","description":"Import an ``.nmm`` blob into a namespace.\n\nAccepts the raw blob as the request body\n(``Content-Type: application/octet-stream``). The blob must have\nbeen produced by the matching ``/v1/indexes/{name}/export``\nendpoint -- bit-exact round-trip is guaranteed for a given\nencoder.","operationId":"import_namespace_v1_indexes__name__import_post","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"namespace","in":"query","required":false,"schema":{"type":"string","default":"","title":"Namespace"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"title":"Response Import Namespace V1 Indexes  Name  Import Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/indexes/{name}/describe_index_stats":{"get":{"summary":"Describe Index Stats","operationId":"describe_index_stats_v1_indexes__name__describe_index_stats_get","parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","title":"Name"}},{"name":"Api-Key","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Api-Key"}},{"name":"authorization","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Authorization"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IndexStats"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"AgentAssociativeRecallRequest":{"properties":{"entity":{"type":"string","title":"Entity"},"kg":{"type":"string","title":"Kg"},"namespace":{"type":"string","title":"Namespace","default":"agent"},"relations":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Relations"},"cap":{"type":"integer","title":"Cap","default":24},"top_k":{"type":"integer","title":"Top K","default":6}},"type":"object","required":["entity","kg"],"title":"AgentAssociativeRecallRequest"},"AgentCausalQueryRequest":{"properties":{"scm":{"type":"string","title":"Scm"},"condition_var":{"type":"integer","title":"Condition Var"},"condition_value":{"type":"integer","title":"Condition Value"},"query_var":{"type":"integer","title":"Query Var"},"query_value":{"type":"integer","title":"Query Value"}},"type":"object","required":["scm","condition_var","condition_value","query_var","query_value"],"title":"AgentCausalQueryRequest","description":"Counterfactual / hypothetical reasoning over agent memory.\n\nBuilt on top of the Pearl do-operator (causal_intervention engine).\nPass a registered SCM name + a (condition_var, condition_value) +\na (query_var, query_value). Returns observational probability AND\ninterventional probability -- the gap is the formal causal answer.\n\n'What's the probability rain causes the sidewalk to be wet?' vs\n'What if I make the sidewalk wet -- does it cause rain?' are\narithmetically distinct. Zep cannot answer this. We can."},"AgentCausalQueryResponse":{"properties":{"scm":{"type":"string","title":"Scm"},"observation_prob":{"type":"number","title":"Observation Prob"},"intervention_prob":{"type":"number","title":"Intervention Prob"},"causal_gap":{"type":"number","title":"Causal Gap"},"n_worlds_observation":{"type":"integer","title":"N Worlds Observation"},"n_worlds_intervention":{"type":"integer","title":"N Worlds Intervention"}},"type":"object","required":["scm","observation_prob","intervention_prob","causal_gap","n_worlds_observation","n_worlds_intervention"],"title":"AgentCausalQueryResponse"},"AgentCheckConsistencyRequest":{"properties":{"kg":{"type":"string","title":"Kg"},"max_anomalies":{"type":"integer","title":"Max Anomalies","default":100}},"type":"object","required":["kg"],"title":"AgentCheckConsistencyRequest","description":"For Quorum KGs: scan every (subject, relation) pair across all\nshards. Anything where shards disagree (or one shard returns a\ndifferent object than the majority) is flagged as a potential\ncontradiction or adversarial injection. Returns a list of\nanomalies sorted by severity (full mismatch first, then partial)."},"AgentCheckConsistencyResponse":{"properties":{"kg":{"type":"string","title":"Kg"},"n_checked":{"type":"integer","title":"N Checked"},"n_anomalies":{"type":"integer","title":"N Anomalies"},"anomalies":{"items":{"$ref":"#/components/schemas/ConsistencyAnomaly"},"type":"array","title":"Anomalies"}},"type":"object","required":["kg","n_checked","n_anomalies","anomalies"],"title":"AgentCheckConsistencyResponse"},"AgentConsensusCheckRequest":{"properties":{"variables":{"items":{"type":"string"},"type":"array","title":"Variables"},"claims":{"items":{"$ref":"#/components/schemas/ConsensusClaim"},"type":"array","title":"Claims"},"domains":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Domains"},"value_pool":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Value Pool"},"all_distinct":{"type":"boolean","title":"All Distinct","default":false}},"type":"object","required":["variables","claims"],"title":"AgentConsensusCheckRequest","description":"Byzantine-robust collective consensus over agent-published algebraic\nclaims (swarm_consensus engine). N agents each publish a constraint over\nshared integer variables; some may be malicious. Deterministically (no LLM)\nDETECTS conflict, RECOVERS the honest solution by MaxSAT, and LOCALIZES the\nliar(s). Tolerates a Byzantine minority (f < n/2) given honest\nover-determination. See probes 353/354/355."},"AgentConsensusCheckResponse":{"properties":{"satisfiable":{"type":"boolean","title":"Satisfiable"},"conflict_detected":{"type":"boolean","title":"Conflict Detected"},"solution":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Solution"},"support":{"type":"integer","title":"Support"},"n_claims":{"type":"integer","title":"N Claims"},"outliers":{"items":{"type":"string"},"type":"array","title":"Outliers"},"ambiguous":{"type":"boolean","title":"Ambiguous"}},"type":"object","required":["satisfiable","conflict_detected","solution","support","n_claims","outliers","ambiguous"],"title":"AgentConsensusCheckResponse"},"AgentContextRequest":{"properties":{"question":{"type":"string","title":"Question"},"namespace":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Namespace"},"top_k":{"type":"integer","title":"Top K","default":10},"max_chars":{"type":"integer","title":"Max Chars","default":4000},"user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id"},"question_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Question Type","default":"auto"}},"type":"object","required":["question"],"title":"AgentContextRequest","description":"One-call context-block assembly: federated recall + markdown\nformatting. Budgeted by max_chars (LLM token cap approximation).\n\nquestion_type: optional override for the auto-classifier.\n  'auto' (default): regex heuristic picks one of below.\n  'temporal': fetches records_timeline (chronological, recent-first)\n              in addition to semantic recall.\n  'single_hop' / 'open_domain': default federated recall.\n  'multi_hop': boosts top_k + includes derived KG relations when\n               they exist (caller pre-computed via hd_kg_derive_relation).\n  'adversarial': low-threshold path (return less context so the\n                 model is more likely to abstain on unanswerable)."},"AgentContextResponse":{"properties":{"question":{"type":"string","title":"Question"},"context":{"type":"string","title":"Context"},"n_records_used":{"type":"integer","title":"N Records Used"},"n_kg_facts_used":{"type":"integer","title":"N Kg Facts Used"},"n_timeline_used":{"type":"integer","title":"N Timeline Used","default":0},"namespace":{"type":"string","title":"Namespace"},"truncated":{"type":"boolean","title":"Truncated"},"question_type":{"type":"string","title":"Question Type","default":"auto"}},"type":"object","required":["question","context","n_records_used","n_kg_facts_used","namespace","truncated"],"title":"AgentContextResponse"},"AgentContextTypedRequest":{"properties":{"question":{"type":"string","title":"Question"},"shape":{"items":{"$ref":"#/components/schemas/TypedFieldSpec"},"type":"array","title":"Shape"},"namespace":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Namespace"},"namespaces":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Namespaces"},"top_k":{"type":"integer","title":"Top K","default":16},"user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id"}},"type":"object","required":["question","shape"],"title":"AgentContextTypedRequest","description":"Federated retrieval + typed-shape extraction in one call.\n\nshape: ordered list of {name, type}. Each field is filled by a\n       deterministic per-field dispatcher (head-weighted token\n       matching + numeric proximity for int/float; top reranked\n       candidate for bool/string/list)."},"AgentContextTypedResponse":{"properties":{"question":{"type":"string","title":"Question"},"value":{"additionalProperties":true,"type":"object","title":"Value"},"cites":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","title":"Cites"},"confs":{"additionalProperties":{"type":"number"},"type":"object","title":"Confs"},"n_candidates":{"type":"integer","title":"N Candidates"}},"type":"object","required":["question","value","cites","confs","n_candidates"],"title":"AgentContextTypedResponse"},"AgentRecallKGFact":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"},"object":{"type":"string","title":"Object"},"confidence":{"type":"number","title":"Confidence"},"source":{"type":"string","title":"Source","default":"kg"}},"type":"object","required":["subject","relation","object","confidence"],"title":"AgentRecallKGFact"},"AgentRecallRecordHit":{"properties":{"id":{"type":"string","title":"Id"},"kind":{"type":"string","title":"Kind"},"text":{"type":"string","title":"Text"},"score":{"type":"number","title":"Score"},"tags":{"items":{"type":"string"},"type":"array","title":"Tags","default":[]},"ts":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ts"},"source":{"type":"string","title":"Source","default":"records"},"meta":{"additionalProperties":true,"type":"object","title":"Meta","default":{}}},"type":"object","required":["id","kind","text","score"],"title":"AgentRecallRecordHit"},"AgentRecallRequest":{"properties":{"query":{"type":"string","title":"Query"},"namespace":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Namespace"},"namespaces":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Namespaces"},"top_k":{"type":"integer","title":"Top K","default":10},"user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id"},"mode":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Mode"},"recency_first":{"type":"boolean","title":"Recency First","default":false}},"type":"object","required":["query"],"title":"AgentRecallRequest","description":"One-call federated query. Searches records semantically + scans\nKG by entity overlap with the query tokens.\n\nnamespace OR namespaces: pass one for single-session recall, or a\nlist to fan across multiple sessions (e.g., a user's last 10\nsessions for the cross-session graph-RAG narrative). namespaces\nwins if both are provided.\n\nmode:\n  None (default) -- pure semantic ranking by cosine score.\n  'qa_optimized' -- additionally BM25-fuse over the candidate pool\n                    via Reciprocal Rank Fusion (RRF). Worth ~+20pp\n                    on memory-QA benchmarks where the question\n                    contains specific entity tokens (brand names,\n                    amounts, dates) that semantic search alone\n                    under-weights.\n\nrecency_first:\n  False (default) -- semantic relevance ordering.\n  True -- after ranking, re-sort the returned records by ts desc\n          (newest first). Use for knowledge-update questions where\n          the most recent fact wins."},"AgentRecallResponse":{"properties":{"records":{"items":{"$ref":"#/components/schemas/AgentRecallRecordHit"},"type":"array","title":"Records","default":[]},"kg_facts":{"items":{"$ref":"#/components/schemas/AgentRecallKGFact"},"type":"array","title":"Kg Facts","default":[]},"record_namespace":{"type":"string","title":"Record Namespace"},"record_namespaces":{"items":{"type":"string"},"type":"array","title":"Record Namespaces","default":[]},"kg_namespace":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kg Namespace"},"total_hits":{"type":"integer","title":"Total Hits"}},"type":"object","required":["record_namespace","total_hits"],"title":"AgentRecallResponse"},"AgentRememberRequest":{"properties":{"text":{"type":"string","title":"Text"},"namespace":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Namespace"},"triples":{"anyOf":[{"items":{"items":{"type":"string"},"type":"array"},"type":"array"},{"type":"null"}],"title":"Triples"},"extract":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Extract","default":"off"},"tags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tags"},"kind":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kind"},"user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"User Id"},"meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"},"engine":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Engine"},"commit":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Commit","default":false}},"type":"object","required":["text"],"title":"AgentRememberRequest","description":"One-call agent memory write.\n\nAlways pushes a Records entry (typed event, semantic-searchable).\nKG binding happens via one of three paths:\n\nextract=\"off\" (default, 0.14.0 behavior, $0 to us):\n  No KG binding unless `triples=[...]` is passed explicitly. Caller\n  ran extraction in their own LLM turn or doesn't want KG facts.\n\nextract=\"byo\" + `triples=[...]`:\n  Same as \"off\" but explicit. Customer-extracted triples bound to KG.\n\nextract=\"managed\":\n  REMOVED 2026-05-20. Substrate no longer makes server-side LLM\n  calls (architectural decision: $0/call, no external dependency,\n  deterministic replay). Migration: run hd_kg_extraction_prompt\n  in your own LLM, pass the extracted triples=[[s,p,o],...] in\n  the same agent_remember call alongside extract='byo'."},"AgentRememberResponse":{"properties":{"record_id":{"type":"string","title":"Record Id"},"record_namespace":{"type":"string","title":"Record Namespace"},"kg_facts":{"items":{"items":{"type":"string"},"type":"array"},"type":"array","title":"Kg Facts","default":[]},"kg_namespace":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Kg Namespace"},"storage_used":{"items":{"type":"string"},"type":"array","title":"Storage Used"},"extract_mode":{"type":"string","title":"Extract Mode","default":"off"},"extract_latency_ms":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Extract Latency Ms"}},"type":"object","required":["record_id","record_namespace","storage_used"],"title":"AgentRememberResponse"},"AgentRestoreRequest":{"properties":{"snapshot_id":{"type":"string","title":"Snapshot Id"},"target_namespace":{"type":"string","title":"Target Namespace"}},"type":"object","required":["snapshot_id","target_namespace"],"title":"AgentRestoreRequest","description":"Restore a snapshot to a namespace (existing namespace is\nOVERWRITTEN). For audit/replay: read a historical state of any\nagent and run new queries against it."},"AgentRestoreResponse":{"properties":{"snapshot_id":{"type":"string","title":"Snapshot Id"},"target_namespace":{"type":"string","title":"Target Namespace"},"bytes":{"type":"integer","title":"Bytes"},"restored_at_ms":{"type":"integer","title":"Restored At Ms"}},"type":"object","required":["snapshot_id","target_namespace","bytes","restored_at_ms"],"title":"AgentRestoreResponse"},"AgentSnapshotRequest":{"properties":{"namespace":{"type":"string","title":"Namespace"},"snapshot_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Snapshot Id"},"note":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note"}},"type":"object","required":["namespace"],"title":"AgentSnapshotRequest","description":"Capture a namespace's complete state (Records + KG + SCM) as a\nportable .neruva container, write it to GCS under a snapshot_id,\nand return the id. Snapshots are immutable + provable: same input\nstate always produces a byte-identical blob (substrate is deterministic\nfrom seed). Pairs with agent_restore for full audit/replay.\n\nsnapshot_id: optional. Auto-generated as 'snap_<ulid>' if absent."},"AgentSnapshotResponse":{"properties":{"snapshot_id":{"type":"string","title":"Snapshot Id"},"namespace":{"type":"string","title":"Namespace"},"bytes":{"type":"integer","title":"Bytes"},"note":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note"},"timestamp_ms":{"type":"integer","title":"Timestamp Ms"}},"type":"object","required":["snapshot_id","namespace","bytes","timestamp_ms"],"title":"AgentSnapshotResponse"},"AnalogyRequest":{"properties":{"n_feat":{"type":"integer","maximum":20.0,"minimum":1.0,"title":"N Feat","description":"Number of binary attribute axes. Item space = 2^n_feat. Up to 20 (1M-item space). Encode-on-demand engine has constant memory; per-call latency ~3 ms regardless of n_feat."},"a":{"type":"integer","minimum":0.0,"title":"A","description":"Item index for A in A:B::C:?"},"b":{"type":"integer","minimum":0.0,"title":"B","description":"Item index for B in A:B::C:?"},"c":{"type":"integer","minimum":0.0,"title":"C","description":"Item index for C in A:B::C:?"},"seed":{"type":"integer","title":"Seed","description":"Determinism seed for the codebook.","default":4301}},"type":"object","required":["n_feat","a","b","c"],"title":"AnalogyRequest"},"AnalogyResponse":{"properties":{"candidate":{"type":"integer","title":"Candidate"},"candidate_bits":{"items":{"type":"integer"},"type":"array","title":"Candidate Bits"},"cosine":{"type":"number","title":"Cosine"},"runner_up":{"type":"number","title":"Runner Up"},"ambiguity":{"type":"number","title":"Ambiguity","description":"1 - margin; lower = sharper analogy answer."},"confidence":{"type":"number","title":"Confidence","description":"Engine confidence = margin = top - runner_up."}},"type":"object","required":["candidate","candidate_bits","cosine","runner_up","ambiguity","confidence"],"title":"AnalogyResponse"},"BindRoleRequest":{"properties":{"id":{"type":"string","title":"Id","description":"Vector id whose row gets the role bound"},"role":{"type":"string","title":"Role","description":"Role atom name (e.g. 'user', 'from_alice')"},"namespace":{"type":"string","title":"Namespace","default":""}},"type":"object","required":["id","role"],"title":"BindRoleRequest"},"BindRoleResponse":{"properties":{"bound":{"type":"integer","title":"Bound"},"role":{"type":"string","title":"Role"}},"type":"object","required":["bound","role"],"title":"BindRoleResponse"},"BlendQueryRequest":{"properties":{"n_attrs":{"type":"integer","minimum":2.0,"title":"N Attrs"},"n_roles":{"type":"integer","title":"N Roles","default":16},"role_parents":{"items":{"items":{},"type":"array"},"type":"array","title":"Role Parents"},"recover_role":{"type":"integer","title":"Recover Role"},"seed":{"type":"integer","title":"Seed","default":5701}},"type":"object","required":["n_attrs","role_parents","recover_role"],"title":"BlendQueryRequest","description":"Bundle N typed parents into one HD vector and recover any one\nparent unchanged. The role tag is what preserves provenance: even at\n99% shared attributes the per-parent Jaccard recovery is >= 0.99\n(probe 57). Stateless: codebook is deterministic in (n_attrs, seed)."},"BlendQueryResponse":{"properties":{"role":{"type":"integer","title":"Role"},"recovered_attrs":{"items":{"type":"integer"},"type":"array","title":"Recovered Attrs"},"jaccard_to_parent":{"type":"number","title":"Jaccard To Parent"},"n_parents":{"type":"integer","title":"N Parents"},"confidence":{"type":"number","title":"Confidence","description":"= jaccard_to_parent. Drops when total atoms in the blend exceeds ~sqrt(D)."}},"type":"object","required":["role","recovered_attrs","jaccard_to_parent","n_parents","confidence"],"title":"BlendQueryResponse"},"Body_import_neruva_v1_records__namespace__import_post":{"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream","title":"File","description":"A .neruva container file."}},"type":"object","required":["file"],"title":"Body_import_neruva_v1_records__namespace__import_post"},"BountyIn":{"properties":{"title":{"type":"string","maxLength":200,"minLength":8,"title":"Title"},"description":{"type":"string","maxLength":4000,"minLength":40,"title":"Description"},"task":{"type":"string","title":"Task","default":"other"},"reward_usd":{"type":"number","maximum":5000.0,"minimum":5.0,"title":"Reward Usd"},"examples":{"type":"string","maxLength":4000,"title":"Examples","default":""}},"type":"object","required":["title","description","reward_usd"],"title":"BountyIn"},"CBRAddEpisodesRequest":{"properties":{"cases":{"items":{"items":{"type":"integer"},"type":"array"},"type":"array","title":"Cases"},"labels":{"items":{"type":"integer"},"type":"array","title":"Labels"},"axis_vocab_names":{"anyOf":[{},{"type":"null"}],"title":"Axis Vocab Names","description":"Optional registry entries. Either a list of [axis_idx, vocab_id, name] triples or a nested dict. Populates cbr_vocab registry under key 'axis<N>__<name>'."}},"type":"object","required":["cases","labels"],"title":"CBRAddEpisodesRequest"},"CBRAddEpisodesResponse":{"properties":{"added":{"type":"integer","title":"Added"},"total_episodes":{"type":"integer","title":"Total Episodes"}},"type":"object","required":["added","total_episodes"],"title":"CBRAddEpisodesResponse"},"CBRCreateRequest":{"properties":{"n_axes":{"type":"integer","maximum":64.0,"minimum":1.0,"title":"N Axes"},"vocab":{"type":"integer","minimum":2.0,"title":"Vocab"},"n_labels":{"type":"integer","minimum":2.0,"title":"N Labels"},"seed":{"type":"integer","title":"Seed","default":4601}},"type":"object","required":["n_axes","vocab","n_labels"],"title":"CBRCreateRequest","description":"Initialize an episodic CBR store. Episodes are integer-coded cases\nover n_axes role-filler axes; labels are integer cluster ids in\n[0, n_labels). Probe 46: 99.1% novel-case retrieval acc at 10k\nepisodes, 617 us/query."},"CBRCreateResponse":{"properties":{"n_axes":{"type":"integer","title":"N Axes"},"vocab":{"type":"integer","title":"Vocab"},"n_labels":{"type":"integer","title":"N Labels"}},"type":"object","required":["n_axes","vocab","n_labels"],"title":"CBRCreateResponse"},"CBRQueryRequest":{"properties":{"case":{"items":{"type":"integer"},"type":"array","title":"Case"},"k":{"type":"integer","title":"K","default":15}},"type":"object","required":["case"],"title":"CBRQueryRequest"},"CBRQueryResponse":{"properties":{"predicted_label":{"type":"integer","title":"Predicted Label"},"neighbor_ids":{"items":{"type":"integer"},"type":"array","title":"Neighbor Ids"},"vote_margin":{"type":"number","title":"Vote Margin"},"n_episodes":{"type":"integer","title":"N Episodes"},"confidence":{"type":"number","title":"Confidence","description":"= vote_margin. High when cluster id unambiguous."}},"type":"object","required":["predicted_label","neighbor_ids","vote_margin","n_episodes","confidence"],"title":"CBRQueryResponse"},"CBRStatsResponse":{"properties":{"n_episodes":{"type":"integer","title":"N Episodes"},"n_axes":{"type":"integer","title":"N Axes"},"vocab":{"type":"integer","title":"Vocab"},"n_labels":{"type":"integer","title":"N Labels"}},"type":"object","required":["n_episodes","n_axes","vocab","n_labels"],"title":"CBRStatsResponse"},"CausalAddWorldsRequest":{"properties":{"n_vars":{"type":"integer","minimum":1.0,"title":"N Vars","description":"Number of variables."},"vocab_per_var":{"items":{"type":"integer"},"type":"array","title":"Vocab Per Var","description":"Cardinality of each variable."},"worlds":{"items":{"items":{"type":"integer"},"type":"array"},"type":"array","title":"Worlds","description":"Integer-coded worlds, shape (N, n_vars)."},"seed":{"type":"integer","title":"Seed","description":"Determinism seed.","default":4401},"var_names":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Var Names","description":"Text label for each variable. var_names[i] = label for var i. Populates scm_vars registry."}},"type":"object","required":["n_vars","vocab_per_var","worlds"],"title":"CausalAddWorldsRequest"},"CausalAddWorldsResponse":{"properties":{"total_worlds":{"type":"integer","title":"Total Worlds"},"n_vars":{"type":"integer","title":"N Vars"}},"type":"object","required":["total_worlds","n_vars"],"title":"CausalAddWorldsResponse"},"CausalQueryRequest":{"properties":{"query_type":{"type":"string","title":"Query Type","description":"'observation' or 'intervention'."},"condition_var":{"type":"integer","title":"Condition Var"},"condition_value":{"type":"integer","title":"Condition Value"},"query_var":{"type":"integer","title":"Query Var"},"query_value":{"type":"integer","title":"Query Value"}},"type":"object","required":["query_type","condition_var","condition_value","query_var","query_value"],"title":"CausalQueryRequest"},"CausalQueryResponse":{"properties":{"query_type":{"type":"string","title":"Query Type"},"probability":{"type":"number","title":"Probability"},"n_worlds_used":{"type":"integer","title":"N Worlds Used"},"confidence":{"type":"number","title":"Confidence","description":"Decisiveness of the readout: |p-0.5|*2. Not p-correctness."}},"type":"object","required":["query_type","probability","n_worlds_used","confidence"],"title":"CausalQueryResponse"},"Certificate":{"properties":{"code_sha256":{"type":"string","title":"Code Sha256"},"verdict":{"type":"string","title":"Verdict","default":"tested"},"origin":{"type":"string","title":"Origin","default":"ratchet"},"ts":{"type":"integer","title":"Ts","default":0},"tests_sha256":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Tests Sha256"},"checker_sha256":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Checker Sha256"},"evidence_sha256":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Evidence Sha256"},"onecall_sha256":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Onecall Sha256"},"purpose_sha256":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Purpose Sha256"},"signature":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signature"},"pubkey":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pubkey"},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"}},"type":"object","required":["code_sha256"],"title":"Certificate"},"Checker":{"properties":{"code":{"type":"string","maxLength":200000,"minLength":1,"title":"Code","description":"The checker source. It must expose check(path, spec) -> (ok, why)."},"language":{"type":"string","title":"Language","description":"What runs the checker, not the skill","default":"python"},"spoilers":{"items":{"type":"string"},"type":"array","title":"Spoilers","description":"Names of the near-misses it was shown to reject, e.g. total_written_as_a_value"},"gate":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Gate","description":"What the mutation gate found: reference_passes, spoilers_rejected, empty_rejected"}},"type":"object","required":["code"],"title":"Checker","description":"The exact program that proved the skill, and the evidence it is not vacuous.\n\n`spoilers` are deliberate near-misses that the checker MUST reject. They are the\ndifference between a checker and a formality: a checker that accepts a broken file\nproves nothing, and one that demands something the task never asked for invents a\nfailure that is not there. Both were observed while building this."},"ConsensusClaim":{"properties":{"source":{"type":"string","title":"Source"},"text":{"type":"string","title":"Text"}},"type":"object","required":["source","text"],"title":"ConsensusClaim"},"ConsistencyAnomaly":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"},"per_shard":{"items":{"items":{},"type":"array"},"type":"array","title":"Per Shard"},"majority_object":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Majority Object"},"n_agree":{"type":"integer","title":"N Agree"},"n_shards":{"type":"integer","title":"N Shards"},"severity":{"type":"string","title":"Severity"}},"type":"object","required":["subject","relation","per_shard","majority_object","n_agree","n_shards","severity"],"title":"ConsistencyAnomaly"},"ContextGetRequest":{"properties":{"sha256":{"type":"string","title":"Sha256"}},"type":"object","required":["sha256"],"title":"ContextGetRequest","description":"UNLISTED. Fetch a context blob by its SHA-256 content address. The\nserver re-hashes what it reads before returning — a corrupted object\nis a 500, never silently served."},"ContextGetResponse":{"properties":{"sha256":{"type":"string","title":"Sha256"},"data_b64":{"type":"string","title":"Data B64"},"bytes":{"type":"integer","title":"Bytes"}},"type":"object","required":["sha256","data_b64","bytes"],"title":"ContextGetResponse"},"ContextPutRequest":{"properties":{"data_b64":{"type":"string","title":"Data B64"},"sha256":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sha256"}},"type":"object","required":["data_b64"],"title":"ContextPutRequest","description":"UNLISTED (not on the MCP advertised surface). Store an immutable,\ncontent-addressed context blob: the address IS the SHA-256 of the bytes.\nThe server recomputes the hash on write — a caller-supplied `sha256`\nthat doesn't match the data is rejected, so the store can never hold a\nblob under a wrong address. Existing blobs are never overwritten\n(idempotent put). This is the storage half of replayable agent audit:\nan action record commits to context_hash; the auditor later fetches by\nthat hash and replays the decision byte-for-byte (verifier side lives\nin Cairn PCA)."},"ContextPutResponse":{"properties":{"sha256":{"type":"string","title":"Sha256"},"bytes":{"type":"integer","title":"Bytes"},"existed":{"type":"boolean","title":"Existed"}},"type":"object","required":["sha256","bytes","existed"],"title":"ContextPutResponse"},"ContinualPredictRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"continual"},"token_stream":{"items":{"type":"integer"},"type":"array","title":"Token Stream"}},"type":"object","required":["token_stream"],"title":"ContinualPredictRequest"},"ContinualPredictResponse":{"properties":{"predicted_tokens":{"items":{"type":"integer"},"type":"array","title":"Predicted Tokens"}},"type":"object","required":["predicted_tokens"],"title":"ContinualPredictResponse"},"ContinualTrainRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"continual"},"token_stream":{"items":{"type":"integer"},"type":"array","title":"Token Stream"},"vocab_size":{"type":"integer","title":"Vocab Size","default":200},"k":{"type":"integer","title":"K","default":2},"seed":{"type":"integer","title":"Seed","default":7000},"token_names":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Token Names","description":"Text label for each vocab id. token_names[i] = label for id i. Populates continual_vocab registry so federated recall can run predict_next on natural-language tokens."}},"type":"object","required":["token_stream"],"title":"ContinualTrainRequest"},"ContinualTrainResponse":{"properties":{"n_shards":{"type":"integer","title":"N Shards"},"storage_mb":{"type":"number","title":"Storage Mb"}},"type":"object","required":["n_shards","storage_mb"],"title":"ContinualTrainResponse"},"CounterfactualRolloutRequest":{"properties":{"initial_state":{"items":{"type":"integer"},"type":"array","title":"Initial State","description":"Factored state vector, one int per axis. Length MUST equal n_axes."},"action_seq":{"items":{"type":"integer"},"type":"array","title":"Action Seq","description":"Action ids encoded as axis*2 + dir where dir=0 (INC) or 1 (DEC). Valid range is [0, 2*n_axes) -- this is NOT n_values; n_values is the per-axis value range. Example: n_axes=3 -> action ids 0..5 (6 actions)."},"step_k":{"type":"integer","title":"Step K","description":"Index in action_seq to substitute (0-based)"},"alternate_action":{"type":"integer","title":"Alternate Action","description":"Substituted action id. Must be in [0, 2*n_axes)."},"n_axes":{"type":"integer","maximum":16.0,"minimum":1.0,"title":"N Axes","description":"Number of state axes.","default":3},"n_values":{"type":"integer","maximum":32.0,"minimum":2.0,"title":"N Values","description":"Per-axis value range (state values are clamped to [0, n_values)). NOT the action count.","default":8},"seed":{"type":"integer","title":"Seed","default":2047}},"type":"object","required":["initial_state","action_seq","step_k","alternate_action"],"title":"CounterfactualRolloutRequest"},"CounterfactualRolloutResponse":{"properties":{"final_state":{"items":{"type":"integer"},"type":"array","title":"Final State"}},"type":"object","required":["final_state"],"title":"CounterfactualRolloutResponse"},"CreateIndexRequest":{"properties":{"name":{"type":"string","title":"Name"},"dimension":{"type":"integer","title":"Dimension"},"metric":{"type":"string","title":"Metric","default":"cosine"},"spec":{"$ref":"#/components/schemas/IndexSpec","default":{"serverless":{"cloud":"gcp","region":"us-central1"}}}},"type":"object","required":["name","dimension"],"title":"CreateIndexRequest"},"DeleteRequest":{"properties":{"ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Ids"},"deleteAll":{"type":"boolean","title":"Deleteall","default":false},"namespace":{"type":"string","title":"Namespace","default":""},"filter":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Filter"}},"type":"object","title":"DeleteRequest"},"EmbedRequest":{"properties":{"texts":{"items":{"type":"string"},"type":"array","title":"Texts","description":"One or more texts to embed via the static-MRL D=1024 encoder."}},"type":"object","required":["texts"],"title":"EmbedRequest"},"EmbedResponse":{"properties":{"vectors":{"items":{"items":{"type":"number"},"type":"array"},"type":"array","title":"Vectors"},"dimension":{"type":"integer","title":"Dimension","default":1024},"model":{"type":"string","title":"Model","default":"sentence-transformers/static-retrieval-mrl-en-v1"}},"type":"object","required":["vectors"],"title":"EmbedResponse"},"ExtractSchemaRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"schema"},"role_filler_pairs":{"items":{"prefixItems":[{"type":"integer"},{"type":"integer"}],"type":"array","maxItems":2,"minItems":2},"type":"array","title":"Role Filler Pairs"},"n_roles":{"type":"integer","title":"N Roles","default":10},"n_fillers_per_role":{"type":"integer","title":"N Fillers Per Role","default":100},"seed":{"type":"integer","title":"Seed","default":2049}},"type":"object","required":["role_filler_pairs"],"title":"ExtractSchemaRequest"},"ExtractSchemaResponse":{"properties":{"signature":{"items":{"type":"number"},"type":"array","title":"Signature"},"inferred_role_indices":{"items":{"type":"integer"},"type":"array","title":"Inferred Role Indices","description":"Roles with signature score above noise threshold"}},"type":"object","required":["signature","inferred_role_indices"],"title":"ExtractSchemaResponse"},"FeeIn":{"properties":{"reference":{"type":"string","maxLength":120,"minLength":3,"title":"Reference"}},"type":"object","required":["reference"],"title":"FeeIn"},"FetchResponse":{"properties":{"vectors":{"additionalProperties":{"$ref":"#/components/schemas/FetchVector"},"type":"object","title":"Vectors"}},"type":"object","required":["vectors"],"title":"FetchResponse"},"FetchVector":{"properties":{"id":{"type":"string","title":"Id"},"values":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Values"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["id"],"title":"FetchVector","description":"Like Vector but with values optional, so /vectors/fetch can omit\nthe D-dim float payload when callers pass includeValues=false. Reuses\nQueryMatch's already-optional shape elsewhere."},"FollowOut":{"properties":{"handle":{"type":"string","title":"Handle"},"followers":{"type":"integer","title":"Followers"},"following_count":{"type":"integer","title":"Following Count"},"following":{"type":"boolean","title":"Following"}},"type":"object","required":["handle","followers","following_count","following"],"title":"FollowOut"},"FulfilIn":{"properties":{"rung_id":{"type":"string","title":"Rung Id"}},"type":"object","required":["rung_id"],"title":"FulfilIn"},"HDCBRDescribeResponse":{"properties":{"name":{"type":"string","title":"Name"},"n_axes":{"type":"integer","title":"N Axes"},"vocab":{"type":"integer","title":"Vocab"},"n_labels":{"type":"integer","title":"N Labels"},"n_episodes":{"type":"integer","title":"N Episodes"},"volatile":{"type":"boolean","title":"Volatile","default":true},"volatile_note":{"type":"string","title":"Volatile Note","default":"CBR state is in-memory only on this substrate version. Episodes are lost on Cloud Run instance rotation -- re-ingest on each session start, or use records_* + tags for persistent episodic memory. Tracked: v0.5.x roadmap."}},"type":"object","required":["name","n_axes","vocab","n_labels","n_episodes"],"title":"HDCBRDescribeResponse"},"HDKGDescribeResponse":{"properties":{"name":{"type":"string","title":"Name"},"engine":{"type":"string","title":"Engine"},"n_facts":{"type":"integer","title":"N Facts"},"n_active_relations":{"type":"integer","title":"N Active Relations"},"n_subjects":{"type":"integer","title":"N Subjects"},"relations":{"items":{"type":"string"},"type":"array","title":"Relations"},"derived_relations":{"items":{"type":"string"},"type":"array","title":"Derived Relations","default":[]}},"type":"object","required":["name","engine","n_facts","n_active_relations","n_subjects","relations"],"title":"HDKGDescribeResponse"},"HDResourceListItem":{"properties":{"name":{"type":"string","title":"Name"},"kind":{"type":"string","title":"Kind"}},"type":"object","required":["name","kind"],"title":"HDResourceListItem"},"HDResourceListResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/HDResourceListItem"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"}},"type":"object","required":["items","total"],"title":"HDResourceListResponse"},"HDSCMDescribeResponse":{"properties":{"name":{"type":"string","title":"Name"},"n_vars":{"type":"integer","title":"N Vars"},"vocab_per_var":{"items":{"type":"integer"},"type":"array","title":"Vocab Per Var"},"n_worlds":{"type":"integer","title":"N Worlds"}},"type":"object","required":["name","n_vars","vocab_per_var","n_worlds"],"title":"HDSCMDescribeResponse"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HandleIn":{"properties":{"handle":{"type":"string","maxLength":32,"minLength":3,"title":"Handle"}},"type":"object","required":["handle"],"title":"HandleIn"},"HierarchicalAddRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"hier"},"top_id":{"type":"string","title":"Top Id"},"leaf_ids":{"items":{"type":"integer"},"type":"array","title":"Leaf Ids"},"L":{"type":"integer","title":"L","default":4},"K":{"type":"integer","title":"K","default":5},"n_leaf_vocab":{"type":"integer","title":"N Leaf Vocab","default":1000},"seed":{"type":"integer","title":"Seed","default":2050}},"type":"object","required":["top_id","leaf_ids"],"title":"HierarchicalAddRequest"},"HierarchicalAddResponse":{"properties":{"n_trees":{"type":"integer","title":"N Trees"},"n_leaves":{"type":"integer","title":"N Leaves"}},"type":"object","required":["n_trees","n_leaves"],"title":"HierarchicalAddResponse"},"HierarchicalDecodeRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"hier"},"top_id":{"type":"string","title":"Top Id"},"path":{"items":{"type":"integer"},"type":"array","title":"Path","description":"Outer-to-inner position indices"}},"type":"object","required":["top_id","path"],"title":"HierarchicalDecodeRequest"},"HierarchicalDecodeResponse":{"properties":{"leaf_id":{"type":"integer","title":"Leaf Id"}},"type":"object","required":["leaf_id"],"title":"HierarchicalDecodeResponse"},"IndexDescription":{"properties":{"name":{"type":"string","title":"Name"},"dimension":{"type":"integer","title":"Dimension"},"metric":{"type":"string","title":"Metric"},"host":{"type":"string","title":"Host"},"spec":{"$ref":"#/components/schemas/IndexSpec"},"status":{"$ref":"#/components/schemas/IndexStatus","default":{"ready":true,"state":"Ready"}}},"type":"object","required":["name","dimension","metric","host","spec"],"title":"IndexDescription"},"IndexList":{"properties":{"indexes":{"items":{"$ref":"#/components/schemas/IndexDescription"},"type":"array","title":"Indexes","default":[]}},"type":"object","title":"IndexList"},"IndexSpec":{"properties":{"serverless":{"$ref":"#/components/schemas/ServerlessSpec","default":{"cloud":"gcp","region":"us-central1"}}},"type":"object","title":"IndexSpec"},"IndexStats":{"properties":{"dimension":{"type":"integer","title":"Dimension"},"indexFullness":{"type":"number","title":"Indexfullness","default":0.0},"namespaces":{"additionalProperties":{"$ref":"#/components/schemas/NamespaceStats"},"type":"object","title":"Namespaces","default":{}},"totalVectorCount":{"type":"integer","title":"Totalvectorcount","default":0}},"type":"object","required":["dimension"],"title":"IndexStats"},"IndexStatus":{"properties":{"ready":{"type":"boolean","title":"Ready","default":true},"state":{"type":"string","title":"State","default":"Ready"}},"type":"object","title":"IndexStatus"},"InduceRuleRequest":{"properties":{"xs":{"items":{"items":{"items":{"type":"integer"},"type":"array"},"type":"array"},"type":"array","title":"Xs","description":"Demo input grids; each is rows x cols of ints. The default engine is sized for 7x7 grids with 6 colors (values 0..5) -- inputs of other shapes will return a 400 with the broadcast error. xs[i] and ys[i] must be the same shape; all grids in xs should be the same shape as each other."},"ys":{"items":{"items":{"items":{"type":"integer"},"type":"array"},"type":"array"},"type":"array","title":"Ys","description":"Demo output grids; same shape as the matching xs grid."}},"type":"object","required":["xs","ys"],"title":"InduceRuleRequest"},"InduceRuleResponse":{"properties":{"rule_name":{"type":"string","title":"Rule Name"},"confidence":{"type":"number","title":"Confidence"}},"type":"object","required":["rule_name","confidence"],"title":"InduceRuleResponse"},"KGAddFactsRequest":{"properties":{"facts":{"items":{"$ref":"#/components/schemas/KGFact"},"type":"array","title":"Facts"},"engine":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Engine"},"idempotency_key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Idempotency Key"}},"type":"object","required":["facts"],"title":"KGAddFactsRequest"},"KGAddFactsResponse":{"properties":{"added":{"type":"integer","title":"Added"},"total_facts":{"type":"integer","title":"Total Facts"},"relations":{"type":"integer","title":"Relations"},"idempotent_replay":{"type":"boolean","title":"Idempotent Replay","default":false}},"type":"object","required":["added","total_facts","relations"],"title":"KGAddFactsResponse"},"KGAssignFeaturesRequest":{"properties":{"concept":{"type":"string","title":"Concept"},"feature_ids":{"items":{"type":"integer"},"type":"array","title":"Feature Ids"}},"type":"object","required":["concept","feature_ids"],"title":"KGAssignFeaturesRequest","description":"For engine='feature_bundle' KGs: assign a feature-id list to a concept.\nSame-category concepts SHOULD share most features (60-80% overlap) for\nstrong zero-shot generalization. Validated by probe 100p: 84% recall\non UNSEEN concepts vs 0% for random atoms."},"KGAssignFeaturesResponse":{"properties":{"concept":{"type":"string","title":"Concept"},"n_features":{"type":"integer","title":"N Features"}},"type":"object","required":["concept","n_features"],"title":"KGAssignFeaturesResponse"},"KGComposeRequest":{"properties":{"relation_a":{"type":"string","title":"Relation A"},"relation_b":{"type":"string","title":"Relation B"},"derived_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Derived Name"}},"type":"object","required":["relation_a","relation_b"],"title":"KGComposeRequest"},"KGComposeResponse":{"properties":{"derived_name":{"type":"string","title":"Derived Name"},"relation_a":{"type":"string","title":"Relation A"},"relation_b":{"type":"string","title":"Relation B"},"derived_relations":{"items":{"type":"string"},"type":"array","title":"Derived Relations"}},"type":"object","required":["derived_name","relation_a","relation_b","derived_relations"],"title":"KGComposeResponse"},"KGCompressRequest":{"properties":{"relation":{"type":"string","title":"Relation"},"rank":{"type":"integer","title":"Rank","default":64}},"type":"object","required":["relation"],"title":"KGCompressRequest","description":"For OPB-family KGs: SVD-truncate a relation shard to rank-r.\n32x storage compression at >=95% recall at small N (probe 100w).\nTrades a tiny recall hit for big memory savings on agent session KGs."},"KGCompressResponse":{"properties":{"relation":{"type":"string","title":"Relation"},"rank":{"type":"integer","title":"Rank"},"pre_bytes":{"type":"integer","title":"Pre Bytes"},"ideal_packed_bytes":{"type":"integer","title":"Ideal Packed Bytes"},"compression_ratio":{"type":"number","title":"Compression Ratio"}},"type":"object","required":["relation","rank","pre_bytes","ideal_packed_bytes","compression_ratio"],"title":"KGCompressResponse"},"KGContextRequest":{"properties":{"question":{"type":"string","title":"Question"},"top_k":{"type":"integer","title":"Top K","default":10},"format":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Format","default":"markdown"}},"type":"object","required":["question"],"title":"KGContextRequest","description":"Zep-equivalent customizable context block. Caller provides a\nnatural-language question; we retrieve top-K relevant facts via\ncosine + OPB-entity hybrid, then format as a context block ready\nfor direct LLM consumption."},"KGContextResponse":{"properties":{"question":{"type":"string","title":"Question"},"top_k":{"type":"integer","title":"Top K"},"context":{"type":"string","title":"Context"},"facts_used":{"items":{"items":{"type":"string"},"type":"array"},"type":"array","title":"Facts Used"},"retrieval_ms":{"type":"number","title":"Retrieval Ms"}},"type":"object","required":["question","top_k","context","facts_used","retrieval_ms"],"title":"KGContextResponse"},"KGDeleteFactsRequest":{"properties":{"facts":{"items":{"$ref":"#/components/schemas/KGFact"},"type":"array","title":"Facts"}},"type":"object","required":["facts"],"title":"KGDeleteFactsRequest"},"KGDeleteFactsResponse":{"properties":{"deleted":{"type":"integer","title":"Deleted"},"skipped":{"type":"integer","title":"Skipped"},"total_facts":{"type":"integer","title":"Total Facts"},"relations":{"type":"integer","title":"Relations"},"receipt":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Receipt"}},"type":"object","required":["deleted","skipped","total_facts","relations"],"title":"KGDeleteFactsResponse"},"KGDeriveRequest":{"properties":{"base_relation":{"type":"string","title":"Base Relation"},"n_hops":{"type":"integer","title":"N Hops"},"derived_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Derived Name"}},"type":"object","required":["base_relation","n_hops"],"title":"KGDeriveRequest"},"KGDeriveResponse":{"properties":{"derived_name":{"type":"string","title":"Derived Name"},"base_relation":{"type":"string","title":"Base Relation"},"n_hops":{"type":"integer","title":"N Hops"},"derived_relations":{"items":{"type":"string"},"type":"array","title":"Derived Relations"}},"type":"object","required":["derived_name","base_relation","n_hops","derived_relations"],"title":"KGDeriveResponse"},"KGExtractionPromptResponse":{"properties":{"prompt":{"type":"string","title":"Prompt"},"notes":{"type":"string","title":"Notes"}},"type":"object","required":["prompt","notes"],"title":"KGExtractionPromptResponse","description":"Canonical system prompt the caller's LLM should use to extract\n(subject, predicate, object) triples from raw text. Returned as a\nplain string so any agent can paste it into their model call."},"KGFact":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"},"object":{"type":"string","title":"Object"},"valid_from":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Valid From"},"valid_to":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Valid To"}},"type":"object","required":["subject","relation","object"],"title":"KGFact"},"KGForgetEntityRequest":{"properties":{"entity":{"type":"string","title":"Entity"}},"type":"object","required":["entity"],"title":"KGForgetEntityRequest"},"KGNeighborsRequest":{"properties":{"entity":{"type":"string","title":"Entity"},"relations":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Relations"},"cap":{"type":"integer","title":"Cap","default":64},"as_of":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"As Of"},"as_recorded":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"As Recorded"}},"type":"object","required":["entity"],"title":"KGNeighborsRequest"},"KGQueryRequest":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"},"retrieval":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Retrieval"},"as_of":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"As Of"},"as_recorded":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"As Recorded"}},"type":"object","required":["subject","relation"],"title":"KGQueryRequest"},"KGQueryResponse":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"},"object":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Object"},"confidence":{"type":"number","title":"Confidence"}},"type":"object","required":["subject","relation","object","confidence"],"title":"KGQueryResponse"},"KGQueryTopKCandidate":{"properties":{"object":{"type":"string","title":"Object"},"confidence":{"type":"number","title":"Confidence"}},"type":"object","required":["object","confidence"],"title":"KGQueryTopKCandidate"},"KGQueryTopKRequest":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"},"k":{"type":"integer","maximum":50.0,"minimum":1.0,"title":"K","default":5},"retrieval":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Retrieval"},"as_of":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"As Of"},"as_recorded":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"As Recorded"}},"type":"object","required":["subject","relation"],"title":"KGQueryTopKRequest","description":"Like query, but returns top-K candidates with confidences. Useful\nwhen callers need to detect 'runner-up close behind' (multi-fact\nsubject like Bob who knows both Alice and Carol) and not assume the\nsingle-bundle SNR ceiling collapsed it to one answer."},"KGQueryTopKResponse":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"},"candidates":{"items":{"$ref":"#/components/schemas/KGQueryTopKCandidate"},"type":"array","title":"Candidates"},"n_candidates":{"type":"integer","title":"N Candidates"}},"type":"object","required":["subject","relation","candidates","n_candidates"],"title":"KGQueryTopKResponse"},"KGQuorumAuditRequest":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"}},"type":"object","required":["subject","relation"],"title":"KGQuorumAuditRequest","description":"For engine='quorum' KGs: show per-shard answer for a fact so\ncallers can detect adversarial injection (any shard disagreeing\nwith the majority is suspicious)."},"KGQuorumAuditResponse":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"},"per_shard":{"items":{"items":{},"type":"array"},"type":"array","title":"Per Shard"},"majority_object":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Majority Object"},"n_agree":{"type":"integer","title":"N Agree"},"n_shards":{"type":"integer","title":"N Shards"},"is_unanimous":{"type":"boolean","title":"Is Unanimous"}},"type":"object","required":["subject","relation","per_shard","majority_object","n_agree","n_shards","is_unanimous"],"title":"KGQuorumAuditResponse"},"KGReplaceFactRequest":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"},"new_object":{"type":"string","title":"New Object"},"old_object":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Old Object"}},"type":"object","required":["subject","relation","new_object"],"title":"KGReplaceFactRequest","description":"Atomic 'this fact changed' op: delete (s, r, old_object) + add\n(s, r, new_object) in one call. Zep-style fact invalidation: when\n'Alice works at Acme' becomes 'Alice works at Beta', the older\nbinding gets cleanly subtracted and the new one bound.\n\nold_object: optional. If omitted, queries current state and uses\nwhatever's bound. If provided, must match current state (409 if\nnot -- prevents accidental overwrite of a value the caller didn't\nexpect)."},"KGReplaceFactResponse":{"properties":{"subject":{"type":"string","title":"Subject"},"relation":{"type":"string","title":"Relation"},"old_object":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Old Object"},"new_object":{"type":"string","title":"New Object"},"replaced":{"type":"boolean","title":"Replaced"},"receipt":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Receipt"}},"type":"object","required":["subject","relation","old_object","new_object","replaced"],"title":"KGReplaceFactResponse"},"KGStatsResponse":{"properties":{"n_subjects":{"type":"integer","title":"N Subjects"},"n_objects":{"type":"integer","title":"N Objects"},"relations":{"items":{"type":"string"},"type":"array","title":"Relations"}},"type":"object","required":["n_subjects","n_objects","relations"],"title":"KGStatsResponse"},"LikeOut":{"properties":{"rung_id":{"type":"string","title":"Rung Id"},"likes":{"type":"integer","title":"Likes"},"liked":{"type":"boolean","title":"Liked"}},"type":"object","required":["rung_id","likes","liked"],"title":"LikeOut"},"MemoryTimelineItem":{"properties":{"id":{"type":"string","title":"Id"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"},"values":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Values"}},"type":"object","required":["id"],"title":"MemoryTimelineItem"},"MemoryTimelineResponse":{"properties":{"items":{"items":{"$ref":"#/components/schemas/MemoryTimelineItem"},"type":"array","title":"Items"},"namespace":{"type":"string","title":"Namespace","default":""},"nextCursor":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Nextcursor"}},"type":"object","required":["items"],"title":"MemoryTimelineResponse"},"ModelBeliefAddRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"tom"},"chain":{"items":{"type":"integer"},"type":"array","title":"Chain","description":"Outer-to-inner person indices"},"prop":{"type":"integer","title":"Prop"},"val":{"type":"integer","title":"Val"},"n_people":{"type":"integer","title":"N People","default":10},"n_props":{"type":"integer","title":"N Props","default":50},"n_vals":{"type":"integer","title":"N Vals","default":20},"chain_names":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Chain Names","description":"Text labels for chain[] persons. Populates the tom_persons entity registry so agent_recall can resolve a natural-language query like 'what does Kai think about X' to this belief without callers needing to know atom ids."},"prop_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Prop Name","description":"Text label for `prop`. Populates tom_props registry."},"max_depth":{"type":"integer","title":"Max Depth","description":"Codebook ceiling for nested-belief chains. Effectively unlimited (1024) since v0.5.4 after the position-tagging bug fix made every chain index non-commutative. Depth has zero SNR cost; per-holder density follows a 1/sqrt(N) law that's auto-normalized at query time. Inner-position swaps now correctly reject -- A->B->C is distinct from A->C->B at any chain length (verified depth 50).","default":1024},"seed":{"type":"integer","title":"Seed","default":2048}},"type":"object","required":["chain","prop","val"],"title":"ModelBeliefAddRequest"},"ModelBeliefAddResponse":{"properties":{"n_beliefs":{"type":"integer","title":"N Beliefs"}},"type":"object","required":["n_beliefs"],"title":"ModelBeliefAddResponse"},"ModelBeliefQueryRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"tom"},"chain":{"items":{"type":"integer"},"type":"array","title":"Chain"},"prop":{"type":"integer","title":"Prop"}},"type":"object","required":["chain","prop"],"title":"ModelBeliefQueryRequest"},"ModelBeliefQueryResponse":{"properties":{"val":{"type":"integer","title":"Val"},"confidence":{"type":"number","title":"Confidence"}},"type":"object","required":["val","confidence"],"title":"ModelBeliefQueryResponse"},"NamespaceStats":{"properties":{"vectorCount":{"type":"integer","title":"Vectorcount"}},"type":"object","required":["vectorCount"],"title":"NamespaceStats"},"OneCall":{"properties":{"wrapper":{"type":"string","maxLength":100000,"minLength":1,"title":"Wrapper","description":"Source of build(**kwargs), defined below the helpers"},"schema":{"additionalProperties":true,"type":"object","title":"Schema","description":"JSON schema for the kwargs"},"example":{"additionalProperties":true,"type":"object","title":"Example","description":"One complete example call"}},"type":"object","required":["wrapper","schema"],"title":"OneCall","description":"One entry point plus an argument schema, so an executor emits JSON, not code.\n\nA skill is correct helper code, but a model calling it cold still has to get the\nsignatures right from the usage guide, and that is where it fails. With this, the\nonly thing it has to produce is an object matching `schema`."},"PIIDetectRequest":{"properties":{"text":{"type":"string","title":"Text"},"include_regex_baseline":{"type":"boolean","title":"Include Regex Baseline","default":true},"hd_threshold":{"type":"number","title":"Hd Threshold","default":0.8}},"type":"object","required":["text"],"title":"PIIDetectRequest"},"PIIDetectResponse":{"properties":{"n_tags":{"type":"integer","title":"N Tags"},"tags":{"items":{"$ref":"#/components/schemas/PIITagSpan"},"type":"array","title":"Tags"}},"type":"object","required":["n_tags","tags"],"title":"PIIDetectResponse"},"PIIRedactRequest":{"properties":{"text":{"type":"string","title":"Text"},"replacement_fmt":{"type":"string","title":"Replacement Fmt","default":"[REDACTED-{label}]"},"include_regex_baseline":{"type":"boolean","title":"Include Regex Baseline","default":true},"hd_threshold":{"type":"number","title":"Hd Threshold","default":0.8}},"type":"object","required":["text"],"title":"PIIRedactRequest"},"PIIRedactResponse":{"properties":{"redacted":{"type":"string","title":"Redacted"},"n_tags":{"type":"integer","title":"N Tags"}},"type":"object","required":["redacted","n_tags"],"title":"PIIRedactResponse"},"PIIRuleCreateRequest":{"properties":{"name":{"type":"string","title":"Name","description":"rule label; used as the tag for matches"},"examples":{"items":{"type":"string"},"type":"array","minItems":1,"title":"Examples"}},"type":"object","required":["name","examples"],"title":"PIIRuleCreateRequest","description":"Induce a tenant-scoped PII pattern rule from 1-N example strings.\nRecommended: 3-5 examples covering the natural variation in your\npattern. Returns immediately (induction is sub-ms)."},"PIIRuleListResponse":{"properties":{"rules":{"items":{"$ref":"#/components/schemas/PIIRuleSummary"},"type":"array","title":"Rules"}},"type":"object","required":["rules"],"title":"PIIRuleListResponse"},"PIIRuleSummary":{"properties":{"name":{"type":"string","title":"Name"},"n_examples":{"type":"integer","title":"N Examples"},"example":{"type":"string","title":"Example"},"min_len":{"type":"integer","title":"Min Len"},"max_len":{"type":"integer","title":"Max Len"},"n_literal_locked":{"type":"integer","title":"N Literal Locked"},"created_at_ms":{"type":"integer","title":"Created At Ms"},"updated_at_ms":{"type":"integer","title":"Updated At Ms","default":0}},"type":"object","required":["name","n_examples","example","min_len","max_len","n_literal_locked","created_at_ms"],"title":"PIIRuleSummary"},"PIITagSpan":{"properties":{"start":{"type":"integer","title":"Start"},"end":{"type":"integer","title":"End"},"label":{"type":"string","title":"Label"},"text":{"type":"string","title":"Text"}},"type":"object","required":["start","end","label","text"],"title":"PIITagSpan"},"PersistRuleRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"rules"},"rule_id":{"type":"string","title":"Rule Id"},"xs":{"items":{"items":{"items":{"type":"integer"},"type":"array"},"type":"array"},"type":"array","title":"Xs"},"ys":{"items":{"items":{"items":{"type":"integer"},"type":"array"},"type":"array"},"type":"array","title":"Ys"}},"type":"object","required":["rule_id","xs","ys"],"title":"PersistRuleRequest"},"PersistRuleResponse":{"properties":{"rule_name":{"type":"string","title":"Rule Name"},"confidence":{"type":"number","title":"Confidence"},"n_rules_stored":{"type":"integer","title":"N Rules Stored"}},"type":"object","required":["rule_name","confidence","n_rules_stored"],"title":"PersistRuleResponse"},"PlanEFERequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"planner"},"state":{"items":{"type":"integer"},"type":"array","title":"State","description":"Initial attr set (attr indices)"},"candidate_plans":{"items":{"items":{"type":"integer"},"type":"array"},"type":"array","title":"Candidate Plans","description":"List of action-id sequences to score"},"want_on":{"items":{"type":"integer"},"type":"array","title":"Want On"},"want_off":{"items":{"type":"integer"},"type":"array","title":"Want Off"},"p_on":{"type":"number","title":"P On","default":0.95},"p_off":{"type":"number","title":"P Off","default":0.05}},"type":"object","required":["state","candidate_plans"],"title":"PlanEFERequest"},"PlanEFEResponse":{"properties":{"best_plan_index":{"type":"integer","title":"Best Plan Index"},"best_kl":{"type":"number","title":"Best Kl"},"all_kls":{"items":{"type":"number"},"type":"array","title":"All Kls"}},"type":"object","required":["best_plan_index","best_kl","all_kls"],"title":"PlanEFEResponse"},"ProfileIn":{"properties":{"display_name":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Display Name"},"bio":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Bio"},"url":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Url"},"payout_link":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Payout Link"}},"type":"object","title":"ProfileIn"},"PurposeIn":{"properties":{"purpose":{"type":"string","maxLength":400,"minLength":3,"title":"Purpose"}},"type":"object","required":["purpose"],"title":"PurposeIn"},"QueryRequest":{"properties":{"vector":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Vector"},"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id"},"topK":{"type":"integer","title":"Topk","default":10},"namespace":{"type":"string","title":"Namespace","default":""},"filter":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Filter"},"includeValues":{"type":"boolean","title":"Includevalues","default":false},"includeMetadata":{"type":"boolean","title":"Includemetadata","default":false}},"type":"object","title":"QueryRequest"},"ReadRolesRequest":{"properties":{"id":{"type":"string","title":"Id","description":"Vector id of the row to introspect"},"queryVector":{"items":{"type":"number"},"type":"array","title":"Queryvector","description":"The original encoder vector for this row (D,) float32"},"roleDict":{"additionalProperties":{"items":{"type":"string"},"type":"array"},"type":"object","title":"Roledict","description":"Map of axis name -> candidate role names"},"known":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Known","description":"Already-known bound roles to subtract before testing"},"namespace":{"type":"string","title":"Namespace","default":""}},"type":"object","required":["id","queryVector","roleDict"],"title":"ReadRolesRequest"},"ReadRolesResponse":{"properties":{"roles":{"additionalProperties":{"items":{},"type":"array"},"type":"object","title":"Roles","description":"axis_name -> [best_role_name, score]"}},"type":"object","required":["roles"],"title":"ReadRolesResponse"},"RecallRuleRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"rules"},"rule_id":{"type":"string","title":"Rule Id"}},"type":"object","required":["rule_id"],"title":"RecallRuleRequest"},"RecallRuleResponse":{"properties":{"rule_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rule Name"},"confidence":{"type":"number","title":"Confidence"}},"type":"object","required":["rule_name","confidence"],"title":"RecallRuleResponse"},"Record":{"properties":{"id":{"type":"string","title":"Id"},"kind":{"type":"string","title":"Kind"},"tags":{"items":{"type":"string"},"type":"array","title":"Tags","default":[]},"ts":{"type":"integer","title":"Ts"},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text"},"meta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Meta"},"score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Score"}},"type":"object","required":["id","kind","ts"],"title":"Record"},"RecordBindTagRequest":{"properties":{"tag":{"type":"string","title":"Tag"}},"type":"object","required":["tag"],"title":"RecordBindTagRequest","description":"Append a single tag to an existing record's tags list (dedup).\nOther fields untouched. Companion to records_query tags filtering."},"RecordCompactRequest":{"properties":{"kind":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Kind"},"tagsAny":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tagsany"},"tagsAll":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tagsall"},"tsGte":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Tsgte"},"tsLt":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Tslt"},"userId":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Userid"},"summaryKind":{"type":"string","title":"Summarykind","description":"kind for the produced summary record (default 'summary').","default":"summary"},"maxChars":{"type":"integer","title":"Maxchars","description":"Max length of the synthesized summary text.","default":4000}},"type":"object","title":"RecordCompactRequest","description":"Compact a predicate-selected slice of records into a single summary\nrecord + tombstone the originals. V1 = deterministic extractive\nconsolidation (concatenated truncated texts, deduped tags, merged\nmeta). V2 will add LLM-summarization with bring-your-own-key."},"RecordCompactResponse":{"properties":{"summaryId":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summaryid"},"originalCount":{"type":"integer","title":"Originalcount"},"summary":{"anyOf":[{"$ref":"#/components/schemas/Record"},{"type":"null"}]}},"type":"object","required":["originalCount"],"title":"RecordCompactResponse"},"RecordForgetRequest":{"properties":{"kind":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Kind"},"tagsAny":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tagsany"},"tagsAll":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tagsall"},"tsGte":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Tsgte"},"tsLt":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Tslt"},"userId":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Userid","description":"GDPR sugar: forget all records for this end-user (records tagged ``user:<uid>``)."},"ids":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Ids"}},"type":"object","title":"RecordForgetRequest"},"RecordForgetResponse":{"properties":{"forgottenCount":{"type":"integer","title":"Forgottencount"},"receipt":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Receipt"}},"type":"object","required":["forgottenCount"],"title":"RecordForgetResponse"},"RecordIngestItem":{"properties":{"kind":{"type":"string","title":"Kind","description":"Event kind. See KNOWN_RECORD_KINDS for canonical values; any string accepted."},"text":{"type":"string","title":"Text","description":"Free text. Auto-embedded by the server."},"tags":{"items":{"type":"string"},"type":"array","title":"Tags","description":"Array of string tags. First-class -- typed filters use these."},"ts":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ts","description":"Unix epoch ms. Server fills in time.time()*1000 if absent."},"meta":{"additionalProperties":true,"type":"object","title":"Meta","description":"Free-form metadata. Not used for typed filters; recall via fetch. ONE RESERVED KEY: ``claim``. Records sharing a claim key are versions of one fact, and only the one with the greatest ``ts`` answers queries -- the rest are marked superseded, still stored and auditable but out of normal recall. The rule is applied on every write and is order-independent, so a late-arriving OLDER fact retires itself rather than clobbering a newer one, and no model is asked to judge freshness. Without a claim key, versions of a changing fact compete on cosine and recall sits at chance (measured 47.5% on a two-version conflict; 85.8% with a claim)."},"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id","description":"Optional caller-provided id. Server mints uuid4 hex if absent."},"ttlDays":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ttldays","description":"Optional auto-expire after N days."},"userId":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Userid","description":"Optional end-user id for multi-tenant products. Server auto-prepends ``user:<uid>`` to tags so the record can be queried/forgotten by user."}},"type":"object","required":["kind","text"],"title":"RecordIngestItem"},"RecordIngestRequest":{"properties":{"items":{"items":{"$ref":"#/components/schemas/RecordIngestItem"},"type":"array","title":"Items"},"sync":{"type":"boolean","title":"Sync","default":false}},"type":"object","required":["items"],"title":"RecordIngestRequest"},"RecordIngestResponse":{"properties":{"ids":{"items":{"type":"string"},"type":"array","title":"Ids"},"count":{"type":"integer","title":"Count"}},"type":"object","required":["ids","count"],"title":"RecordIngestResponse"},"RecordQueryRequest":{"properties":{"text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text","description":"Query text (auto-embedded). Omit for pure typed-filter scan ordered by ts desc."},"topK":{"type":"integer","title":"Topk","default":10},"kind":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Kind","description":"Restrict to these kinds."},"tagsAny":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tagsany","description":"Match if record.tags intersects this list."},"tagsAll":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Tagsall","description":"Match only if record.tags is a superset of this list."},"tsGte":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Tsgte"},"tsLt":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Tslt"},"userId":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Userid","description":"Restrict to records tagged ``user:<uid>``. Sugar over tagsAll."},"includeText":{"type":"boolean","title":"Includetext","default":true},"includeMeta":{"type":"boolean","title":"Includemeta","default":true},"includeSuperseded":{"type":"boolean","title":"Includesuperseded","description":"Include records retired by a newer holder of the same ``meta.claim`` key. Default False: a superseded fact stays stored and auditable but must not answer as if it were current. Set True to read the history of a claim.","default":false}},"additionalProperties":false,"type":"object","title":"RecordQueryRequest"},"RecordQueryResponse":{"properties":{"records":{"items":{"$ref":"#/components/schemas/Record"},"type":"array","title":"Records"},"namespace":{"type":"string","title":"Namespace","default":""}},"type":"object","required":["records"],"title":"RecordQueryResponse"},"RecordReplaceTextRequest":{"properties":{"newText":{"type":"string","title":"Newtext"}},"type":"object","required":["newText"],"title":"RecordReplaceTextRequest","description":"Atomic re-encode of an existing record's text. Other fields\n(tags / meta / kind / ts) are preserved."},"RecordStats":{"properties":{"namespace":{"type":"string","title":"Namespace","default":""},"recordCount":{"type":"integer","title":"Recordcount"},"byKind":{"additionalProperties":{"type":"integer"},"type":"object","title":"Bykind"},"oldestTs":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Oldestts"},"newestTs":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Newestts"}},"type":"object","required":["recordCount"],"title":"RecordStats"},"RecordTimelineResponse":{"properties":{"records":{"items":{"$ref":"#/components/schemas/Record"},"type":"array","title":"Records"},"namespace":{"type":"string","title":"Namespace","default":""},"nextCursor":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Nextcursor","description":"ts of the oldest record returned -- pass as ``until`` to page back."}},"type":"object","required":["records"],"title":"RecordTimelineResponse"},"RecordUpdateRequest":{"properties":{"text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text"},"setTags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Settags"},"addTags":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Addtags"},"setMeta":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Setmeta"},"setKind":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Setkind"}},"type":"object","title":"RecordUpdateRequest","description":"Partial update of an existing record. Any field omitted is left\nuntouched. set_tags REPLACES the tags list; add_tags APPENDS (dedup)\nto it. Both may be combined; set_tags is applied first."},"RegisterActionRequest":{"properties":{"tenant_id":{"type":"string","title":"Tenant Id","default":"default"},"namespace":{"type":"string","title":"Namespace","default":"planner"},"action_id":{"type":"integer","title":"Action Id"},"add_effects":{"additionalProperties":{"type":"number"},"type":"object","title":"Add Effects","description":"{attr_idx: P(added)}"},"del_effects":{"additionalProperties":{"type":"number"},"type":"object","title":"Del Effects","description":"{attr_idx: P(removed)}"},"n_attrs":{"type":"integer","title":"N Attrs","default":100},"seed":{"type":"integer","title":"Seed","default":6001}},"type":"object","required":["action_id"],"title":"RegisterActionRequest"},"RegisterActionResponse":{"properties":{"n_actions_registered":{"type":"integer","title":"N Actions Registered"}},"type":"object","required":["n_actions_registered"],"title":"RegisterActionResponse"},"Rung":{"properties":{"task":{"type":"string","title":"Task","default":"other"},"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"skill":{"type":"string","title":"Skill"},"language":{"type":"string","title":"Language"},"description":{"type":"string","title":"Description"},"entry_points":{"items":{"type":"string"},"type":"array","title":"Entry Points"},"evidence":{"items":{"type":"string"},"type":"array","title":"Evidence"},"code_sha256":{"type":"string","title":"Code Sha256"},"signed":{"type":"boolean","title":"Signed"},"owner":{"type":"string","title":"Owner"},"ts":{"type":"integer","title":"Ts"},"purpose":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Purpose"},"score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Score"},"code":{"type":"string","title":"Code"},"doc":{"type":"string","title":"Doc"},"deps":{"items":{"type":"string"},"type":"array","title":"Deps"},"tags":{"items":{"type":"string"},"type":"array","title":"Tags"},"cert":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Cert"},"onecall":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Onecall"},"checker":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Checker"},"files":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"Files","default":[]}},"type":"object","required":["id","name","skill","language","description","entry_points","evidence","code_sha256","signed","owner","ts","code","doc","deps","tags"],"title":"Rung"},"RungIn":{"properties":{"task":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task"},"name":{"type":"string","maxLength":120,"minLength":1,"title":"Name"},"skill":{"type":"string","title":"Skill","description":"Skill or domain this serves, e.g. docx, pptx, alfworld"},"language":{"type":"string","title":"Language","description":"python | javascript | ...","default":"python"},"description":{"type":"string","maxLength":2000,"minLength":1,"title":"Description"},"code":{"type":"string","maxLength":400000,"minLength":1,"title":"Code"},"doc":{"type":"string","maxLength":40000,"title":"Doc","description":"Usage guide for the executor","default":""},"evidence":{"items":{"type":"string"},"type":"array","title":"Evidence","description":"Measured rows, corpus named"},"deps":{"items":{"type":"string"},"type":"array","title":"Deps"},"entry_points":{"items":{"type":"string"},"type":"array","title":"Entry Points"},"tags":{"items":{"type":"string"},"type":"array","title":"Tags"},"purpose":{"anyOf":[{"type":"string","maxLength":400},{"type":"null"}],"title":"Purpose","description":"One plain sentence saying what this is for, in the words someone would use when they need it. No formats, standards or function names."},"onecall":{"anyOf":[{"$ref":"#/components/schemas/OneCall"},{"type":"null"}]},"checker":{"anyOf":[{"$ref":"#/components/schemas/Checker"},{"type":"null"}]},"cert":{"anyOf":[{"$ref":"#/components/schemas/Certificate"},{"type":"null"}]}},"type":"object","required":["name","skill","description","code"],"title":"RungIn"},"RungSummary":{"properties":{"task":{"type":"string","title":"Task","default":"other"},"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"skill":{"type":"string","title":"Skill"},"language":{"type":"string","title":"Language"},"description":{"type":"string","title":"Description"},"entry_points":{"items":{"type":"string"},"type":"array","title":"Entry Points"},"evidence":{"items":{"type":"string"},"type":"array","title":"Evidence"},"code_sha256":{"type":"string","title":"Code Sha256"},"signed":{"type":"boolean","title":"Signed"},"owner":{"type":"string","title":"Owner"},"ts":{"type":"integer","title":"Ts"},"purpose":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Purpose"},"score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Score"}},"type":"object","required":["id","name","skill","language","description","entry_points","evidence","code_sha256","signed","owner","ts"],"title":"RungSummary"},"SearchResponse":{"properties":{"skills":{"items":{"$ref":"#/components/schemas/RungSummary"},"type":"array","title":"Skills","default":[]},"rungs":{"items":{"$ref":"#/components/schemas/RungSummary"},"type":"array","title":"Rungs","default":[]}},"type":"object","title":"SearchResponse","description":"`skills` is the name. `rungs` is the same list under the word we used while building\nthis, kept so anything already reading it does not break, and never documented again."},"ServerlessSpec":{"properties":{"cloud":{"type":"string","title":"Cloud","default":"gcp"},"region":{"type":"string","title":"Region","default":"us-central1"}},"type":"object","title":"ServerlessSpec"},"SettleIn":{"properties":{"status":{"type":"string","title":"Status","default":"paid"}},"type":"object","title":"SettleIn"},"TextItem":{"properties":{"id":{"type":"string","title":"Id"},"text":{"type":"string","title":"Text"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["id","text"],"title":"TextItem"},"TextQueryRequest":{"properties":{"text":{"type":"string","title":"Text"},"namespace":{"type":"string","title":"Namespace","default":""},"topK":{"type":"integer","title":"Topk","default":10},"filter":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Filter"},"includeValues":{"type":"boolean","title":"Includevalues","default":false},"includeMetadata":{"type":"boolean","title":"Includemetadata","default":true}},"type":"object","required":["text"],"title":"TextQueryRequest"},"TextReplaceRequest":{"properties":{"id":{"type":"string","title":"Id","description":"Vector id to replace"},"newText":{"type":"string","title":"Newtext","description":"New text; replaces both the encoded vector and metadata.text"},"namespace":{"type":"string","title":"Namespace","default":""}},"type":"object","required":["id","newText"],"title":"TextReplaceRequest"},"TextReplaceResponse":{"properties":{"replaced":{"type":"boolean","title":"Replaced"}},"type":"object","required":["replaced"],"title":"TextReplaceResponse"},"TextUpsertRequest":{"properties":{"items":{"items":{"$ref":"#/components/schemas/TextItem"},"type":"array","title":"Items"},"namespace":{"type":"string","title":"Namespace","default":""}},"type":"object","required":["items"],"title":"TextUpsertRequest"},"TypedFieldSpec":{"properties":{"name":{"type":"string","title":"Name"},"type":{"type":"string","title":"Type","description":"bool | int | float | string | list"}},"type":"object","required":["name","type"],"title":"TypedFieldSpec"},"UpdateRequest":{"properties":{"id":{"type":"string","title":"Id"},"values":{"anyOf":[{"items":{"type":"number"},"type":"array"},{"type":"null"}],"title":"Values"},"setMetadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Setmetadata"},"namespace":{"type":"string","title":"Namespace","default":""}},"type":"object","required":["id"],"title":"UpdateRequest"},"UpsertRequest":{"properties":{"vectors":{"items":{"$ref":"#/components/schemas/Vector"},"type":"array","title":"Vectors"},"namespace":{"type":"string","title":"Namespace","default":""}},"type":"object","required":["vectors"],"title":"UpsertRequest"},"UpsertResponse":{"properties":{"upsertedCount":{"type":"integer","title":"Upsertedcount"}},"type":"object","required":["upsertedCount"],"title":"UpsertResponse"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"Vector":{"properties":{"id":{"type":"string","title":"Id"},"values":{"items":{"type":"number"},"type":"array","title":"Values"},"metadata":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Metadata"}},"type":"object","required":["id","values"],"title":"Vector"},"VerifyRequest":{"properties":{"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id"},"code":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Code"},"cert":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Cert"}},"type":"object","title":"VerifyRequest"},"VerifyResponse":{"properties":{"code_hash_matches":{"type":"boolean","title":"Code Hash Matches"},"signature":{"type":"string","title":"Signature","description":"valid | invalid | unsigned | unverifiable"},"pubkey":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pubkey"},"detail":{"type":"string","title":"Detail","default":""},"covers":{"additionalProperties":true,"type":"object","title":"Covers"}},"type":"object","required":["code_hash_matches","signature"],"title":"VerifyResponse"}}}}