Add checked workspace-interface query roots
Implement scoped interface extents across QX, generated bindings, SDK, Orch, Camino and browser queries. Preserve native projection, aggregation, pagination and watch invalidation without synthetic persisted objects. Validate exact query grants and scope freshness on execution and replay. Add local PostgreSQL, transport, browser and code-generation coverage. C1 implementation slice only: full-text indexes and Studio search adoption (C2/C3) remain tracked in the implementation handoff. No publication or deployment.
This commit is contained in:
@@ -286,6 +286,15 @@ message QueryReadBinding {
|
||||
Cardinality cardinality = 13;
|
||||
string key_type = 14;
|
||||
}
|
||||
// Checked schema survives even when no atom currently implements an interface.
|
||||
message QueryFieldContract {
|
||||
string interface_revision_id = 1;
|
||||
string member_id = 2;
|
||||
string field_name = 3;
|
||||
string value_type_json = 4;
|
||||
Cardinality cardinality = 5;
|
||||
string key_type = 6;
|
||||
}
|
||||
message QueryBudgets {
|
||||
uint32 rows = 1;
|
||||
uint32 depth = 2;
|
||||
@@ -299,7 +308,10 @@ message InstalledQuery {
|
||||
string id = 1;
|
||||
string definition_digest = 2;
|
||||
string binding_digest = 3;
|
||||
string root_interface_revision_id = 4;
|
||||
oneof root {
|
||||
string object_interface = 4;
|
||||
string workspace_interface = 14;
|
||||
}
|
||||
repeated QuerySelection selection = 5;
|
||||
repeated QueryReadBinding bindings = 6;
|
||||
QueryBudgets budgets = 7;
|
||||
@@ -309,4 +321,6 @@ message InstalledQuery {
|
||||
bool watch = 11;
|
||||
uint32 polling_interval_ms = 12;
|
||||
bool rpc_predicate_or_order = 13;
|
||||
repeated string root_atom_ids = 15;
|
||||
repeated QueryFieldContract fields = 16;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user