# Rust `Method` variants intentionally NOT bound in the thin epistemic_graph
# Python client (see tests/test_protocol_parity.py). Each line is a variant name.
# A variant belongs here only if it is reached some other way (e.g. GetTriples
# is issued from agent-utilities' SPARQL fast path, not this client) or is an
# engine-internal/maintenance op. Adding a NEW Method variant forces a choice:
# bind it in client.py, or add it here with a reason — the gate fails otherwise.
CompactNodesByType
DiffAgainst
Fork
GetTriples
# Distributed graph compute (CONCEPT:KG-2.227, `compute-dist` feature, cluster tier):
# cross-shard Pregel + the materialized-view lifecycle. These are cluster-orchestrated
# server ops driven by the engine's multi-Raft coordinator, not the thin client's
# nodes/edges/graph API; bind them here until a Python distributed-compute sub-client
# is added.
DistributedCompute
CreateMatView
GetMatView
RefreshMatView
# Plan-backed materialized views (CONCEPT:EG-KG.storage.plan-backed-matview, handoff-1
# Lane C, `matview` feature ⇒ cluster tier): a NAMED durable `wire::Plan` over one graph
# executed once + cached, invalidated off the CDC stream. Server-side lifecycle driven by
# the matview manager (src/server/matview/), NOT the thin nodes/edges/graph client —
# the plan-backed generalization of the CreateMatView/GetMatView/RefreshMatView trio
# above; bind here until a Python distributed-compute / matview sub-client is added.
PlanMatViewDefine
PlanMatViewGet
PlanMatViewRefresh
PlanMatViewDrop
# WASM-sandboxed UDF surface (CONCEPT:KG-2.228, `wasm-udf` feature): an agent pushes a
# sandboxed compute module (RegisterUdf) and runs it (RunUdf) — also reached via the
# eg-plan `Op::Udf` inside a unified query. Engine-side capability surface, not the
# thin nodes/edges/graph client; bind here until a Python UDF sub-client is added.
RegisterUdf
RunUdf
# Engine-level security (CONCEPT:KG-2.231, `security` feature): AuditVerify walks a
# graph's hash-chained tamper-evident audit log and reports OK or the first break. It
# is an engine-side maintenance/forensic op routed through dispatch (the audit
# subsystem), not a nodes/edges/graph client call; bind here until a Python security
# sub-client is added.
AuditVerify
# Generic namespaced Key→Value surface (CONCEPT:EG-022, `kv` feature): a drop-in KV
# store keyed by (namespace, key) layered over the same durable redb substrate, NOT
# graph-scoped. It is an engine-side substrate surface (like the Blob*/Ts* ops), not a
# nodes/edges/graph client call, and has no Python consumer yet; bind here until a
# Python KV sub-client + a live caller exist (Wire-First — no speculative binding).
KvGet
KvPut
KvDelete
KvScan
KvCas
# Runtime SWRL/Datalog custom-rule reasoning (CONCEPT:EG-021/EG-023, `rdf` feature):
# a parameterised rule-reasoning request over the graph view. Read-only engine-side
# reasoning op with no Python consumer yet (the bound RDF surface covers add/remove/
# get/sparql/owl); bind here until a live caller exists (Wire-First).
RunRules

# --- Wave 18-22 engine ops served via wire adapters / HTTP surfaces, not the thin Python client ---
# NOTE: broker/streams (EG-275..284/314), NL->query (EG-080), RBAC admin (EG-092), and
# backup/restore (EG-090) were BOUND by B1.7 (CONCEPT:EG-328) into the thin Python client
# (client.broker.* / client.query.nl_query / client.rbac.* / client.admin.*), so they are
# NO LONGER listed here — they now have a Python sender. See docs/interfaces/clients.md.

# SHACL/ShEx validation (CONCEPT:EG-132/133): reached via the RDF/SPARQL surface.
ShaclValidate
ShexValidate
# X5-enforce write-time ICV policy registration (CONCEPT:EG-KG.ontology.rdf-update-guard):
# the write-time counterpart of ShaclValidate above, reached the SAME way — the SHACL
# shapes payload is emitted by agent-utilities' connector-manifest compiler (alongside
# its RLS/ABAC policy output) and registered directly, not through this thin
# nodes/edges/graph client. Bind here until a Python RDF/ICV sub-client is added.
IcvConfigure

# --- EG-318 agent-memory / scene-graph / trajectory + CEP wire ops (deferred to B3.16 / B3.14) ---
# These expose eg-core LIBRARY primitives over the wire (hierarchical summaries EG-220,
# episodic->semantic consolidation EG-221, decay/reinforce/evict maintenance EG-222, the 3D
# scene-graph EG-087, action/policy trajectory memory EG-099) plus the live-CEP subscription
# surface. They landed in Program B as engine Methods but have NO Python consumer yet — B1.7's
# scope was broker/streams/NL/RBAC/backup. Per the Wire-First rule (no speculative binding), they
# are baselined here until their MCP/wire surface + a live caller land (roadmap B3.16 / B3.14);
# bind them in client.py then. Agent-memory / summaries (EG-220/221/222):
CreateSummaryNode
SummariesAtLevel
SummaryChildren
Consolidate
DecayMemories
DecayNode
EvictBelow
Maintain
Reinforce
# 3D scene-graph (EG-087):
AddSceneObject
SetPose
Reparent
SceneChildren
WorldTransform
# Action/policy trajectory memory (EG-099):
StartTrajectory
AppendStep
BestTrajectory
DiscountedReturn
# Live complex-event-processing subscription surface (B3.14):
CepSubscribe
CepUnsubscribe
CepPoll
