@wildo-ai/external-connectors-models 1.1.1 → 1.1.2
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/core/commons.external-connectors-models.schemas.d.ts +4 -2
- package/dist/esm/core/commons.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/core/commons.external-connectors-models.schemas.js +4 -2
- package/dist/esm/core/commons.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/agent-client-protocol.external-connectors-models.schemas.d.ts +132 -0
- 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 +154 -1
- package/dist/esm/protocols/agent-client-protocol.external-connectors-models.schemas.js.map +1 -1
- package/dist/esm/protocols/llm.external-connectors-models.schemas.d.ts +3 -1
- package/dist/esm/protocols/llm.external-connectors-models.schemas.d.ts.map +1 -1
- package/dist/esm/protocols/llm.external-connectors-models.schemas.js +25 -1
- package/dist/esm/protocols/llm.external-connectors-models.schemas.js.map +1 -1
- package/package.json +2 -2
- package/dist/esm/.builder.pid +0 -9
|
@@ -46,8 +46,10 @@ export declare enum ExternalProvider_ExchangeProtocol_Kind {
|
|
|
46
46
|
* `EngineCapability.AI_DOCUMENT_EXTRACTION` slot so an application selects its OCR provider
|
|
47
47
|
* independently of chat and embeddings — three unrelated procurement decisions.
|
|
48
48
|
*
|
|
49
|
-
* NOT to be confused with
|
|
50
|
-
*
|
|
49
|
+
* NOT to be confused with PDF *generation* (templates → bytes), which is the `pdfTemplates`
|
|
50
|
+
* surface and is semantically the opposite direction. It has no provider slot: the
|
|
51
|
+
* `EngineCapability.DOCUMENT_GENERATION` this paragraph used to name was withdrawn because no
|
|
52
|
+
* provider capability token could ever fill it.
|
|
51
53
|
*/
|
|
52
54
|
DOCUMENT_EXTRACTION_PROVIDER = "document_extraction_provider",
|
|
53
55
|
/** Reserved — audio generation (TTS / music). Serves the AUDIO modality. Not yet implemented. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commons.external-connectors-models.schemas.d.ts","sourceRoot":"","sources":["../../../../src/core/commons.external-connectors-models.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAA6C,0BAA0B,EAAsF,MAAM,+CAA+C,CAAC;AAG1N,oBAAY,sCAAsC;IAEhD,QAAQ,aAAa;IACrB,kBAAkB,uBAAuB;IAIzC,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B;;;;;;;;;;;;;;;OAeG;IACH,qBAAqB,0BAA0B;IAE/C,8EAA8E;IAC9E,cAAc,mBAAmB;IACjC;;;;;;;;;;OAUG;IACH,mBAAmB,wBAAwB;IAC3C
|
|
1
|
+
{"version":3,"file":"commons.external-connectors-models.schemas.d.ts","sourceRoot":"","sources":["../../../../src/core/commons.external-connectors-models.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAA6C,0BAA0B,EAAsF,MAAM,+CAA+C,CAAC;AAG1N,oBAAY,sCAAsC;IAEhD,QAAQ,aAAa;IACrB,kBAAkB,uBAAuB;IAIzC,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B;;;;;;;;;;;;;;;OAeG;IACH,qBAAqB,0BAA0B;IAE/C,8EAA8E;IAC9E,cAAc,mBAAmB;IACjC;;;;;;;;;;OAUG;IACH,mBAAmB,wBAAwB;IAC3C;;;;;;;;;;;;;OAaG;IACH,4BAA4B,iCAAiC;IAC7D,iGAAiG;IACjG,cAAc,mBAAmB;IACjC,mFAAmF;IACnF,cAAc,mBAAmB;IAGjC,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;IAC7B,IAAI,SAAS;IAGb,UAAU,eAAe;IACzB,QAAQ,aAAa;IAIrB,gBAAgB,qBAAqB;IAGrC,YAAY,iBAAiB;IAG7B,YAAY,iBAAiB;CAC9B;AAED,oBAAY,uBAAuB;IACjC,WAAW,gBAAgB;IAC3B,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAED,oBAAY,uBAAuB;IACjC,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAGD,oBAAY,cAAc;IACxB,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,OAAO,YAAY;CACpB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,oDAAoD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAI/D,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,0DAA0D;;;;;;;;;;;;;;;;iBAIrE,CAAC;AAEH,eAAO,MAAM,mDAAmD;;;;;iBAK9D,CAAC;AAEH,MAAM,MAAM,8CAA8C,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oDAAoD,CAAC,CAAC;AAClI,MAAM,MAAM,oDAAoD,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0DAA0D,CAAC,CAAC;AAC9I,MAAM,MAAM,6CAA6C,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mDAAmD,CAAC,CAAC;AAEhI,oBAAY,6BAA6B;IACvC,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,aAAa,kBAAkB;CAChC;AAED,oBAAY,sCAAsC;IAChD,gBAAgB,qBAAqB;IACrC,WAAW,gBAAgB;IAC3B,SAAS,WAAW;CACrB"}
|
|
@@ -51,8 +51,10 @@ export var ExternalProvider_ExchangeProtocol_Kind;
|
|
|
51
51
|
* `EngineCapability.AI_DOCUMENT_EXTRACTION` slot so an application selects its OCR provider
|
|
52
52
|
* independently of chat and embeddings — three unrelated procurement decisions.
|
|
53
53
|
*
|
|
54
|
-
* NOT to be confused with
|
|
55
|
-
*
|
|
54
|
+
* NOT to be confused with PDF *generation* (templates → bytes), which is the `pdfTemplates`
|
|
55
|
+
* surface and is semantically the opposite direction. It has no provider slot: the
|
|
56
|
+
* `EngineCapability.DOCUMENT_GENERATION` this paragraph used to name was withdrawn because no
|
|
57
|
+
* provider capability token could ever fill it.
|
|
56
58
|
*/
|
|
57
59
|
ExternalProvider_ExchangeProtocol_Kind["DOCUMENT_EXTRACTION_PROVIDER"] = "document_extraction_provider";
|
|
58
60
|
/** Reserved — audio generation (TTS / music). Serves the AUDIO modality. Not yet implemented. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commons.external-connectors-models.schemas.js","sourceRoot":"","sources":["../../../../src/core/commons.external-connectors-models.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,yCAAyC,EAAE,0BAA0B,EAAE,mCAAmC,EAAE,6CAA6C,EAAE,MAAM,+CAA+C,CAAC;AAG1N,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"commons.external-connectors-models.schemas.js","sourceRoot":"","sources":["../../../../src/core/commons.external-connectors-models.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from \"zod\";\nimport { ExternalProvider_Auth_ConfigurationSchema, ExternalProvider_Auth_Kind, ExternalProvider_AuthProfile_Schema, ExternalProvider_RateLimitConfigurationSchema } from \"./security.external-connectors-models.schemas\";\n\n\nexport enum ExternalProvider_ExchangeProtocol_Kind {\n // WEB\n REST_API = \"rest_api\",\n WEBHOOK_ORIGINATOR = \"webhook_originator\",\n // SOAP ?\n \n // AI\n LLM_PROVIDER = \"llm_provider\",\n MCP_CONNECTOR = \"mcp_connector\",\n A2A_CONNECTOR = \"a2a_connector\",\n /**\n * Zed's Agent Client Protocol — a JSON-RPC session between Wildo (the client)\n * and a CODING AGENT subprocess that reads and writes a workspace, runs\n * commands, and calls back for permission.\n *\n * Its own protocol kind rather than a mode of `CLI_RUNTIME`, for the reason\n * `EMBEDDINGS_PROVIDER` records above and one more that is specific to it: a\n * coding agent is not a one-shot text call wearing a subprocess. Every\n * capability the previous CLI transport lacked — token and cost accounting, a\n * permission channel, cancellation, resumption, live progress — was missing\n * because the one-shot shape has nowhere to put it, not because nobody had\n * implemented it yet.\n *\n * NOT to be confused with the IBM/BeeAI \"Agent Communication Protocol\", which\n * shares the acronym and is agent-to-agent — that space is `A2A_CONNECTOR`.\n */\n AGENT_CLIENT_PROTOCOL = \"agent_client_protocol\",\n // AI — multimodal generation (artifact-modality axis)\n /** Text-to-image generation (wired: gpt-image). Serves the IMAGE modality. */\n IMAGE_PROVIDER = \"image_provider\",\n /**\n * Text → vector embeddings (wired: OpenAI `text-embedding-3-*`). Serves the RAG derived-data\n * tier (corpus embedding via the `rag:embedding-drain` worker; query-time embedding in\n * retrieval). Deliberately its OWN protocol kind rather than a sixth `LLMProvider_OperationKey`\n * (RAG plan DL2): an unmapped LLM operation key fails SILENTLY across six consumer surfaces\n * (registry semantic-operation map, output normalization, executor dispatch, capability slot,\n * usage completeness, observability sink), whereas a new protocol kind fails COMPILATION at\n * every `runtimeContract.kind` switch — the `IMAGE_PROVIDER` precedent. It also gets its own\n * `EngineCapability.AI_EMBEDDINGS` slot so an application can select its embeddings provider\n * independently of its chat provider.\n */\n EMBEDDINGS_PROVIDER = \"embeddings_provider\",\n /**\n * Document bytes → text (wired: Mistral `mistral-ocr-latest`). Serves the file-side text\n * provider that `FileTextExtractionBackendService` owns, whose largest consumer is\n * `.ragSource()` corpus ingestion.\n *\n * Its own kind for the reason `EMBEDDINGS_PROVIDER` records above, and it fills its own\n * `EngineCapability.AI_DOCUMENT_EXTRACTION` slot so an application selects its OCR provider\n * independently of chat and embeddings — three unrelated procurement decisions.\n *\n * NOT to be confused with PDF *generation* (templates → bytes), which is the `pdfTemplates`\n * surface and is semantically the opposite direction. It has no provider slot: the\n * `EngineCapability.DOCUMENT_GENERATION` this paragraph used to name was withdrawn because no\n * provider capability token could ever fill it.\n */\n DOCUMENT_EXTRACTION_PROVIDER = \"document_extraction_provider\",\n /** Reserved — audio generation (TTS / music). Serves the AUDIO modality. Not yet implemented. */\n AUDIO_PROVIDER = \"audio_provider\",\n /** Reserved — video generation. Serves the VIDEO modality. Not yet implemented. */\n VIDEO_PROVIDER = \"video_provider\",\n \n // INFRA\n EMAIL_PROVIDER = \"email_provider\",\n GIT_PROVIDER = \"git_provider\",\n GRPC = \"grpc\",\n \n // AUTH\n SSO_OAUTH2 = \"sso_oauth2\",\n SSO_SAML = \"sso_saml\",\n // OPENID_CONNECT ?\n\n // BILLING\n BILLING_PROVIDER = \"billing_provider\",\n\n // SMS (Phase G2)\n SMS_PROVIDER = \"sms_provider\",\n\n // FRONTEND\n FRONTEND_SDK = \"frontend_sdk\",\n}\n\nexport enum APPLICATION_ENVIRONMENT {\n DEVELOPMENT = \"development\",\n STAGING = \"staging\",\n PRODUCTION = \"production\",\n}\n\nexport enum ExternalProvider_Status {\n ACTIVE = \"active\",\n INACTIVE = \"inactive\",\n BUZY = \"busy\",\n OFFLINE = \"offline\",\n DEPRECATED = \"deprecated\",\n}\n\n\nexport enum API_HttpMethod {\n GET = \"GET\",\n POST = \"POST\",\n PUT = \"PUT\",\n PATCH = \"PATCH\",\n DELETE = \"DELETE\",\n HEAD = \"HEAD\",\n OPTIONS = \"OPTIONS\",\n}\n\n/**\n * Shared protocol profile fields.\n *\n * These fields are transport-oriented hints that many protocols use, but they\n * are not universally meaningful. Execution-oriented protocols such as a local\n * CLI runtime should not need to invent fake HTTP endpoints or auth profiles\n * just to satisfy the shared contract.\n */\nexport const ExternalProvider_ExchangeProtocol_Profile_BaseSchema = z.object({\n endpoints: z.record(z.enum(APPLICATION_ENVIRONMENT), z.string()).optional(),\n availableAuthMethods: z.array(z.enum(ExternalProvider_Auth_Kind)).optional(),\n authProfiles: z.array(ExternalProvider_AuthProfile_Schema).optional(),\n});\n\n/**\n * Shared protocol configuration fields.\n *\n * `authConfig` remains available for protocols that resolve secrets through the\n * generic provider auth model, but it is optional because execution-oriented\n * protocols can own their own auth/runtime policy contract.\n */\nexport const ExternalProvider_ExchangeProtocol_Configuration_BaseSchema = z.object({\n enabled: z.boolean(),\n authConfig: ExternalProvider_Auth_ConfigurationSchema.optional(),\n rateLimitConfig: ExternalProvider_RateLimitConfigurationSchema.optional(),\n});\n\nexport const ExternalProvider_ExchangeProtocol_Status_BaseSchema = z.object({\n protocolKind: z.enum(ExternalProvider_ExchangeProtocol_Kind),\n status: z.enum(ExternalProvider_Status),\n lastCheckedAt: z.string(),\n errorReason: z.string().optional(),\n});\n\nexport type ExternalProvider_ExchangeProtocol_Profile_Base = z.infer<typeof ExternalProvider_ExchangeProtocol_Profile_BaseSchema>;\nexport type ExternalProvider_ExchangeProtocol_Configuration_Base = z.infer<typeof ExternalProvider_ExchangeProtocol_Configuration_BaseSchema>;\nexport type ExternalProvider_ExchangeProtocol_Status_Base = z.infer<typeof ExternalProvider_ExchangeProtocol_Status_BaseSchema>;\n\nexport enum ExternalProvider_IO_Direction {\n INBOUND = \"inbound\",\n OUTBOUND = \"outbound\",\n BIDIRECTIONAL = \"bidirectional\",\n}\n\nexport enum ExternalProvider_IO_InteractionPattern {\n REQUEST_RESPONSE = \"request_response\",\n EVENT_BASED = \"event_based\",\n STREAMING = \"stream\",\n}\n\n"]}
|
|
@@ -113,6 +113,24 @@ export declare enum AgentClientProtocol_PermissionCeiling {
|
|
|
113
113
|
* outright, and {@link AUTO_ACCEPT_EDITS} admits precisely the inverse of what research needs.
|
|
114
114
|
*/
|
|
115
115
|
AUTO_ACCEPT_READS = "auto_accept_reads",
|
|
116
|
+
/**
|
|
117
|
+
* The non-mutating kinds AND the file-mutating kinds are auto-accepted; `execute` and the
|
|
118
|
+
* unclassified `other` must still be answered — and with no human at the other end, that means
|
|
119
|
+
* denied.
|
|
120
|
+
*
|
|
121
|
+
* Added 2026-09-04 for the research-agent evidence store, and MEASURED before it existed rather
|
|
122
|
+
* than after: switching the research profile from {@link AUTO_ACCEPT_READS} to
|
|
123
|
+
* {@link AUTO_ACCEPT_EDITS} — so the agent could persist findings to disk — silently inverted the
|
|
124
|
+
* lane's whole posture, because the ceilings are kind-SETS, not nested ranks: a live compliance
|
|
125
|
+
* run spent two rounds with every WebFetch/WebSearch refused, and its only output was a store
|
|
126
|
+
* note titled "NO EVIDENCE COLLECTED". A lane that both reads the world and persists what it
|
|
127
|
+
* read needs this member; neither existing set contains the other.
|
|
128
|
+
*
|
|
129
|
+
* The confinement story is unchanged: this ceiling decides KINDS, and the dispatch's location
|
|
130
|
+
* predicate still decides PATHS — a research profile on this ceiling with a store-only predicate
|
|
131
|
+
* can fetch anything and write only its evidence directory.
|
|
132
|
+
*/
|
|
133
|
+
AUTO_ACCEPT_READS_AND_EDITS = "auto_accept_reads_and_edits",
|
|
116
134
|
/** No permission gate. Reserve for a disposable or isolated workspace. */
|
|
117
135
|
UNRESTRICTED = "unrestricted"
|
|
118
136
|
}
|
|
@@ -190,6 +208,8 @@ export declare const AgentClientProtocol_ExecutionProfileSchema: z.ZodObject<{
|
|
|
190
208
|
permissionCeiling: z.ZodDefault<z.ZodEnum<typeof AgentClientProtocol_PermissionCeiling>>;
|
|
191
209
|
hostConfigurationInheritance: z.ZodDefault<z.ZodEnum<typeof AgentClientProtocol_HostConfigurationInheritance>>;
|
|
192
210
|
turnTimeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
211
|
+
maxAutoContinuations: z.ZodDefault<z.ZodNumber>;
|
|
212
|
+
awaitingInputTtlMs: z.ZodDefault<z.ZodNumber>;
|
|
193
213
|
maximumRecordedEventBytes: z.ZodOptional<z.ZodNumber>;
|
|
194
214
|
sessionMetaExtensions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
195
215
|
}, z.core.$strict>;
|
|
@@ -346,6 +366,8 @@ export declare const AgentClientProtocol_ConfigurationSchema: z.ZodObject<{
|
|
|
346
366
|
permissionCeiling: z.ZodDefault<z.ZodEnum<typeof AgentClientProtocol_PermissionCeiling>>;
|
|
347
367
|
hostConfigurationInheritance: z.ZodDefault<z.ZodEnum<typeof AgentClientProtocol_HostConfigurationInheritance>>;
|
|
348
368
|
turnTimeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
369
|
+
maxAutoContinuations: z.ZodDefault<z.ZodNumber>;
|
|
370
|
+
awaitingInputTtlMs: z.ZodDefault<z.ZodNumber>;
|
|
349
371
|
maximumRecordedEventBytes: z.ZodOptional<z.ZodNumber>;
|
|
350
372
|
sessionMetaExtensions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
351
373
|
}, z.core.$strict>>;
|
|
@@ -398,6 +420,87 @@ export declare enum CodingAgent_StopReason {
|
|
|
398
420
|
*/
|
|
399
421
|
UNRECOGNISED = "wildo.unrecognised"
|
|
400
422
|
}
|
|
423
|
+
/**
|
|
424
|
+
* What an END_TURN actually meant — the judgment the turn ladder branches on.
|
|
425
|
+
*
|
|
426
|
+
* ACP delivers every voluntary stop identically: `end_turn` plus whatever the
|
|
427
|
+
* agent last said. Three very different situations arrive in that one shape,
|
|
428
|
+
* and only reading the message tells them apart, which is why this is decided
|
|
429
|
+
* by an auxiliary LLM classification rather than by a heuristic on the text:
|
|
430
|
+
* a regex that recognises "shall I continue?" is an invented vocabulary for
|
|
431
|
+
* someone else's prose.
|
|
432
|
+
*/
|
|
433
|
+
export declare enum CodingAgent_EndOfTurnClassification {
|
|
434
|
+
/** The agent finished the task; the turn is a final result. */
|
|
435
|
+
TASK_COMPLETE = "task_complete",
|
|
436
|
+
/**
|
|
437
|
+
* The agent paused of its own accord — "next?", "want me to proceed?" — a
|
|
438
|
+
* checkpoint reflex, not a need. The ladder answers it with the continuation
|
|
439
|
+
* prompt instead of surfacing it, because at this level those checkpoints are
|
|
440
|
+
* deliberately avoided (autonomy directive, 2026-09-04).
|
|
441
|
+
*/
|
|
442
|
+
SELF_PAUSE = "self_pause",
|
|
443
|
+
/**
|
|
444
|
+
* The agent asked something only the caller can answer — a real decision, a
|
|
445
|
+
* missing credential, an ambiguity in the task. The session parks and the
|
|
446
|
+
* question is surfaced; auto-continuing would make the agent answer itself.
|
|
447
|
+
*/
|
|
448
|
+
NEEDS_INPUT = "needs_input",
|
|
449
|
+
/**
|
|
450
|
+
* The classifier itself failed or timed out. FAILS OPEN to settlement: the
|
|
451
|
+
* turn is treated as TASK_COMPLETE, because an auxiliary call must never hang
|
|
452
|
+
* the autonomous lane or discard a mutated workspace — but the failure is
|
|
453
|
+
* recorded as this value rather than laundered into a confident judgment.
|
|
454
|
+
*/
|
|
455
|
+
CLASSIFIER_UNAVAILABLE = "classifier_unavailable"
|
|
456
|
+
}
|
|
457
|
+
/**
|
|
458
|
+
* One auto-continuation the turn ladder performed, recorded per turn boundary.
|
|
459
|
+
*
|
|
460
|
+
* Kept as a record rather than a counter for the same reason permission
|
|
461
|
+
* decisions are: a run that continued five times and one that never paused are
|
|
462
|
+
* different runs, and the difference is diagnosable only if each boundary says
|
|
463
|
+
* what was classified and what was sent back.
|
|
464
|
+
*/
|
|
465
|
+
export declare const CodingAgent_ContinuationRecordSchema: z.ZodObject<{
|
|
466
|
+
/** 1-based index of the turn that ENDED at this boundary. */
|
|
467
|
+
turnIndex: z.ZodNumber;
|
|
468
|
+
classification: z.ZodEnum<typeof CodingAgent_EndOfTurnClassification>;
|
|
469
|
+
/**
|
|
470
|
+
* The tail of the agent's end-of-turn message the classification was made
|
|
471
|
+
* from. A bounded excerpt, not the transcript — enough to audit the judgment.
|
|
472
|
+
*/
|
|
473
|
+
agentMessageTail: z.ZodOptional<z.ZodString>;
|
|
474
|
+
}, z.core.$strict>;
|
|
475
|
+
export type CodingAgent_ContinuationRecord = z.infer<typeof CodingAgent_ContinuationRecordSchema>;
|
|
476
|
+
/**
|
|
477
|
+
* A run that STOPPED WITHOUT FINISHING because the agent needs an answer.
|
|
478
|
+
*
|
|
479
|
+
* The ACP sibling of `AgentApprovalSuspension` on the LLM transport: the
|
|
480
|
+
* invocation returns, but its output must not be read as a completed result —
|
|
481
|
+
* `suspension` present means the final message is a QUESTION. The caller
|
|
482
|
+
* surfaces the question, and the answer re-enters the SAME session:
|
|
483
|
+
* `resumable: true` promises the agent advertised `loadSession`, so the session
|
|
484
|
+
* survives the child process and even a host restart.
|
|
485
|
+
*/
|
|
486
|
+
export declare const CodingAgent_SessionSuspensionSchema: z.ZodObject<{
|
|
487
|
+
/** The ACP session to resume with the answer. */
|
|
488
|
+
sessionId: z.ZodString;
|
|
489
|
+
/** The agent's question, verbatim — its end-of-turn message. */
|
|
490
|
+
question: z.ZodString;
|
|
491
|
+
/** 1-based turn the session parked after. */
|
|
492
|
+
turnIndex: z.ZodNumber;
|
|
493
|
+
/**
|
|
494
|
+
* Whether the session can be re-entered after the agent process is gone.
|
|
495
|
+
* False when the agent does not advertise `loadSession`: the question is
|
|
496
|
+
* still real, but answering it starts a NEW session that must restate task
|
|
497
|
+
* context — a degradation the caller should surface, not hide.
|
|
498
|
+
*/
|
|
499
|
+
resumable: z.ZodBoolean;
|
|
500
|
+
/** When the parked child process will be closed (ISO timestamp). */
|
|
501
|
+
parkedUntil: z.ZodOptional<z.ZodString>;
|
|
502
|
+
}, z.core.$strict>;
|
|
503
|
+
export type CodingAgent_SessionSuspension = z.infer<typeof CodingAgent_SessionSuspensionSchema>;
|
|
401
504
|
/**
|
|
402
505
|
* What one coding turn consumed.
|
|
403
506
|
*
|
|
@@ -506,6 +609,7 @@ export type CodingAgent_OperationModelConfiguration = z.infer<typeof CodingAgent
|
|
|
506
609
|
export declare const CodingAgent_RunTaskInputSchema: z.ZodObject<{
|
|
507
610
|
prompt: z.ZodString;
|
|
508
611
|
requestedPermissionCeiling: z.ZodOptional<z.ZodEnum<typeof AgentClientProtocol_PermissionCeiling>>;
|
|
612
|
+
continuationOfSessionId: z.ZodOptional<z.ZodString>;
|
|
509
613
|
}, z.core.$strip>;
|
|
510
614
|
export type CodingAgent_RunTaskInput = z.infer<typeof CodingAgent_RunTaskInputSchema>;
|
|
511
615
|
export declare const CodingAgent_RunTaskOutputSchema: z.ZodObject<{
|
|
@@ -521,6 +625,34 @@ export declare const CodingAgent_RunTaskOutputSchema: z.ZodObject<{
|
|
|
521
625
|
offeredOptionKinds: z.ZodArray<z.ZodString>;
|
|
522
626
|
}, z.core.$strict>>>;
|
|
523
627
|
rawStopReason: z.ZodOptional<z.ZodString>;
|
|
628
|
+
turnCount: z.ZodOptional<z.ZodNumber>;
|
|
629
|
+
continuations: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
630
|
+
/** 1-based index of the turn that ENDED at this boundary. */
|
|
631
|
+
turnIndex: z.ZodNumber;
|
|
632
|
+
classification: z.ZodEnum<typeof CodingAgent_EndOfTurnClassification>;
|
|
633
|
+
/**
|
|
634
|
+
* The tail of the agent's end-of-turn message the classification was made
|
|
635
|
+
* from. A bounded excerpt, not the transcript — enough to audit the judgment.
|
|
636
|
+
*/
|
|
637
|
+
agentMessageTail: z.ZodOptional<z.ZodString>;
|
|
638
|
+
}, z.core.$strict>>>;
|
|
639
|
+
suspension: z.ZodOptional<z.ZodObject<{
|
|
640
|
+
/** The ACP session to resume with the answer. */
|
|
641
|
+
sessionId: z.ZodString;
|
|
642
|
+
/** The agent's question, verbatim — its end-of-turn message. */
|
|
643
|
+
question: z.ZodString;
|
|
644
|
+
/** 1-based turn the session parked after. */
|
|
645
|
+
turnIndex: z.ZodNumber;
|
|
646
|
+
/**
|
|
647
|
+
* Whether the session can be re-entered after the agent process is gone.
|
|
648
|
+
* False when the agent does not advertise `loadSession`: the question is
|
|
649
|
+
* still real, but answering it starts a NEW session that must restate task
|
|
650
|
+
* context — a degradation the caller should surface, not hide.
|
|
651
|
+
*/
|
|
652
|
+
resumable: z.ZodBoolean;
|
|
653
|
+
/** When the parked child process will be closed (ISO timestamp). */
|
|
654
|
+
parkedUntil: z.ZodOptional<z.ZodString>;
|
|
655
|
+
}, z.core.$strict>>;
|
|
524
656
|
}, z.core.$strip>;
|
|
525
657
|
export type CodingAgent_RunTaskOutput = z.infer<typeof CodingAgent_RunTaskOutputSchema>;
|
|
526
658
|
//# sourceMappingURL=agent-client-protocol.external-connectors-models.schemas.d.ts.map
|
package/dist/esm/protocols/agent-client-protocol.external-connectors-models.schemas.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-client-protocol.external-connectors-models.schemas.d.ts","sourceRoot":"","sources":["../../../../src/protocols/agent-client-protocol.external-connectors-models.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAEL,yCAAyC,EAC1C,MAAM,uDAAuD,CAAC;AAC/D,OAAO,EACL,uBAAuB,EACvB,oDAAoD,EAEpD,sCAAsC,EACtC,8CAA8C,EAG/C,MAAM,oDAAoD,CAAC;AAoC5D;;;;;;;;GAQG;AACH,oBAAY,8BAA8B;IACxC,kBAAkB,uBAAuB;CAC1C;AAED;;;;;;;;GAQG;AACH,oBAAY,4BAA4B;IACtC,oFAAoF;IACpF,IAAI,SAAS;IACb;;;;;OAKG;IACH,YAAY,iBAAiB;IAC7B,gFAAgF;IAChF,wBAAwB,6BAA6B;CACtD;AAED;;;;;;;GAOG;AACH,oBAAY,0CAA0C;IACpD,cAAc,mBAAmB;IACjC,uBAAuB,4BAA4B;CACpD;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,oBAAY,qCAAqC;IAC/C;;;;;;;;;;OAUG;IACH,aAAa,kBAAkB;IAC/B;;;;;;;;;;;;;;;OAeG;IACH,iBAAiB,sBAAsB;IACvC;;;;;;;;;;;;;;OAcG;IACH,iBAAiB,sBAAsB;IACvC,0EAA0E;IAC1E,YAAY,iBAAiB;CAC9B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,wCAAwC,CACtD,OAAO,EAAE,qCAAqC,GAC7C,MAAM,
|
|
1
|
+
{"version":3,"file":"agent-client-protocol.external-connectors-models.schemas.d.ts","sourceRoot":"","sources":["../../../../src/protocols/agent-client-protocol.external-connectors-models.schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -150,6 +150,24 @@ export var AgentClientProtocol_PermissionCeiling;
|
|
|
150
150
|
* outright, and {@link AUTO_ACCEPT_EDITS} admits precisely the inverse of what research needs.
|
|
151
151
|
*/
|
|
152
152
|
AgentClientProtocol_PermissionCeiling["AUTO_ACCEPT_READS"] = "auto_accept_reads";
|
|
153
|
+
/**
|
|
154
|
+
* The non-mutating kinds AND the file-mutating kinds are auto-accepted; `execute` and the
|
|
155
|
+
* unclassified `other` must still be answered — and with no human at the other end, that means
|
|
156
|
+
* denied.
|
|
157
|
+
*
|
|
158
|
+
* Added 2026-09-04 for the research-agent evidence store, and MEASURED before it existed rather
|
|
159
|
+
* than after: switching the research profile from {@link AUTO_ACCEPT_READS} to
|
|
160
|
+
* {@link AUTO_ACCEPT_EDITS} — so the agent could persist findings to disk — silently inverted the
|
|
161
|
+
* lane's whole posture, because the ceilings are kind-SETS, not nested ranks: a live compliance
|
|
162
|
+
* run spent two rounds with every WebFetch/WebSearch refused, and its only output was a store
|
|
163
|
+
* note titled "NO EVIDENCE COLLECTED". A lane that both reads the world and persists what it
|
|
164
|
+
* read needs this member; neither existing set contains the other.
|
|
165
|
+
*
|
|
166
|
+
* The confinement story is unchanged: this ceiling decides KINDS, and the dispatch's location
|
|
167
|
+
* predicate still decides PATHS — a research profile on this ceiling with a store-only predicate
|
|
168
|
+
* can fetch anything and write only its evidence directory.
|
|
169
|
+
*/
|
|
170
|
+
AgentClientProtocol_PermissionCeiling["AUTO_ACCEPT_READS_AND_EDITS"] = "auto_accept_reads_and_edits";
|
|
153
171
|
/** No permission gate. Reserve for a disposable or isolated workspace. */
|
|
154
172
|
AgentClientProtocol_PermissionCeiling["UNRESTRICTED"] = "unrestricted";
|
|
155
173
|
})(AgentClientProtocol_PermissionCeiling || (AgentClientProtocol_PermissionCeiling = {}));
|
|
@@ -180,8 +198,10 @@ export function agentClientProtocolPermissionCeilingRank(ceiling) {
|
|
|
180
198
|
return 1;
|
|
181
199
|
case AgentClientProtocol_PermissionCeiling.AUTO_ACCEPT_EDITS:
|
|
182
200
|
return 2;
|
|
183
|
-
case AgentClientProtocol_PermissionCeiling.
|
|
201
|
+
case AgentClientProtocol_PermissionCeiling.AUTO_ACCEPT_READS_AND_EDITS:
|
|
184
202
|
return 3;
|
|
203
|
+
case AgentClientProtocol_PermissionCeiling.UNRESTRICTED:
|
|
204
|
+
return 4;
|
|
185
205
|
}
|
|
186
206
|
}
|
|
187
207
|
/**
|
|
@@ -274,6 +294,32 @@ export const AgentClientProtocol_ExecutionProfileSchema = z.object({
|
|
|
274
294
|
* cleanly. A hard kill remains the fallback if the agent does not honour it.
|
|
275
295
|
*/
|
|
276
296
|
turnTimeoutMs: z.number().int().positive().optional(),
|
|
297
|
+
/**
|
|
298
|
+
* How many times one invocation may AUTO-CONTINUE the agent after it ends a
|
|
299
|
+
* turn with a self-imposed pause ("shall I continue?").
|
|
300
|
+
*
|
|
301
|
+
* The autonomous lane's answer to the agent's own checkpoint reflex: a turn
|
|
302
|
+
* classified as SELF_PAUSE is re-prompted to continue on the same session
|
|
303
|
+
* rather than read as a finished result. Bounded because an agent that pauses
|
|
304
|
+
* forever must eventually be settled rather than looped — on exhaustion the
|
|
305
|
+
* run settles with what it has, recorded as such. Zero disables continuation
|
|
306
|
+
* entirely (every END_TURN is final, the pre-2026-09 behaviour).
|
|
307
|
+
*/
|
|
308
|
+
maxAutoContinuations: z.number().int().nonnegative().default(8),
|
|
309
|
+
/**
|
|
310
|
+
* How long an operator answer to a parked question stays valid — the deadline
|
|
311
|
+
* stamped onto the suspension as `parkedUntil`.
|
|
312
|
+
*
|
|
313
|
+
* The parked run does NOT hold a live agent process open for this window: the
|
|
314
|
+
* child is closed the moment the run parks (holding it would occupy the lane's
|
|
315
|
+
* single-flight slot while an operator who may never answer decides). Because
|
|
316
|
+
* the agent persists the session on disk, a later answer re-enters it through
|
|
317
|
+
* `session/load` — so this is an informational freshness bound the host and UX
|
|
318
|
+
* surface, not a timer that reaps a process. It applies only when the agent
|
|
319
|
+
* advertises `loadSession`; otherwise the question is real but unanswerable
|
|
320
|
+
* on the same session, and `resumable` says so.
|
|
321
|
+
*/
|
|
322
|
+
awaitingInputTtlMs: z.number().int().positive().default(900_000),
|
|
277
323
|
/**
|
|
278
324
|
* Ceiling on the bytes of session events this run PERSISTS.
|
|
279
325
|
*
|
|
@@ -469,6 +515,86 @@ export var CodingAgent_StopReason;
|
|
|
469
515
|
*/
|
|
470
516
|
CodingAgent_StopReason["UNRECOGNISED"] = "wildo.unrecognised";
|
|
471
517
|
})(CodingAgent_StopReason || (CodingAgent_StopReason = {}));
|
|
518
|
+
/**
|
|
519
|
+
* What an END_TURN actually meant — the judgment the turn ladder branches on.
|
|
520
|
+
*
|
|
521
|
+
* ACP delivers every voluntary stop identically: `end_turn` plus whatever the
|
|
522
|
+
* agent last said. Three very different situations arrive in that one shape,
|
|
523
|
+
* and only reading the message tells them apart, which is why this is decided
|
|
524
|
+
* by an auxiliary LLM classification rather than by a heuristic on the text:
|
|
525
|
+
* a regex that recognises "shall I continue?" is an invented vocabulary for
|
|
526
|
+
* someone else's prose.
|
|
527
|
+
*/
|
|
528
|
+
export var CodingAgent_EndOfTurnClassification;
|
|
529
|
+
(function (CodingAgent_EndOfTurnClassification) {
|
|
530
|
+
/** The agent finished the task; the turn is a final result. */
|
|
531
|
+
CodingAgent_EndOfTurnClassification["TASK_COMPLETE"] = "task_complete";
|
|
532
|
+
/**
|
|
533
|
+
* The agent paused of its own accord — "next?", "want me to proceed?" — a
|
|
534
|
+
* checkpoint reflex, not a need. The ladder answers it with the continuation
|
|
535
|
+
* prompt instead of surfacing it, because at this level those checkpoints are
|
|
536
|
+
* deliberately avoided (autonomy directive, 2026-09-04).
|
|
537
|
+
*/
|
|
538
|
+
CodingAgent_EndOfTurnClassification["SELF_PAUSE"] = "self_pause";
|
|
539
|
+
/**
|
|
540
|
+
* The agent asked something only the caller can answer — a real decision, a
|
|
541
|
+
* missing credential, an ambiguity in the task. The session parks and the
|
|
542
|
+
* question is surfaced; auto-continuing would make the agent answer itself.
|
|
543
|
+
*/
|
|
544
|
+
CodingAgent_EndOfTurnClassification["NEEDS_INPUT"] = "needs_input";
|
|
545
|
+
/**
|
|
546
|
+
* The classifier itself failed or timed out. FAILS OPEN to settlement: the
|
|
547
|
+
* turn is treated as TASK_COMPLETE, because an auxiliary call must never hang
|
|
548
|
+
* the autonomous lane or discard a mutated workspace — but the failure is
|
|
549
|
+
* recorded as this value rather than laundered into a confident judgment.
|
|
550
|
+
*/
|
|
551
|
+
CodingAgent_EndOfTurnClassification["CLASSIFIER_UNAVAILABLE"] = "classifier_unavailable";
|
|
552
|
+
})(CodingAgent_EndOfTurnClassification || (CodingAgent_EndOfTurnClassification = {}));
|
|
553
|
+
/**
|
|
554
|
+
* One auto-continuation the turn ladder performed, recorded per turn boundary.
|
|
555
|
+
*
|
|
556
|
+
* Kept as a record rather than a counter for the same reason permission
|
|
557
|
+
* decisions are: a run that continued five times and one that never paused are
|
|
558
|
+
* different runs, and the difference is diagnosable only if each boundary says
|
|
559
|
+
* what was classified and what was sent back.
|
|
560
|
+
*/
|
|
561
|
+
export const CodingAgent_ContinuationRecordSchema = z.strictObject({
|
|
562
|
+
/** 1-based index of the turn that ENDED at this boundary. */
|
|
563
|
+
turnIndex: z.number().int().positive(),
|
|
564
|
+
classification: z.enum(CodingAgent_EndOfTurnClassification),
|
|
565
|
+
/**
|
|
566
|
+
* The tail of the agent's end-of-turn message the classification was made
|
|
567
|
+
* from. A bounded excerpt, not the transcript — enough to audit the judgment.
|
|
568
|
+
*/
|
|
569
|
+
agentMessageTail: z.string().optional(),
|
|
570
|
+
});
|
|
571
|
+
/**
|
|
572
|
+
* A run that STOPPED WITHOUT FINISHING because the agent needs an answer.
|
|
573
|
+
*
|
|
574
|
+
* The ACP sibling of `AgentApprovalSuspension` on the LLM transport: the
|
|
575
|
+
* invocation returns, but its output must not be read as a completed result —
|
|
576
|
+
* `suspension` present means the final message is a QUESTION. The caller
|
|
577
|
+
* surfaces the question, and the answer re-enters the SAME session:
|
|
578
|
+
* `resumable: true` promises the agent advertised `loadSession`, so the session
|
|
579
|
+
* survives the child process and even a host restart.
|
|
580
|
+
*/
|
|
581
|
+
export const CodingAgent_SessionSuspensionSchema = z.strictObject({
|
|
582
|
+
/** The ACP session to resume with the answer. */
|
|
583
|
+
sessionId: z.string().min(1),
|
|
584
|
+
/** The agent's question, verbatim — its end-of-turn message. */
|
|
585
|
+
question: z.string().min(1),
|
|
586
|
+
/** 1-based turn the session parked after. */
|
|
587
|
+
turnIndex: z.number().int().positive(),
|
|
588
|
+
/**
|
|
589
|
+
* Whether the session can be re-entered after the agent process is gone.
|
|
590
|
+
* False when the agent does not advertise `loadSession`: the question is
|
|
591
|
+
* still real, but answering it starts a NEW session that must restate task
|
|
592
|
+
* context — a degradation the caller should surface, not hide.
|
|
593
|
+
*/
|
|
594
|
+
resumable: z.boolean(),
|
|
595
|
+
/** When the parked child process will be closed (ISO timestamp). */
|
|
596
|
+
parkedUntil: z.string().optional(),
|
|
597
|
+
});
|
|
472
598
|
/**
|
|
473
599
|
* What one coding turn consumed.
|
|
474
600
|
*
|
|
@@ -585,6 +711,16 @@ export const CodingAgent_RunTaskInputSchema = z.object({
|
|
|
585
711
|
* authority, only leave it where the profile put it.
|
|
586
712
|
*/
|
|
587
713
|
requestedPermissionCeiling: z.enum(AgentClientProtocol_PermissionCeiling).optional(),
|
|
714
|
+
/**
|
|
715
|
+
* Present when this run ANSWERS a parked session rather than starting a task.
|
|
716
|
+
*
|
|
717
|
+
* Carries the `sessionId` from a prior run's `suspension`; the transport
|
|
718
|
+
* re-enters that session via `session/load` and delivers `prompt` (the
|
|
719
|
+
* answer) as the next turn. Refused — not degraded — when the agent does not
|
|
720
|
+
* advertise `loadSession`: silently starting a fresh session would present a
|
|
721
|
+
* context-less answer as a continuation.
|
|
722
|
+
*/
|
|
723
|
+
continuationOfSessionId: z.string().min(1).optional(),
|
|
588
724
|
});
|
|
589
725
|
export const CodingAgent_RunTaskOutputSchema = z.object({
|
|
590
726
|
/** The agent's closing message — its own account of what it did. */
|
|
@@ -635,5 +771,22 @@ export const CodingAgent_RunTaskOutputSchema = z.object({
|
|
|
635
771
|
* define. Present exactly when `stopReason` is `UNRECOGNISED`.
|
|
636
772
|
*/
|
|
637
773
|
rawStopReason: z.string().optional(),
|
|
774
|
+
/**
|
|
775
|
+
* How many prompt turns this invocation drove on the session. Absent means
|
|
776
|
+
* one — the single-turn shape every pre-ladder consumer already assumes.
|
|
777
|
+
*/
|
|
778
|
+
turnCount: z.number().int().positive().optional(),
|
|
779
|
+
/**
|
|
780
|
+
* One record per turn boundary the ladder judged — auto-continues, the park,
|
|
781
|
+
* the settlement. See {@link CodingAgent_ContinuationRecordSchema}.
|
|
782
|
+
*/
|
|
783
|
+
continuations: z.array(CodingAgent_ContinuationRecordSchema).optional(),
|
|
784
|
+
/**
|
|
785
|
+
* Present when the run PARKED on a genuine question instead of finishing.
|
|
786
|
+
* `finalMessage` is then the QUESTION, and `stopReason` is the wire-true
|
|
787
|
+
* `END_TURN` — this field is what stops that reading as a completed result.
|
|
788
|
+
* Callers that ignore it record work as done that is waiting on an answer.
|
|
789
|
+
*/
|
|
790
|
+
suspension: CodingAgent_SessionSuspensionSchema.optional(),
|
|
638
791
|
});
|
|
639
792
|
//# sourceMappingURL=agent-client-protocol.external-connectors-models.schemas.js.map
|