Add Camino edge materialization protocol

This commit is contained in:
Timothy J. Aveni
2026-07-15 07:52:07 -07:00
parent ea153c3cd7
commit cd35e03b2d
6 changed files with 155 additions and 20 deletions
+12
View File
@@ -14,6 +14,7 @@ service CaminoService {
rpc SetField(SetFieldRequest) returns (SetFieldResponse);
rpc AddEdge(AddEdgeRequest) returns (AddEdgeResponse);
rpc ListEdges(ListEdgesRequest) returns (ListEdgesResponse);
rpc ResolveEdge(ResolveEdgeRequest) returns (ResolveEdgeResponse);
rpc RemoveEdge(RemoveEdgeRequest) returns (RemoveEdgeResponse);
rpc ListOps(ListOpsRequest) returns (ListOpsResponse);
rpc WatchObject(WatchObjectRequest) returns (stream WatchObjectEvent);
@@ -145,6 +146,17 @@ message ListEdgesResponse {
repeated CaminoEdge edges = 1;
}
message ResolveEdgeRequest {
string object_id = 1;
string projection = 2;
}
message ResolveEdgeResponse {
repeated CaminoEdge edges = 1;
CaminoObject materialized_object = 2;
bool created = 3;
}
message RemoveEdgeRequest {
string edge_id = 1;
}
+6
View File
@@ -73,6 +73,12 @@ message EdgeEndpointOptions {
string projection = 3;
Cardinality cardinality = 4;
bool indexed = 5;
EdgeMaterializationOptions materialize = 6;
}
message EdgeMaterializationOptions {
SymbolRef class = 1;
string connect_projection = 2;
}
message MethodOptions {
+6
View File
@@ -169,6 +169,12 @@ message EdgeEndpointSchema {
string projection = 3;
Cardinality cardinality = 4;
bool indexed = 5;
EdgeMaterialization materialize = 6;
}
message EdgeMaterialization {
SymbolRef class = 1;
string connect_projection = 2;
}
message MethodSchema {