@corca-org/ceal-host-linux-arm64 1.0.14 → 1.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -54,7 +54,6 @@ var client_wire_contract_default = {
54
54
  length: 72,
55
55
  pattern: "^catalog:[a-f0-9]{64}$"
56
56
  },
57
- max_bytes: 4194304,
58
57
  envelope_max_bytes: 389
59
58
  },
60
59
  command_request: {
@@ -135,14 +134,13 @@ var client_wire_contract_default = {
135
134
  "prompt"
136
135
  ],
137
136
  discovery_command: "discovery",
138
- discovery_manifest_schema_version: "ceal.discovery_manifest.v2",
137
+ discovery_manifest_schema_version: "ceal.discovery_manifest.v1",
139
138
  discovery_manifest_document_fields: [
140
139
  "discovery_manifest"
141
140
  ],
142
141
  exit_code_max: 125,
143
142
  bare_document_max_bytes: 65536,
144
- complete_max_bytes: 66019,
145
- absolute_transport_max_bytes: 4194304
143
+ complete_max_bytes: 66019
146
144
  },
147
145
  resource_stream: {
148
146
  path: "/api/ceal/v2/resources",
@@ -157,6 +155,9 @@ var client_wire_contract_default = {
157
155
  "fetch"
158
156
  ],
159
157
  ref_flag: "--ref"
158
+ },
159
+ encoded_json_document: {
160
+ max_bytes: 4194304
160
161
  }
161
162
  };
162
163
 
@@ -166,6 +167,7 @@ var commandResolution = CEAL_CLIENT_WIRE_CONTRACT.command_resolution;
166
167
  var commandResolutionAuthority = commandResolution.authority;
167
168
  var commandResolutionSemanticOptions = commandResolution.semantic_options;
168
169
  var CEAL_GATEWAY_COMMAND_RESOLUTION_SCHEMA_VERSION = commandResolution.schema_version;
170
+ var CEAL_ENCODED_JSON_DOCUMENT_MAX_BYTES = CEAL_CLIENT_WIRE_CONTRACT.encoded_json_document.max_bytes;
169
171
  var artifact = CEAL_CLIENT_WIRE_CONTRACT.artifact_descriptor;
170
172
  var request = CEAL_CLIENT_WIRE_CONTRACT.command_request;
171
173
  var response = CEAL_CLIENT_WIRE_CONTRACT.command_response;
@@ -179,7 +181,7 @@ var CEAL_VERIFIED_ARTIFACT_DIGEST_LENGTH = artifact.digest.length;
179
181
  var CEAL_VERIFIED_ARTIFACT_DIGEST_PATTERN = artifact.digest.pattern;
180
182
  var CEAL_VERIFIED_ARTIFACT_CATALOG_REVISION_LENGTH = artifact.catalog_revision.length;
181
183
  var CEAL_VERIFIED_ARTIFACT_CATALOG_REVISION_PATTERN = artifact.catalog_revision.pattern;
182
- var CEAL_VERIFIED_ARTIFACT_MAX_BYTES = artifact.max_bytes;
184
+ var CEAL_VERIFIED_ARTIFACT_MAX_BYTES = CEAL_ENCODED_JSON_DOCUMENT_MAX_BYTES;
183
185
  var CEAL_VERIFIED_ARTIFACT_DESCRIPTOR_MAX_BYTES = artifact.envelope_max_bytes;
184
186
  var CEAL_COMMAND_REQUEST_SCHEMA_VERSION = request.schema_version;
185
187
  var CEAL_COMMAND_REQUEST_MAX_BYTES = request.absolute_transport_max_bytes;
@@ -193,7 +195,6 @@ var CEAL_COMMAND_RESPONSE_FOCUSED_PROMPT_CONTINUATION_DOCUMENT_FIELDS = Object.f
193
195
  var CEAL_COMMAND_RESPONSE_DISCOVERY_COMMAND = response.discovery_command;
194
196
  var CEAL_COMMAND_RESPONSE_DISCOVERY_MANIFEST_SCHEMA_VERSION = response.discovery_manifest_schema_version;
195
197
  var CEAL_COMMAND_RESPONSE_DISCOVERY_MANIFEST_DOCUMENT_FIELDS = Object.freeze([...response.discovery_manifest_document_fields]);
196
- var CEAL_COMMAND_RESPONSE_MAX_BYTES = response.absolute_transport_max_bytes;
197
198
 
198
199
  // packages/ceal-client-protocol/src/vocabulary.ts
