@wildo-ai/external-connectors-models 1.1.4 → 1.1.6
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.
- package/dist/esm/companion-exports.d.ts.map +1 -1
- package/dist/esm/core/commons.external-connectors-models.schemas.d.ts +23 -132
- package/dist/esm/core/commons.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/core/commons.external-connectors-models.schemas.js +23 -31
- package/dist/esm/core/commons.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/core/operation-classification.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/core/operation-classification.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/core/security.external-connectors-models.schemas.d.ts +40 -8
- package/dist/esm/core/security.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/core/security.external-connectors-models.schemas.js +61 -14
- package/dist/esm/core/security.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/index.d.ts +5 -2
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +5 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/protocols/agent-client-protocol.external-connectors-models.schemas.d.ts +78 -163
- package/dist/esm/protocols/agent-client-protocol.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/agent-client-protocol.external-connectors-models.schemas.js +78 -93
- package/dist/esm/protocols/agent-client-protocol.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/billing.standard-interface.schemas.d.ts +258 -13
- package/dist/esm/protocols/billing.standard-interface.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/billing.standard-interface.schemas.js +41 -0
- package/dist/esm/protocols/billing.standard-interface.schemas.js.map +1 -1
- package/dist/esm/protocols/document-extraction.external-connectors-models.schemas.d.ts +57 -17
- package/dist/esm/protocols/document-extraction.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/document-extraction.external-connectors-models.schemas.js +26 -7
- package/dist/esm/protocols/document-extraction.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/email-inbound.standard-interface.schemas.d.ts +229 -0
- package/dist/esm/protocols/email-inbound.standard-interface.schemas.d.ts.map +1 -0
- package/dist/esm/protocols/email-inbound.standard-interface.schemas.js +160 -0
- package/dist/esm/protocols/email-inbound.standard-interface.schemas.js.map +1 -0
- package/dist/esm/protocols/email.external-connectors-models.schemas.d.ts +1 -56
- package/dist/esm/protocols/email.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/email.external-connectors-models.schemas.js +0 -20
- package/dist/esm/protocols/email.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/email.standard-interface.schemas.d.ts +4 -4
- package/dist/esm/protocols/email.standard-interface.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/embeddings.external-connectors-models.schemas.d.ts +1 -16
- package/dist/esm/protocols/embeddings.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/embeddings.external-connectors-models.schemas.js +4 -9
- package/dist/esm/protocols/embeddings.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/file-storage.standard-interface.d.ts +179 -0
- package/dist/esm/protocols/file-storage.standard-interface.d.ts.map +1 -0
- package/dist/esm/protocols/file-storage.standard-interface.js +79 -0
- package/dist/esm/protocols/file-storage.standard-interface.js.map +1 -0
- package/dist/esm/protocols/frontend.external-connectors-models.schemas.d.ts +6 -13
- package/dist/esm/protocols/frontend.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/frontend.external-connectors-models.schemas.js +0 -9
- package/dist/esm/protocols/frontend.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/hooks-capability.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/hooks-capability.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/hooks.external-connectors-models.schemas.d.ts +20 -16
- package/dist/esm/protocols/hooks.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/hooks.external-connectors-models.schemas.js +12 -9
- package/dist/esm/protocols/hooks.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/image.external-connectors-models.schemas.d.ts +1 -18
- package/dist/esm/protocols/image.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/image.external-connectors-models.schemas.js +1 -7
- package/dist/esm/protocols/image.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/llm.external-connectors-models.schemas.d.ts +100 -40
- package/dist/esm/protocols/llm.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/llm.external-connectors-models.schemas.js +164 -41
- package/dist/esm/protocols/llm.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/oauth2-provider-assurance.definitions.d.ts +7 -0
- package/dist/esm/protocols/oauth2-provider-assurance.definitions.d.ts.map +1 -0
- package/dist/esm/protocols/oauth2-provider-assurance.definitions.js +36 -0
- package/dist/esm/protocols/oauth2-provider-assurance.definitions.js.map +1 -0
- package/dist/esm/protocols/oauth2-provider-assurance.schemas.d.ts +23 -0
- package/dist/esm/protocols/oauth2-provider-assurance.schemas.d.ts.map +1 -0
- package/dist/esm/protocols/oauth2-provider-assurance.schemas.js +25 -0
- package/dist/esm/protocols/oauth2-provider-assurance.schemas.js.map +1 -0
- package/dist/esm/protocols/oauth2.external-connectors-models.schemas.d.ts +0 -148
- package/dist/esm/protocols/oauth2.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/oauth2.external-connectors-models.schemas.js +1 -40
- package/dist/esm/protocols/oauth2.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/provider-oauth2-token-endpoint-hosts.external-connectors-models.d.ts +39 -0
- package/dist/esm/protocols/provider-oauth2-token-endpoint-hosts.external-connectors-models.d.ts.map +1 -0
- package/dist/esm/protocols/provider-oauth2-token-endpoint-hosts.external-connectors-models.js +66 -0
- package/dist/esm/protocols/provider-oauth2-token-endpoint-hosts.external-connectors-models.js.map +1 -0
- package/dist/esm/protocols/rest-operations.external-connectors-models.schemas.d.ts +863 -16
- package/dist/esm/protocols/rest-operations.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/rest-operations.external-connectors-models.schemas.js +703 -0
- package/dist/esm/protocols/rest-operations.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/sms.external-connectors-models.schemas.d.ts +0 -39
- package/dist/esm/protocols/sms.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/sms.external-connectors-models.schemas.js +0 -13
- package/dist/esm/protocols/sms.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/sms.standard-interface.schemas.d.ts +1 -1
- package/dist/esm/protocols/sms.standard-interface.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/sms.standard-interface.schemas.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +2 -3
- package/dist/esm/core/protocols.external-connectors-models.schemas.d.ts +0 -74
- package/dist/esm/core/protocols.external-connectors-models.schemas.d.ts.map +0 -1
- package/dist/esm/core/protocols.external-connectors-models.schemas.js +0 -1
- package/dist/esm/core/protocols.external-connectors-models.schemas.js.map +0 -1
- package/dist/esm/protocols/rest-api.external-connectors-models.schemas.d.ts +0 -37
- package/dist/esm/protocols/rest-api.external-connectors-models.schemas.d.ts.map +0 -1
- package/dist/esm/protocols/rest-api.external-connectors-models.schemas.js +0 -10
- package/dist/esm/protocols/rest-api.external-connectors-models.schemas.js.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { ExternalProvider_OperationContextSchema, } from "../core/operations.external-connectors-models.schemas.js";
|
|
3
|
-
import { APPLICATION_ENVIRONMENT, ExternalProvider_ExchangeProtocol_Configuration_BaseSchema, ExternalProvider_ExchangeProtocol_Kind,
|
|
3
|
+
import { APPLICATION_ENVIRONMENT, ExternalProvider_ExchangeProtocol_Configuration_BaseSchema, ExternalProvider_ExchangeProtocol_Kind, } from "../core/commons.external-connectors-models.schemas.js";
|
|
4
4
|
//===============================================================
|
|
5
5
|
// Agent Client Protocol (ACP)
|
|
6
6
|
// --------
|
|
@@ -99,17 +99,9 @@ export var AgentClientProtocol_WorkingDirectoryPolicy;
|
|
|
99
99
|
* what lets an application say "no session started from this profile may ever
|
|
100
100
|
* skip the permission gate" independently of what any individual run requests.
|
|
101
101
|
*
|
|
102
|
-
*
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
-
* rather than by string, so the ordering has one definition.
|
|
106
|
-
*
|
|
107
|
-
* Read that order as a CLAMP — how much is pre-approved without a human — and never
|
|
108
|
-
* as containment. The ceilings are kind-SETS and are deliberately not nested:
|
|
109
|
-
* AUTO_ACCEPT_EDITS outranks AUTO_ACCEPT_READS and still refuses `fetch`, which is
|
|
110
|
-
* exactly why AUTO_ACCEPT_READS_AND_EDITS had to be added rather than being implied
|
|
111
|
-
* by the higher rank. Each member's own docstring states the set it admits, and the
|
|
112
|
-
* rank function carries the full argument for why containment is the wrong reading.
|
|
102
|
+
* Policies describe admitted tool-kind sets, not nested levels. Invocation overrides
|
|
103
|
+
* intersect those sets with the profile: READS and EDITS have an empty intersection.
|
|
104
|
+
* The rank helper is a presentation ordering only and must not select authority.
|
|
113
105
|
*/
|
|
114
106
|
/** @wildo_source:part:start acp.permission-ceiling facet:layer:config facet:audience:app-developer */
|
|
115
107
|
export var AgentClientProtocol_PermissionCeiling;
|
|
@@ -208,23 +200,11 @@ export var AgentClientProtocol_PermissionCeiling;
|
|
|
208
200
|
})(AgentClientProtocol_PermissionCeiling || (AgentClientProtocol_PermissionCeiling = {}));
|
|
209
201
|
/** @wildo_source:part:end acp.permission-ceiling */
|
|
210
202
|
/**
|
|
211
|
-
*
|
|
212
|
-
*
|
|
213
|
-
* ## It is a CLAMP order, not a subset lattice — and that distinction is load-bearing
|
|
214
|
-
*
|
|
215
|
-
* Rank answers one question: how much is pre-approved without a human. It is used to LOWER a
|
|
216
|
-
* request that asks for more autonomy than its profile allows, never to reason about which
|
|
217
|
-
* permissions contain which.
|
|
203
|
+
* Stable presentation order for {@link AgentClientProtocol_PermissionCeiling}.
|
|
218
204
|
*
|
|
219
|
-
*
|
|
220
|
-
*
|
|
221
|
-
*
|
|
222
|
-
* every mutating kind. Reading rank as containment would say the higher ceiling must also admit
|
|
223
|
-
* `fetch` — and making that true would hand every coding agent network access as a side effect of
|
|
224
|
-
* building a research lane. That is a change to the coding lane's posture and it needs its own
|
|
225
|
-
* evidence, not a corollary. Clamping still behaves correctly: a coding profile lowered to
|
|
226
|
-
* AUTO_ACCEPT_READS may fetch and may not edit, which is exactly what asking for less autonomy in
|
|
227
|
-
* the read direction should mean.
|
|
205
|
+
* Never use this rank to authorize or clamp a request. READS and EDITS admit disjoint
|
|
206
|
+
* tool-kind sets; choosing the numerically lower one can grant operations forbidden
|
|
207
|
+
* by the profile. Dispatch computes their intersection instead.
|
|
228
208
|
*/
|
|
229
209
|
export function agentClientProtocolPermissionCeilingRank(ceiling) {
|
|
230
210
|
switch (ceiling) {
|
|
@@ -240,17 +220,57 @@ export function agentClientProtocolPermissionCeilingRank(ceiling) {
|
|
|
240
220
|
return 4;
|
|
241
221
|
}
|
|
242
222
|
}
|
|
223
|
+
/**
|
|
224
|
+
* How a coding agent's host-login status command reports "signed in".
|
|
225
|
+
*
|
|
226
|
+
* An ACP agent that is not signed in still completes `initialize` and `session/new`; it fails the
|
|
227
|
+
* first `session/prompt` (Claude's adapter 0.81.1: JSON-RPC `-32000 Authentication required`,
|
|
228
|
+
* reproduced 2026-09-25). So the handshake proves nothing about the login, and a real prompt spends
|
|
229
|
+
* a turn. Every agent's own CLI can answer without either — `claude auth status --json`,
|
|
230
|
+
* `codex login status`, `opencode auth list` — but each answers in its own way, which is this enum.
|
|
231
|
+
*/
|
|
232
|
+
export var AgentClientProtocol_HostLoginSignal;
|
|
233
|
+
(function (AgentClientProtocol_HostLoginSignal) {
|
|
234
|
+
/** Signed in exactly when the status command exits 0. */
|
|
235
|
+
AgentClientProtocol_HostLoginSignal["EXIT_CODE_ZERO"] = "exit_code_zero";
|
|
236
|
+
/** Signed in when the command prints JSON whose named field is `true`. */
|
|
237
|
+
AgentClientProtocol_HostLoginSignal["JSON_BOOLEAN_FIELD"] = "json_boolean_field";
|
|
238
|
+
/** Signed in when the command exits 0 and its output does NOT match a pattern (e.g. `0 credentials`). */
|
|
239
|
+
AgentClientProtocol_HostLoginSignal["OUTPUT_EXCLUDES"] = "output_excludes";
|
|
240
|
+
})(AgentClientProtocol_HostLoginSignal || (AgentClientProtocol_HostLoginSignal = {}));
|
|
241
|
+
/**
|
|
242
|
+
* What a host-login probe found for one coding agent.
|
|
243
|
+
*
|
|
244
|
+
* Four states, because the remedies differ: NOT_INSTALLED needs an install, SIGNED_OUT a login, and
|
|
245
|
+
* UNKNOWN (the status command ran and its answer could not be read, or timed out) must never be
|
|
246
|
+
* reported as either — reading it as SIGNED_IN dispatches a run that fails mid-turn, reading it as
|
|
247
|
+
* SIGNED_OUT sends a signed-in operator to log in again.
|
|
248
|
+
*/
|
|
249
|
+
export var CodingAgentHostLoginState;
|
|
250
|
+
(function (CodingAgentHostLoginState) {
|
|
251
|
+
CodingAgentHostLoginState["SIGNED_IN"] = "signed_in";
|
|
252
|
+
CodingAgentHostLoginState["SIGNED_OUT"] = "signed_out";
|
|
253
|
+
CodingAgentHostLoginState["NOT_INSTALLED"] = "not_installed";
|
|
254
|
+
CodingAgentHostLoginState["UNKNOWN"] = "unknown";
|
|
255
|
+
})(CodingAgentHostLoginState || (CodingAgentHostLoginState = {}));
|
|
256
|
+
/**
|
|
257
|
+
* How a dispatch refused because the coding agent's operator is not signed in begins — thrown by the
|
|
258
|
+
* engine before an ACP session opens, and recognised by the companion as the HOST's failure (not the
|
|
259
|
+
* task's), so a signed-out host does not spend a task's attempt budget. One constant for both sides.
|
|
260
|
+
*/
|
|
261
|
+
export const CODING_AGENT_NOT_SIGNED_IN_MESSAGE_PREFIX = 'The coding agent is not signed in on this host';
|
|
243
262
|
/**
|
|
244
263
|
* Whether THIS agent raises `session/request_permission` before it mutates —
|
|
245
264
|
* the one property that decides whether Wildo's in-flight guards can fire at all.
|
|
246
265
|
*
|
|
247
266
|
* # Why a permission ceiling needs this to mean anything
|
|
248
267
|
*
|
|
249
|
-
*
|
|
268
|
+
* For agent-owned I/O, Wildo's in-flight controls are enforced in the CLIENT's ANSWER to a
|
|
250
269
|
* permission request: {@link AgentClientProtocol_PermissionCeiling} decides the
|
|
251
270
|
* tool KIND, and the dispatch's location predicate decides the PATHS. Neither is
|
|
252
271
|
* a sandbox, an interposed filesystem, or a syscall filter — they are answers.
|
|
253
|
-
*
|
|
272
|
+
* Client-hosted writes independently check both controls. An agent doing its OWN I/O
|
|
273
|
+
* without asking is bound by neither, and the ceiling
|
|
254
274
|
* an application authored is a LABEL rather than a guarantee.
|
|
255
275
|
*
|
|
256
276
|
* That is not hypothetical and it is not a fault in the agents. MEASURED with
|
|
@@ -610,51 +630,6 @@ export const AgentClientProtocol_ExecutionProfileSchema = z.object({
|
|
|
610
630
|
}
|
|
611
631
|
});
|
|
612
632
|
/** @wildo_source:part:end acp.execution-profile */
|
|
613
|
-
/**
|
|
614
|
-
* Transport capability metadata for an ACP-speaking provider.
|
|
615
|
-
*
|
|
616
|
-
* Note how little is declared here compared with a one-shot CLI contract, and
|
|
617
|
-
* why: ACP agents advertise their own capabilities, session modes and available
|
|
618
|
-
* commands during `initialize` and `session/new`. Re-declaring any of that in
|
|
619
|
-
* authored configuration would create a second source of truth that drifts the
|
|
620
|
-
* first time the agent is upgraded. What remains is what the HOST must know
|
|
621
|
-
* before it opens a connection.
|
|
622
|
-
*/
|
|
623
|
-
export const AgentClientProtocol_ProfileSchema = ExternalProvider_ExchangeProtocol_Profile_BaseSchema.extend({
|
|
624
|
-
supportedRunnerHosts: z.array(z.enum(AgentClientProtocol_RunnerHost)).default([
|
|
625
|
-
AgentClientProtocol_RunnerHost.BACKEND_SUBPROCESS,
|
|
626
|
-
]),
|
|
627
|
-
/**
|
|
628
|
-
* The ACP major versions this provider is known to speak.
|
|
629
|
-
*
|
|
630
|
-
* ACP negotiates a single integer at `initialize`: the client offers its
|
|
631
|
-
* latest, the agent answers with that or its own. This list is what the
|
|
632
|
-
* runner is willing to accept in that answer — an agent that returns anything
|
|
633
|
-
* else is refused rather than spoken to hopefully.
|
|
634
|
-
*/
|
|
635
|
-
supportedProtocolVersions: z.array(z.number().int().positive()).min(1).default([1]),
|
|
636
|
-
/**
|
|
637
|
-
* The semantic operations this transport can execute truthfully.
|
|
638
|
-
*
|
|
639
|
-
* Kept as strings to avoid a circular runtime import with the operation
|
|
640
|
-
* family that consumes this protocol — the same reason the CLI contract this
|
|
641
|
-
* replaces did so.
|
|
642
|
-
*/
|
|
643
|
-
supportedOperationKeys: z.array(z.string().min(1)).min(1),
|
|
644
|
-
/**
|
|
645
|
-
* The semantic models valid on this transport.
|
|
646
|
-
*
|
|
647
|
-
* The agent also advertises its own model options per session; this list is
|
|
648
|
-
* the authored subset an application is willing to select from, and it is
|
|
649
|
-
* what a requested model is validated against before a session is opened.
|
|
650
|
-
*/
|
|
651
|
-
supportedModels: z.array(z.string().min(1)).min(1),
|
|
652
|
-
supportedAuthModes: z.array(z.enum(AgentClientProtocol_AuthMode)).default([
|
|
653
|
-
AgentClientProtocol_AuthMode.NONE,
|
|
654
|
-
AgentClientProtocol_AuthMode.HOST_MANAGED,
|
|
655
|
-
AgentClientProtocol_AuthMode.SECRET_REF_ENV_INJECTION,
|
|
656
|
-
]),
|
|
657
|
-
});
|
|
658
633
|
export const AgentClientProtocol_ConfigurationSchema = ExternalProvider_ExchangeProtocol_Configuration_BaseSchema.extend({
|
|
659
634
|
defaultExecutionProfileRef: z.string().optional(),
|
|
660
635
|
executionProfiles: z.record(z.string(), AgentClientProtocol_ExecutionProfileSchema),
|
|
@@ -667,20 +642,6 @@ export const AgentClientProtocol_ConfigurationSchema = ExternalProvider_Exchange
|
|
|
667
642
|
});
|
|
668
643
|
}
|
|
669
644
|
});
|
|
670
|
-
export const AgentClientProtocol_StatusSchema = ExternalProvider_ExchangeProtocol_Status_BaseSchema.extend({
|
|
671
|
-
protocolKind: z.literal(ExternalProvider_ExchangeProtocol_Kind.AGENT_CLIENT_PROTOCOL),
|
|
672
|
-
/** The version actually agreed at the last `initialize`, when one succeeded. */
|
|
673
|
-
negotiatedProtocolVersion: z.number().int().positive().optional(),
|
|
674
|
-
/**
|
|
675
|
-
* The agent's self-reported identity from its last `initialize` response.
|
|
676
|
-
*
|
|
677
|
-
* Recorded because the agent is an independently released dependency: when a
|
|
678
|
-
* run starts behaving differently, "which build answered" is the first
|
|
679
|
-
* question, and it is not answerable from anything Wildo authored.
|
|
680
|
-
*/
|
|
681
|
-
observedAgentName: z.string().optional(),
|
|
682
|
-
observedAgentVersion: z.string().optional(),
|
|
683
|
-
});
|
|
684
645
|
//===============================================================
|
|
685
646
|
// Coding-agent operation family
|
|
686
647
|
// --------
|
|
@@ -806,7 +767,13 @@ export const CodingAgent_SessionSuspensionSchema = z.strictObject({
|
|
|
806
767
|
* context — a degradation the caller should surface, not hide.
|
|
807
768
|
*/
|
|
808
769
|
resumable: z.boolean(),
|
|
809
|
-
/**
|
|
770
|
+
/**
|
|
771
|
+
* An INFORMATIONAL freshness bound for the question (ISO timestamp), surfaced to the operator —
|
|
772
|
+
* never a reaping deadline. No child process is held open while a run is parked (see
|
|
773
|
+
* `awaitingInputTtlMs`), so there is nothing that closes at this instant. It said "when the parked
|
|
774
|
+
* child process will be closed" until 2026-09-24, contradicting the contract above it, and a host
|
|
775
|
+
* read it that way and aborted answerable questions at boot (#1533).
|
|
776
|
+
*/
|
|
810
777
|
parkedUntil: z.string().optional(),
|
|
811
778
|
});
|
|
812
779
|
/**
|
|
@@ -945,8 +912,8 @@ export const CodingAgent_RunTaskInputSchema = z.object({
|
|
|
945
912
|
/**
|
|
946
913
|
* The autonomy this particular run asks for.
|
|
947
914
|
*
|
|
948
|
-
*
|
|
949
|
-
* execution profile's `permissionCeiling`. Absent means the profile's ceiling
|
|
915
|
+
* INTERSECTED, never honoured blindly: dispatch admits only tool kinds shared by
|
|
916
|
+
* this policy and the execution profile's `permissionCeiling`. Absent means the profile's ceiling
|
|
950
917
|
* — which is itself the safe default — so omitting it can never widen
|
|
951
918
|
* authority, only leave it where the profile put it.
|
|
952
919
|
*/
|
|
@@ -967,7 +934,8 @@ export const CodingAgent_RunTaskOutputSchema = z.object({
|
|
|
967
934
|
finalMessage: z.string(),
|
|
968
935
|
stopReason: z.enum(CodingAgent_StopReason),
|
|
969
936
|
/**
|
|
970
|
-
* Absolute paths the agent REPORTED
|
|
937
|
+
* Absolute paths the agent REPORTED writing, from its tool-call stream: the locations of its `edit`,
|
|
938
|
+
* `delete` and `move` tool calls, never those of a read or a search (#1805).
|
|
971
939
|
*
|
|
972
940
|
* A claim, not a record. An agent reports what its own tooling surfaces, and
|
|
973
941
|
* nothing prevents it writing a file it never mentions — measured against
|
|
@@ -1094,4 +1062,21 @@ providerConfigurations) {
|
|
|
1094
1062
|
}
|
|
1095
1063
|
return { destinations, profilesWithoutDestinations };
|
|
1096
1064
|
}
|
|
1065
|
+
/**
|
|
1066
|
+
* The ACP tool kinds that WRITE the workspace (#1805) — the one source for "is this tool call a write?".
|
|
1067
|
+
*
|
|
1068
|
+
* A concurrent coding run claims a file only on evidence it wrote it: a writing tool call's locations, or an
|
|
1069
|
+
* ALLOWED permission request for a writing tool. A read or a search reports locations too, and claiming those
|
|
1070
|
+
* committed files a run only read under its name.
|
|
1071
|
+
*
|
|
1072
|
+
* semantic-literal-boundary: ACP's `ToolKind` is the protocol's open string vocabulary, translated here.
|
|
1073
|
+
* spec-cite: ACP v2 schema, `ToolKind` = "read" | "edit" | "delete" | "move" | "search" | "execute" | "think" | "fetch" | "switch_mode" | "other" (types.gen.d.ts, @agentclientprotocol/sdk; protocol docs "Tool Calls — Creating").
|
|
1074
|
+
* `execute` is left out: a shell command may write, but the locations it reports are what it was pointed
|
|
1075
|
+
* at, not what it wrote, and a run that wrote through its shell is exactly the case claims cannot see.
|
|
1076
|
+
*/
|
|
1077
|
+
export const ACP_WRITING_TOOL_KINDS = new Set(['edit', 'delete', 'move']);
|
|
1078
|
+
/** Whether an ACP tool kind writes the workspace; an absent kind is no evidence that it does. */
|
|
1079
|
+
export function isWritingAcpToolKind(kind) {
|
|
1080
|
+
return kind !== undefined && ACP_WRITING_TOOL_KINDS.has(kind);
|
|
1081
|
+
}
|
|
1097
1082
|
//# sourceMappingURL=agent-client-protocol.external-connectors-models.schemas.js.map
|