199
200
  function vocabulary(words) {
@@ -207,6 +208,7 @@ var CEAL_AUDIT_OUTCOMES = vocabulary(["succeeded", "denied", "failed"]);
207
208
  var CEAL_GATEWAY_PROVIDER_STEP_OUTCOMES = vocabulary(["completed", "rejected", "throttled", "failed"]);
208
209
  var CEAL_GATEWAY_READ_REUSE_DISPOSITIONS = vocabulary(["response_cache_hit", "corpus_hit", "corpus_hit_after_revalidation", "corpus_partial_provider_supplement", "provider_direct", "provider_continuation", "reuse_unavailable"]);
209
210
  var CEAL_GATEWAY_READ_REUSE_UNAVAILABLE_REASONS = vocabulary(["not_reported", "storage_unavailable", "coverage_incomplete", "freshness_refresh_required", "not_reusable", "bypassed"]);
211
+ var CEAL_GATEWAY_DERIVED_STORE_FAILURE_CLASSES = vocabulary(["storage_unavailable", "decode_mismatch", "write_conflict", "quota", "store_error"]);
210
212
  var CEAL_POLICY_DECISIONS = vocabulary(["allowed", "denied", "not_evaluated"]);
211
213
  var CEAL_CONNECTOR_ROUTE_PHASES = vocabulary(["scope_observation", "target_selection", "route_resolution"]);
212
214
  var CEAL_CONNECTOR_ROUTE_CAUSES = vocabulary(["provider_throttled", "provider_unavailable", "binding_invalid", "scope_limit_exceeded"]);
@@ -220,6 +222,17 @@ var CEAL_WRITE_RECEIPT_PROVIDER_STATES = vocabulary(["outcome_unknown", "verifie
220
222
  var CEAL_WRITE_RECEIPT_PROVIDER_READBACKS = vocabulary(["outcome_unknown", "verified", "not_applied"]);
221
223
  var CEAL_PROTOCOL_VERSION = "1.4.0";
222
224
  var CEAL_OPERATION_ACCESS_SCHEMA_VERSION = "ceal.operation_access.v1";
225
+ var CEAL_GATEWAY_ACTIVE_CALL_PHASES = vocabulary([
226
+ "audited_call_pending",
227
+ "continuation_read_pending",
228
+ "continuation_write_pending",
229
+ "provider_pacing_pending",
230
+ "corpus_replay_pending",
231
+ "corpus_append_pending",
232
+ "corpus_fence_pending",
233
+ "corpus_content_pending",
234
+ "corpus_transaction_pending"
235
+ ]);
223
236
  var CEAL_CONNECTOR_ROUTE_FAILURE_KEYS = vocabulary(["connector_kind", "phase", "schema_version"]);
224
237
  var CEAL_CLASSIFIED_CONNECTOR_ROUTE_FAILURE_KEYS = vocabulary(["cause", ...CEAL_CONNECTOR_ROUTE_FAILURE_KEYS]);
225
238
  var CEAL_UNCLASSIFIED_CONNECTOR_ROUTE_FAILURE_KEYS = vocabulary(["connector_kind", "error_class", "phase", "schema_version"]);
@@ -229,10 +242,129 @@ var CEAL_GATEWAY_ORGANIZATION_ROUTE_FACT_CALL_KEYS = Object.freeze([
229
242
  "policy_decision_revision"
230
243
  ]);
231
244
 
245
+ // packages/ceal-client-protocol/src/operation-next-actions.ts
246
+ var CEAL_REPEAT_REQUEST_NEXT_ACTION = "repeat_request";
247
+ var CEAL_INSPECT_RECEIPT_NEXT_ACTION = "inspect_receipt";
248
+ var CALLER_RECOVERABLE_NEXT_ACTION_VALUES = [
249
+ "select_did_you_mean",
250
+ "choose_new_output_path",
251
+ "choose_new_idempotency_key",
252
+ "restart_search",
253
+ "repeat_original_arguments",
254
+ // The occurrence this call addressed is settled and cannot move again -- a
255
+ // denied effect approval, an expired continuation -- so the caller runs the
256
+ // same call again as a new request. The refusal names the re-request; this
257
+ // word is the re-request.
258
+ CEAL_REPEAT_REQUEST_NEXT_ACTION,
259
+ "choose_new_request_identity",
260
+ // A refusal that names the argument (invalid_argument with `property`) tells the caller exactly what to change.
261
+ "correct_argument",
262
+ // A resolver-owned input must move from caller operands into the declared
263
+ // resolver selection field.
264
+ "supply_resolver_selections",
265
+ // The graph names an upstream node whose Operation produces the resolver's
266
+ // occurrence, and it has not produced one yet. The caller runs that node
267
+ // first; the refusal used to share a code with a malformed resolver result,
268
+ // which is not fixable, so neither could carry a remedy.
269
+ "run_resolver_dependency",
270
+ // A replay carries the input the occurrence durably admitted, and this one
271
+ // carries a different one. The caller fixes it by presenting the original
272
+ // invocation, so it is a remedy; the coordinator minted the word at the
273
+ // replay guard and never declared it, which read as unguided to the scorer.
274
+ "use_original_input",
275
+ // The same mismatch on the Request binding rather than the input: the
276
+ // occurrence was admitted under one binding and the replay presents another.
277
+ "use_original_request_binding",
278
+ // The client's own filesystem write was refused -- EACCES, EPERM, or a
279
+ // read-only mount -- which is how an agent sandbox fences writes outside its
280
+ // workspace. The caller reruns the same command with unsandboxed or escalated
281
+ // execution; re-adopting the session cannot help, because the sandbox refuses
282
+ // that write too.
283
+ "rerun_outside_agent_sandbox",
284
+ // The refusal names the one Operation to read next in `describe_command`:
285
+ // an absent Operation id with a sole catalog-ranked candidate, or a known
286
+ // Operation invoked without its input. Describing only reads the verified
287
+ // contract and dispatches nothing, and the caller then retries with the
288
+ // named Operation or input, so it is guidance the scorer counts.
289
+ "describe_operation",
290
+ // The refusal names the caller's own personal connect Operation in
291
+ // `required_action_sequence`: the Operation asked for, or the credential
292
+ // the call ran on, needs a personal connection the caller does not hold
293
+ // (never connected, revoked, or expired). The caller runs that exact
294
+ // Operation, completes the consent it hands back, and retries the same call.
295
+ "connect_personal_account",
296
+ // The provider or Gateway named a bounded wait; the caller waits that long
297
+ // and submits the same read again.
298
+ "retry_after",
299
+ // The ref names a container of rows (a Notion database or data source), which
300
+ // has no body of its own; the caller searches its rows instead of reading it.
301
+ "search_container_rows"
302
+ ];
303
+ var CEAL_CALLER_RECOVERABLE_NEXT_ACTIONS = Object.freeze(CALLER_RECOVERABLE_NEXT_ACTION_VALUES);
304
+ var NON_REMEDY_NEXT_ACTION_VALUES = [
305
+ // Only an administrator can take the named step -- approving a place for an
306
+ // Operation, granting a withheld capability -- so a non-administrator asks
307
+ // one. The refusal names the administrator step; this word is the ask.
308
+ "ask_admin",
309
+ "await_pending_approval",
310
+ "check_gateway",
311
+ "inspect_context_store",
312
+ "inspect_gateway",
313
+ "inspect_local_cache",
314
+ // The thin client prints these on its own behalf, before or after the wire.
315
+ // They were declared only as `CealClientLocalRemedy` keys and, for two of
316
+ // them, only as Go string literals -- a second and third vocabulary for one
317
+ // thing. `CealClientLocalRemedy` derives from this list now, so the client's
318
+ // remedies cannot drift from the words the protocol knows.
319
+ "inspect_local_client",
320
+ "inspect_local_command",
321
+ "inspect_local_output",
322
+ "inspect_local_route",
323
+ CEAL_INSPECT_RECEIPT_NEXT_ACTION,
324
+ "inspect_request",
325
+ "none",
326
+ // The provider refused because of its own configuration -- an API not
327
+ // enabled, an app scope missing -- which an operator changes in that
328
+ // provider's console. No caller edit and no retry fixes it.
329
+ "operator_action",
330
+ "recover",
331
+ "reconcile",
332
+ // Reconciliation of one named occurrence, not of the deployment: an
333
+ // occurrence with no admitted input commitment cannot be replayed safely and
334
+ // no edit to the call changes that. `reconcile` is the deployment-wide word.
335
+ "reconcile_occurrence",
336
+ "reduce_request_size",
337
+ // The Host's invocation context for this turn is stale or expired at the
338
+ // Gateway. The Host's next turn rebinds it and the same call then succeeds;
339
+ // nothing in the call changes, so it is not a remedy the scorer may count.
340
+ "refresh_host_invocation_context",
341
+ "repair_or_adopt_session",
342
+ "retry",
343
+ // The owner -- a correlation hook, an approval hook -- is not serving right
344
+ // now. The caller changes nothing and the same call succeeds once the owner
345
+ // is back, so this is not a remedy the scorer may count as guidance.
346
+ "retry_after_owner_recovery",
347
+ "retry_same_receipt_read",
348
+ "run_file_search_again",
349
+ "select_exact_approval"
350
+ ];
351
+ var CEAL_NON_REMEDY_NEXT_ACTIONS = Object.freeze(NON_REMEDY_NEXT_ACTION_VALUES);
352
+ var DECLARED = /* @__PURE__ */ new Set([...CEAL_CALLER_RECOVERABLE_NEXT_ACTIONS, ...CEAL_NON_REMEDY_NEXT_ACTIONS]);
353
+ var RETRY_PROMISE_NEXT_ACTIONS = ["retry", "retry_after"];
354
+ var RETRY_PROMISE = new Set(RETRY_PROMISE_NEXT_ACTIONS);
355
+ var RECOVERABLE = new Set(CEAL_CALLER_RECOVERABLE_NEXT_ACTIONS);
356
+ var CEAL_OPERATION_WITHHELD_NEXT_ACTIONS = Object.freeze({
357
+ provider_permission: "ask_admin",
358
+ access_level: "ask_admin",
359
+ personal_authorization_required: "connect_personal_account"
360
+ });
361
+
362
+ // packages/ceal-client-protocol/src/operation-withheld-cause.ts
363
+ var CEAL_OPERATION_WITHHELD_CAUSES = vocabulary(["provider_permission", "access_level", "personal_authorization_required"]);
364
+
232
365
  // packages/ceal-client-protocol/src/operation-contract-types.ts
233
366
  var CEAL_JSON_SCHEMA_2020_12 = "https://json-schema.org/draft/2020-12/schema";
234
367
  var CEAL_OPERATION_ERROR_SCHEMA_VERSION = "ceal.operation_error.v1";
235
- var CEAL_OPERATION_WITHHELD_CAUSES = vocabulary(["provider_permission", "access_level", "personal_authorization_required"]);
236
368
  var CEAL_RETRY_AFTER_MAX_MS = 60 * 60 * 1e3;
237
369
  var CEAL_JSON_SCHEMA_TYPES = vocabulary(["object", "array", "string", "integer", "number", "boolean", "null"]);
238
370
  var OBSERVATION_POSTURES = vocabulary(["direct_readback", "approved_no_readback", "operator_mediated", "excluded"]);
@@ -484,7 +616,6 @@ function cut(text) {
484
616
  var CEAL_OPERATION_ACCESS_CLASSES = vocabulary(["read", "write"]);
485
617
 
486
618
  // packages/ceal-client-protocol/src/domain-vocabulary.ts
487
- var CEAL_INTEGRATION_KINDS = vocabulary(["github", "google-workspace", "notion", "slack"]);
488
619
  var CEAL_CONNECTOR_STATUSES = vocabulary(["active", "disabled", "disconnected"]);
489
620
  var CEAL_CONNECTOR_CUSTODIES = vocabulary(["organization", "personal"]);
490
621
  var CEAL_PROVIDER_BOUNDARY_KINDS = vocabulary([
@@ -497,6 +628,8 @@ var CEAL_PROVIDER_BOUNDARY_KINDS = vocabulary([
497
628
  var CEAL_PROVIDER_BOUNDARY_EVIDENCE = vocabulary(["provider_readback", "operator_stated"]);
498
629
  var CEAL_ACCESS_LEVELS = vocabulary(["none", "read", "read_write"]);
499
630
  var CEAL_PERSONAL_ACCESS_CEILINGS = vocabulary(["disabled", "read", "read_write"]);
631
+ var CEAL_TARGET_REF_PATTERN = "^[^\\p{Cc}]+$";
632
+ var TARGET_REF = new RegExp(CEAL_TARGET_REF_PATTERN, "u");
500
633
  var CEAL_TARGET_VISIBILITIES = vocabulary(["public", "private"]);
501
634
  var CEAL_PRINCIPAL_KINDS = vocabulary(["human", "service", "runtime"]);
502
635
  var CEAL_ORGANIZATION_ROLES = vocabulary(["member", "admin"]);
@@ -607,6 +740,7 @@ var CEAL_OPERATION_DESCRIPTOR_REQUIRED_ENVELOPE_KEYS = Object.freeze(["schema_ve
607
740
  var CEAL_OPERATION_DESCRIPTOR_OPTIONAL_ENVELOPE_KEYS = Object.freeze(["input_resolution", "summary"]);
608
741
  var CEAL_OPERATION_RESULT_KEYS = vocabulary(["ok", "operation_id", "operation_receipt", "schema_version", "value"]);
609
742
  var CEAL_OPERATION_COMPACT_RESULT_KEYS = vocabulary(["ok", "operation_evidence", "operation_id", "schema_version", "value"]);
743
+ var CEAL_OPERATION_RESULT_OPTIONAL_KEYS = vocabulary(["model_disclosure", "result_complete", "resume"]);
610
744
 
611
745
  // packages/ceal-client-protocol/src/operation-catalog.ts
612
746
  var CEAL_OPERATION_CATALOG_SCHEMA_VERSION = "ceal.catalog.v3";
@@ -618,8 +752,8 @@ var CEAL_SCHEMA_LITERALS = [
618
752
  "ceal.activation_transport.v1",
619
753
  CEAL_OPERATION_ACCESS_SCHEMA_VERSION,
620
754
  CEAL_OPERATION_CATALOG_SCHEMA_VERSION,
621
- "ceal.client_refresh_request.v2",
622
- "ceal.client_refresh_result.v2",
755
+ "ceal.client_refresh_request.v1",
756
+ "ceal.client_refresh_result.v1",
623
757
  "ceal.client_revoke_request.v1",
624
758
  "ceal.client_revoke_result.v1",
625
759
  CEAL_COMMAND_REQUEST_SCHEMA_VERSION,
@@ -648,7 +782,7 @@ var CEAL_SCHEMA_LITERALS = [
648
782
  "ceal.gateway_call_result.v1",
649
783
  CEAL_GATEWAY_COMMAND_RESOLUTION_SCHEMA_VERSION,
650
784
  "ceal.gateway_connector_route_failure.v1",
651
- "ceal.gateway_discovery.v3",
785
+ "ceal.gateway_discovery.v1",
652
786
  "ceal.gateway_handshake.v1",
653
787
  "ceal.gateway_installation_activation_code_issue_request.v1",
654
788
  "ceal.gateway_installation_activation_code_issue_result.v1",
@@ -670,10 +804,10 @@ var CEAL_SCHEMA_LITERALS = [
670
804
  "ceal.host_observation.v1",
671
805
  "ceal.host_registration_request.v1",
672
806
  "ceal.host_registration_result.v1",
673
- "ceal.leased-resource-stream.v2",
674
- "ceal.leased_consumer_attachment_stream_frame.v2",
675
- "ceal.leased_consumer_attachment_stream_request.v2",
676
- "ceal.leased_consumer_attachment_stream_transport.v2",
807
+ "ceal.leased-resource-stream.v1",
808
+ "ceal.leased_consumer_attachment_stream_frame.v1",
809
+ "ceal.leased_consumer_attachment_stream_request.v1",
810
+ "ceal.leased_consumer_attachment_stream_transport.v1",
677
811
  "ceal.operation_descriptor.v1",
678
812
  "ceal.operation_error.v1",
679
813
  "ceal.operation_failure.v1",
@@ -681,7 +815,7 @@ var CEAL_SCHEMA_LITERALS = [
681
815
  "ceal.operation_receipt.v1",
682
816
  "ceal.operation_result.v1",
683
817
  "ceal.operation_result.compact.v1",
684
- "ceal.local_result_materialization.v2",
818
+ "ceal.local_result_materialization.v1",
685
819
  "ceal.local_result_root.v1",
686
820
  "ceal.owner_bootstrap_exchange_request.v1",
687
821
  "ceal.owner_bootstrap_exchange_result.v1",
@@ -767,117 +901,8 @@ var CEAL_AGENT_SERVICE_SESSION_RECORD_KEYS = vocabulary([
767
901
  ]);
768
902
  var CEAL_AGENT_SESSION_COMMIT_KEYS = vocabulary(["attempt_ref", "expected_session_revision", "session_revision"]);
769
903
 
770
- // packages/ceal-client-protocol/src/operation-next-actions.ts
771
- var CEAL_REPEAT_REQUEST_NEXT_ACTION = "repeat_request";
772
- var CEAL_INSPECT_RECEIPT_NEXT_ACTION = "inspect_receipt";
773
- var CALLER_RECOVERABLE_NEXT_ACTION_VALUES = [
774
- "select_did_you_mean",
775
- "choose_new_output_path",
776
- "choose_new_idempotency_key",
777
- "restart_search",
778
- "repeat_original_arguments",
779
- // The occurrence this call addressed is settled and cannot move again -- a
780
- // denied effect approval, an expired continuation -- so the caller runs the
781
- // same call again as a new request. The refusal names the re-request; this
782
- // word is the re-request.
783
- CEAL_REPEAT_REQUEST_NEXT_ACTION,
784
- "choose_new_request_identity",
785
- // A refusal that names the argument (invalid_argument with `property`) tells the caller exactly what to change.
786
- "correct_argument",
787
- // A resolver-owned input must move from caller operands into the declared
788
- // resolver selection field.
789
- "supply_resolver_selections",
790
- // The graph names an upstream node whose Operation produces the resolver's
791
- // occurrence, and it has not produced one yet. The caller runs that node
792
- // first; the refusal used to share a code with a malformed resolver result,
793
- // which is not fixable, so neither could carry a remedy.
794
- "run_resolver_dependency",
795
- // A replay carries the input the occurrence durably admitted, and this one
796
- // carries a different one. The caller fixes it by presenting the original
797
- // invocation, so it is a remedy; the coordinator minted the word at the
798
- // replay guard and never declared it, which read as unguided to the scorer.
799
- "use_original_input",
800
- // The same mismatch on the Request binding rather than the input: the
801
- // occurrence was admitted under one binding and the replay presents another.
802
- "use_original_request_binding",
803
- // The client's own filesystem write was refused -- EACCES, EPERM, or a
804
- // read-only mount -- which is how an agent sandbox fences writes outside its
805
- // workspace. The caller reruns the same command with unsandboxed or escalated
806
- // execution; re-adopting the session cannot help, because the sandbox refuses
807
- // that write too.
808
- "rerun_outside_agent_sandbox",
809
- // The refusal names the one Operation to read next in `describe_command`:
810
- // an absent Operation id with a sole catalog-ranked candidate, or a known
811
- // Operation invoked without its input. Describing only reads the verified
812
- // contract and dispatches nothing, and the caller then retries with the
813
- // named Operation or input, so it is guidance the scorer counts.
814
- "describe_operation",
815
- // The refusal names the caller's own personal connect Operation in
816
- // `required_action_sequence`: the Operation asked for, or the credential
817
- // the call ran on, needs a personal connection the caller does not hold
818
- // (never connected, revoked, or expired). The caller runs that exact
819
- // Operation, completes the consent it hands back, and retries the same call.
820
- "connect_personal_account",
821
- // The provider or Gateway named a bounded wait; the caller waits that long
822
- // and submits the same read again.
823
- "retry_after"
824
- ];
825
- var CEAL_CALLER_RECOVERABLE_NEXT_ACTIONS = Object.freeze(CALLER_RECOVERABLE_NEXT_ACTION_VALUES);
826
- var NON_REMEDY_NEXT_ACTION_VALUES = [
827
- // Only an administrator can take the named step -- approving a place for an
828
- // Operation, granting a withheld capability -- so a non-administrator asks
829
- // one. The refusal names the administrator step; this word is the ask.
830
- "ask_admin",
831
- "await_pending_approval",
832
- "check_gateway",
833
- "inspect_context_store",
834
- "inspect_gateway",
835
- "inspect_local_cache",
836
- // The thin client prints these on its own behalf, before or after the wire.
837
- // They were declared only as `CealClientLocalRemedy` keys and, for two of
838
- // them, only as Go string literals -- a second and third vocabulary for one
839
- // thing. `CealClientLocalRemedy` derives from this list now, so the client's
840
- // remedies cannot drift from the words the protocol knows.
841
- "inspect_local_client",
842
- "inspect_local_command",
843
- "inspect_local_output",
844
- "inspect_local_route",
845
- CEAL_INSPECT_RECEIPT_NEXT_ACTION,
846
- "inspect_request",
847
- "none",
848
- // The provider refused because of its own configuration -- an API not
849
- // enabled, an app scope missing -- which an operator changes in that
850
- // provider's console. No caller edit and no retry fixes it.
851
- "operator_action",
852
- "recover",
853
- "reconcile",
854
- // Reconciliation of one named occurrence, not of the deployment: a legacy
855
- // occurrence with no admitted input commitment cannot be replayed safely and
856
- // no edit to the call changes that. `reconcile` is the deployment-wide word.
857
- "reconcile_occurrence",
858
- "reduce_request_size",
859
- // The Host's invocation context for this turn is stale or expired at the
860
- // Gateway. The Host's next turn rebinds it and the same call then succeeds;
861
- // nothing in the call changes, so it is not a remedy the scorer may count.
862
- "refresh_host_invocation_context",
863
- "repair_or_adopt_session",
864
- "retry",
865
- // The owner -- a correlation hook, an approval hook -- is not serving right
866
- // now. The caller changes nothing and the same call succeeds once the owner
867
- // is back, so this is not a remedy the scorer may count as guidance.
868
- "retry_after_owner_recovery",
869
- "retry_same_receipt_read",
870
- "run_file_search_again",
871
- "select_exact_approval"
872
- ];
873
- var CEAL_NON_REMEDY_NEXT_ACTIONS = Object.freeze(NON_REMEDY_NEXT_ACTION_VALUES);
874
- var DECLARED = /* @__PURE__ */ new Set([...CEAL_CALLER_RECOVERABLE_NEXT_ACTIONS, ...CEAL_NON_REMEDY_NEXT_ACTIONS]);
875
- var RECOVERABLE = new Set(CEAL_CALLER_RECOVERABLE_NEXT_ACTIONS);
876
- var CEAL_OPERATION_WITHHELD_NEXT_ACTIONS = Object.freeze({
877
- provider_permission: "ask_admin",
878
- access_level: "ask_admin",
879
- personal_authorization_required: "connect_personal_account"
880
- });
904
+ // packages/ceal-client-protocol/src/operation-result-completeness.ts
905
+ var CEAL_READ_VALUE_CONTINUATION_KEYS = vocabulary(["continuation", "continuation_ref", "next_cursor"]);
881
906
 
882
907
  // packages/ceal-client-protocol/src/operation-contract-artifact.ts
883
908
  var CATALOG_REVISION = new RegExp(CEAL_VERIFIED_ARTIFACT_CATALOG_REVISION_PATTERN, "u");
@@ -938,7 +963,8 @@ var CEAL_ACTIVITY_GAP_CODES = vocabulary([
938
963
  "provider_cursor_unavailable",
939
964
  "malformed_provider_page",
940
965
  "visibility_incomplete",
941
- "unsupported_event_kind"
966
+ "unsupported_event_kind",
967
+ "direct_messages_excluded"
942
968
  ]);
943
969
  var CEAL_ACTIVITY_CONNECTOR_KINDS = vocabulary(["slack", "github", "google-calendar", "google-drive", "notion"]);
944
970
  var CEAL_ACTIVITY_COVERAGE_STATUSES = vocabulary(["complete_for_target", "continuation_required", "blocked"]);
@@ -949,6 +975,8 @@ var CEAL_ACTIVITY_EVENT_KINDS = vocabulary([
949
975
  "github.commit.authored",
950
976
  "github.issue.opened",
951
977
  "github.pull_request.opened",
978
+ "github.issue.edited",
979
+ "github.pull_request.edited",
952
980
  "github.review.submitted",
953
981
  "github.issue_comment.created",
954
982
  "github.review_comment.created",
@@ -961,6 +989,25 @@ var CEAL_ACTIVITY_EVENT_KINDS = vocabulary([
961
989
  "notion.page.created",
962
990
  "notion.page.edited"
963
991
  ]);
992
+ var CEAL_ACTIVITY_EVENT_TIMESTAMP_BASIS_MAP = Object.freeze({
993
+ "slack.message": "message_created",
994
+ "slack.reply": "message_created",
995
+ "slack.direct_message": "message_created",
996
+ "github.commit.authored": "commit_authored",
997
+ "github.review.submitted": "review_submitted",
998
+ "github.issue_comment.created": "comment_created",
999
+ "github.review_comment.created": "comment_created",
1000
+ "github.issue.opened": "resource_created",
1001
+ "github.pull_request.opened": "resource_created",
1002
+ "github.issue.edited": "resource_modified",
1003
+ "github.pull_request.edited": "resource_modified",
1004
+ "calendar.organized": "resource_created",
1005
+ "drive.file.created": "file_created",
1006
+ "drive.file.modified": "file_modified_by_me",
1007
+ "drive.file.viewed": "file_viewed_by_me",
1008
+ "notion.page.created": "page_created",
1009
+ "notion.page.edited": "page_last_edited"
1010
+ });
964
1011
  var CEAL_ACTIVITY_TIMESTAMP_BASES = vocabulary([
965
1012
  "message_created",
966
1013
  "commit_authored",
@@ -981,11 +1028,12 @@ var CEAL_ACTIVITY_V3_KINDS = vocabulary(["authored", "edited", "messaged", "resp
981
1028
  var CEAL_RESOURCE_TIME_BASES = vocabulary(["created", "modified", "viewed"]);
982
1029
  var CEAL_RESOURCE_SEARCH_ORDERS = vocabulary(["relevance", "modified", "viewed", "created"]);
983
1030
  var CEAL_RESOURCE_SEARCH_DIRECTIONS = vocabulary(["ascending", "descending"]);
984
- var CEAL_RESOURCE_SEARCH_FILTERS = vocabulary(["query", "modified_since", "since", "until", "authored_by_me", "include_replies", "kinds", "container_ref", "container_refs", "addressed_to_me", "unread"]);
1031
+ var CEAL_RESOURCE_SEARCH_FILTERS = vocabulary(["query", "modified_since", "since", "until", "authored_by_me", "include_replies", "kinds", "container_ref", "container_refs", "container_names", "addressed_to_me", "unread"]);
985
1032
  var CEAL_ARTIFACT_STAGE_TERMINALS = vocabulary(["chunk_accepted", "artifact_ready", "idempotency_replayed"]);
986
1033
  var CEAL_READ_ITEM_KINDS = vocabulary(["conversation", "identity", "usergroup", "message", "file", "document"]);
987
1034
  var CEAL_LEASED_MESSAGE_SEARCH_COMPLETENESS = vocabulary(["complete", "continuation_available", "truncated"]);
988
- var CEAL_OPAQUE_HANDLE_KINDS = vocabulary(["target", "message", "thread", "artifact", "document", "object"]);
1035
+ var CEAL_OPAQUE_HANDLE_KINDS = vocabulary(["target", "message", "thread", "artifact", "document", "block", "object"]);
1036
+ var CEAL_OPAQUE_REF_KINDS = vocabulary([...CEAL_OPAQUE_HANDLE_KINDS, "result", "operation-receipt", "reply-receipt", "field", "notion-data-source"]);
989
1037
  var CEAL_WRITE_OBJECT_KINDS = vocabulary(["document", "comment", "cell_range"]);
990
1038
  var CEAL_CONVERSATION_KINDS = vocabulary(["channel", "dm", "group"]);
991
1039
  var CEAL_FILE_TYPE_FAMILIES = vocabulary(["all", "image", "pdf"]);
@@ -1027,6 +1075,9 @@ var CEAL_FINAL_PRESENTATION_INTENTS = vocabulary(["final", "stop", "transient_no
1027
1075
  var CEAL_PRESENTATION_INTENTS = vocabulary(["progress", ...CEAL_FINAL_PRESENTATION_INTENTS]);
1028
1076
 
1029
1077
  // packages/ceal-client-protocol/src/resource-row.ts
1078
+ var CEAL_DATED_NOTE_BASES = vocabulary(["recording", "calendar_event", "created_time"]);
1079
+ var CEAL_DATED_NOTE_TRANSCRIPT_STATES = vocabulary(["present", "absent", "unestablished"]);
1080
+ var CEAL_READ_SEARCH_COST_CLASSES = vocabulary(["native_index", "scan"]);
1030
1081
  var RESOURCE_ROW_KEY_RULES = Object.freeze({
1031
1082
  schema_version: { required: true, timestamp: false },
1032
1083
  ref: { required: true, timestamp: false },
@@ -1035,9 +1086,11 @@ var RESOURCE_ROW_KEY_RULES = Object.freeze({
1035
1086
  title: { required: true, timestamp: false },
1036
1087
  container_label: { required: true, timestamp: false },
1037
1088
  container_ref: { required: false, timestamp: false },
1089
+ source_url: { required: false, timestamp: false },
1038
1090
  source: { required: true, timestamp: false },
1039
1091
  owner: { required: false, timestamp: false },
1040
1092
  counterparts: { required: false, timestamp: false },
1093
+ attachments: { required: false, timestamp: false },
1041
1094
  created_at: { required: false, timestamp: true },
1042
1095
  created_at_local: { required: false, timestamp: true },
1043
1096
  modified_at: { required: false, timestamp: true },
@@ -1048,6 +1101,7 @@ var RESOURCE_ROW_KEY_RULES = Object.freeze({
1048
1101
  end: { required: false, timestamp: false },
1049
1102
  status: { required: false, timestamp: false },
1050
1103
  snippet: { required: false, timestamp: false },
1104
+ dated_notes: { required: false, timestamp: false },
1051
1105
  state: { required: true, timestamp: false },
1052
1106
  timestamp_basis: { required: true, timestamp: false }
1053
1107
  });
@@ -1084,6 +1138,27 @@ var CEAL_WRITE_SAFETY_UNCHECKED_REASONS = vocabulary(["authority_unavailable"]);
1084
1138
  // packages/ceal-client-protocol/src/operation-occurrence.ts
1085
1139
  var MAX_RECEIPT_REVISION = Number.MAX_SAFE_INTEGER - 1;
1086
1140
 
1141
+ // packages/ceal-client-protocol/src/personal-client-vocabulary.ts
1142
+ var CEAL_PERSONAL_CLIENT_BINDING_KEYS = vocabulary([
1143
+ "access_group_ref",
1144
+ "membership_ref",
1145
+ "registration_ref",
1146
+ "client_ref",
1147
+ "subject_ref",
1148
+ "instance_ref"
1149
+ ]);
1150
+ var CEAL_ENROLLMENT_FAILURE_CODES = vocabulary(["enrollment_invalid", "enrollment_expired", "enrollment_used"]);
1151
+ var CEAL_REFRESH_FAILURE_CODES = vocabulary([
1152
+ "refresh_invalid",
1153
+ "refresh_expired",
1154
+ "refresh_inactive",
1155
+ "refresh_replayed",
1156
+ "refresh_revoked",
1157
+ "authority_replaced",
1158
+ "refresh_recovery_unavailable",
1159
+ "refresh_recovery_expired"
1160
+ ]);
1161
+
1087
1162
  // packages/ceal-client-protocol/src/leased-artifact-contract.ts
1088
1163
  var CEAL_LEASED_CONSUMER_ARTIFACT_CHUNK_MAX_BYTES = 12 * 1024;
1089
1164
 
@@ -1179,7 +1254,7 @@ var CEAL_REQUEST_MAX_GRAPH_NODES = 128;
1179
1254
 
1180
1255
  // packages/ceal-client-protocol/src/request-run.ts
1181
1256
  var CEAL_REQUEST_NODE_STANDING_OCCURRENCE_SCHEMA_VERSION = "ceal.request_node_standing_occurrence.v1";
1182
- var CEAL_REQUEST_RUN_BATCH_SCHEMA_VERSION = "ceal.request_run_batch.v3";
1257
+ var CEAL_REQUEST_RUN_BATCH_SCHEMA_VERSION = "ceal.request_run_batch.v1";
1183
1258
  var REQUEST_ACTION_SAFE_REF_SCHEMA = { type: "string", minLength: 1, maxLength: 128, pattern: SAFE_REF.source };
1184
1259
  var REQUEST_ACTION_DIGEST_SCHEMA = { type: "string", minLength: 64, maxLength: 64, pattern: "^[a-f0-9]{64}$" };
1185
1260
  var REQUEST_NODE_STANDING_OCCURRENCE_SCHEMA = {
@@ -1402,8 +1477,15 @@ var CEAL_REQUEST_GRAPH_NODE_PREPARE_READINESS_JSON_SCHEMA = {
1402
1477
  var CEAL_HOST_INVOCATION_AUTHENTICATION_RESULT_SCHEMA = "ceal.host_invocation_authentication_result.v1";
1403
1478
  var CEAL_HOST_INVOCATION_CONTEXT_PATH = "/api/ceal/v2/host-invocation-context";
1404
1479
  var CEAL_HOST_INGRESS_PATH = "/api/ceal/v2/host-ingress";
1405
- var CEAL_HOST_CLIENT_NONCE_PATTERN = /^[A-Za-z0-9_-]{43}$/u;
1406
- var CEAL_HOST_CONTEXT_TOKEN_PATTERN = /^ceal_context_[A-Za-z0-9_-]{43}$/u;
1480
+ var CEAL_HOST_NONCE_ENCODED_CHARACTERS = 43;
1481
+ var CEAL_HOST_CLIENT_NONCE_PATTERN = new RegExp(`^[A-Za-z0-9_-]{${CEAL_HOST_NONCE_ENCODED_CHARACTERS}}$`, "u");
1482
+ var CEAL_HOST_CONTEXT_TOKEN_PATTERN = new RegExp(`^ceal_context_[A-Za-z0-9_-]{${CEAL_HOST_NONCE_ENCODED_CHARACTERS}}$`, "u");
1483
+ var CEAL_HOST_INVOCATION_AUTHENTICATION_RESULT_MAX_BYTES = new TextEncoder().encode(`${JSON.stringify({
1484
+ schema_version: CEAL_HOST_INVOCATION_AUTHENTICATION_RESULT_SCHEMA,
1485
+ context_token: `ceal_context_${"A".repeat(CEAL_HOST_NONCE_ENCODED_CHARACTERS)}`,
1486
+ expires_at: (/* @__PURE__ */ new Date("+010000-01-01T00:00:00.000Z")).toISOString()
1487
+ })}
1488
+ `).byteLength;
1407
1489
  function decodeCealHostInvocationAuthenticationResult(value, now = /* @__PURE__ */ new Date()) {
1408
1490
  if (!isCealJsonRecord(value) || !exactKeys(value, ["schema_version", "context_token", "expires_at"]) || value.schema_version !== CEAL_HOST_INVOCATION_AUTHENTICATION_RESULT_SCHEMA || typeof value.context_token !== "string" || !CEAL_HOST_CONTEXT_TOKEN_PATTERN.test(value.context_token) || typeof value.expires_at !== "string" || !validFutureTimestamp(value.expires_at, now)) {
1409
1491
  throw new TypeError("The Host invocation authentication result is invalid.");
@@ -1421,8 +1503,8 @@ function exactKeys(value, expected) {
1421
1503
 
1422
1504
  // packages/ceal-client-protocol/src/client-result-materialization.ts
1423
1505
  var CEAL_MODEL_VISIBLE_COMMAND_OUTPUT_MAX_BYTES = 32 * 1024;
1424
- var REQUIRED_FIELDS2 = Object.freeze(["schema_version", "operation_id", "read_argv"]);
1425
- var FIELDS = /* @__PURE__ */ new Set([...REQUIRED_FIELDS2, "local_result_root", "continue_argv"]);
1506
+ var REQUIRED_FIELDS2 = Object.freeze(["schema_version", "operation_id"]);
1507
+ var FIELDS = /* @__PURE__ */ new Set([...REQUIRED_FIELDS2, "read_argv", "local_result_root", "continue_argv", "model_disclosure", "item_read_argv"]);
1426
1508
 
1427
1509
  // packages/ceal-client-protocol/src/session-start-affordance.ts
1428
1510
  var CEAL_SESSION_ENTRY_INVOCATION = "ceal";
@@ -1522,27 +1604,6 @@ var ADMIN_LINEAGE_NODE_KINDS = vocabulary(["source_read", "synthesis_preview", "
1522
1604
  // packages/ceal-client-protocol/src/actor-kind.ts
1523
1605
  var CEAL_ACTOR_KINDS = vocabulary(["human", "bot", "app", "unknown"]);
1524
1606
 
1525
- // packages/ceal-client-protocol/src/personal-client-vocabulary.ts
1526
- var CEAL_PERSONAL_CLIENT_BINDING_KEYS = vocabulary([
1527
- "access_group_ref",
1528
- "membership_ref",
1529
- "registration_ref",
1530
- "client_ref",
1531
- "subject_ref",
1532
- "instance_ref"
1533
- ]);
1534
- var CEAL_ENROLLMENT_FAILURE_CODES = vocabulary(["enrollment_invalid", "enrollment_expired", "enrollment_used"]);
1535
- var CEAL_REFRESH_FAILURE_CODES = vocabulary([
1536
- "refresh_invalid",
1537
- "refresh_expired",
1538
- "refresh_inactive",
1539
- "refresh_replayed",
1540
- "refresh_revoked",
1541
- "authority_replaced",
1542
- "refresh_recovery_unavailable",
1543
- "refresh_recovery_expired"
1544
- ]);
1545
-
1546
1607
  // packages/ceal-client-protocol/src/device-enrollment.ts
1547
1608
  var CEAL_DEVICE_ENROLLMENT_POLL_FAILURE_CODES = Object.freeze(["unsupported_feature", "recovery_required", "expired", "denied"]);
1548
1609
  var POLL_RESULT_KEYS = Object.freeze(["retry_after_ms", "schema_version", "status"]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@corca-org/ceal-host-linux-arm64",
3
- "version": "1.0.14",
3
+ "version": "1.0.16",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",