@effect-agent/testing 0.1.0-beta.9 → 0.1.0-beta.90

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.
Files changed (55) hide show
  1. package/dist/Certification.d.mts +106 -0
  2. package/dist/Certification.mjs +633 -0
  3. package/dist/Certification.mjs.map +1 -0
  4. package/dist/Chaos.d.mts +126 -0
  5. package/dist/Chaos.mjs +755 -0
  6. package/dist/Chaos.mjs.map +1 -0
  7. package/dist/CodeExecutorConformance.d.mts +33 -0
  8. package/dist/CodeExecutorConformance.mjs +231 -0
  9. package/dist/CodeExecutorConformance.mjs.map +1 -0
  10. package/dist/CodeExecutorSubstitute.d.mts +21 -0
  11. package/dist/CodeExecutorSubstitute.mjs +368 -0
  12. package/dist/CodeExecutorSubstitute.mjs.map +1 -0
  13. package/dist/DocsResearcher.d.mts +276 -0
  14. package/dist/DocsResearcher.mjs +490 -0
  15. package/dist/DocsResearcher.mjs.map +1 -0
  16. package/dist/ScriptedModel-DAvxIiud.d.mts +220 -0
  17. package/dist/ScriptedModel.d.mts +2 -0
  18. package/dist/ScriptedModel.mjs +155 -0
  19. package/dist/ScriptedModel.mjs.map +1 -0
  20. package/dist/TravelPlanner.d.mts +1680 -0
  21. package/dist/TravelPlanner.mjs +1963 -0
  22. package/dist/TravelPlanner.mjs.map +1 -0
  23. package/dist/deterministic-layers-D5owIoke.mjs +358 -0
  24. package/dist/deterministic-layers-D5owIoke.mjs.map +1 -0
  25. package/dist/index.d.mts +2 -3408
  26. package/dist/index.mjs +2 -4771
  27. package/dist/rolldown-runtime-D7D4PA-g.mjs +13 -0
  28. package/package.json +1 -48
  29. package/src/{certification.ts → Certification.ts} +366 -171
  30. package/src/{chaos.ts → Chaos.ts} +241 -127
  31. package/src/{code-executor-conformance.ts → CodeExecutorConformance.ts} +30 -7
  32. package/src/{code-executor-substitute.ts → CodeExecutorSubstitute.ts} +113 -46
  33. package/src/{fixtures/docs-researcher/index.ts → DocsResearcher.ts} +68 -5
  34. package/src/{scripted-model.ts → ScriptedModel.ts} +25 -29
  35. package/src/TravelPlanner.ts +232 -0
  36. package/src/fixtures/docs-researcher/definition.ts +20 -11
  37. package/src/fixtures/docs-researcher/harness.ts +41 -34
  38. package/src/fixtures/docs-researcher/mcp.ts +49 -3
  39. package/src/fixtures/travel-planner/definition.ts +15 -2
  40. package/src/fixtures/travel-planner/deterministic-layers.ts +47 -4
  41. package/src/fixtures/travel-planner/phase2.ts +4 -3
  42. package/src/fixtures/travel-planner/phase3.ts +19 -42
  43. package/src/fixtures/travel-planner/phase4.ts +24 -37
  44. package/src/fixtures/travel-planner/phase5.ts +35 -42
  45. package/src/fixtures/travel-planner/phase6.ts +191 -88
  46. package/src/fixtures/travel-planner/phase7.ts +4 -102
  47. package/src/fixtures/travel-planner/scenarios.ts +3 -4
  48. package/src/fixtures/travel-planner/subagents-durable.ts +35 -61
  49. package/src/fixtures/travel-planner/subagents.ts +36 -14
  50. package/src/index.ts +1 -11
  51. package/src/internal/certification-report.ts +25 -0
  52. package/dist/index.mjs.map +0 -1
  53. package/src/code-executor-conformance.d.ts +0 -30
  54. package/src/fixtures/travel-planner/index.ts +0 -11
  55. package/src/fixtures/warehouse/index.ts +0 -412
@@ -0,0 +1,276 @@
1
+ import { Context, Crypto, Effect, Layer, Schema } from "effect";
2
+ import { Tool, Toolkit } from "effect/unstable/ai";
3
+ import * as Agent from "effect-agent/agent";
4
+ import { ResolvedBinding } from "effect-agent/agent-registration";
5
+ import { DurableSubmitOptions } from "effect-agent/durable-agent-runtime";
6
+ import { ThreadId } from "effect-agent/identifiers";
7
+ import { DefinitionDigests } from "effect-agent/records";
8
+ import * as Subagent from "effect-agent/subagent";
9
+ import { SubagentPolicy } from "effect-agent/subagent";
10
+ import { IdempotencyKey } from "effect-agent/submission-ledger";
11
+ import { RuntimeBinding } from "effect-agent/agent-runtime";
12
+ import { McpConnection, McpConnectionRequest, McpConnector, McpDiscovery, McpServerIdentity, McpToolkitMismatch } from "effect-agent/mcp";
13
+ import { RedactionError, Redactor } from "effect-agent/redaction";
14
+ //#region src/fixtures/docs-researcher/definition.d.ts
15
+ declare const ResearchDocumentId: Schema.brand<Schema.NonEmptyString, "@effect-agent/testing/docs-researcher/ResearchDocumentId">;
16
+ type ResearchDocumentId = typeof ResearchDocumentId.Type;
17
+ /** Bounded summary text: the ONLY child-derived text that may cross to the parent. */
18
+ declare const BoundedSummary: Schema.NonEmptyString;
19
+ declare const DocumentQuery_base: Schema.Class<DocumentQuery, Schema.Struct<{
20
+ readonly documentId: Schema.brand<Schema.NonEmptyString, "@effect-agent/testing/docs-researcher/ResearchDocumentId">;
21
+ }>, {}>;
22
+ declare class DocumentQuery extends DocumentQuery_base {}
23
+ declare const ResearchDocument_base: Schema.Class<ResearchDocument, Schema.Struct<{
24
+ readonly documentId: Schema.brand<Schema.NonEmptyString, "@effect-agent/testing/docs-researcher/ResearchDocumentId">;
25
+ readonly title: Schema.NonEmptyString;
26
+ readonly body: Schema.NonEmptyString;
27
+ }>, {}>;
28
+ /** One bounded research document as the MCP content server exposes it. */
29
+ declare class ResearchDocument extends ResearchDocument_base {}
30
+ declare const DocumentUnavailable_base: Schema.Class<DocumentUnavailable, Schema.TaggedStruct<"DocumentUnavailable", {
31
+ readonly documentId: Schema.brand<Schema.NonEmptyString, "@effect-agent/testing/docs-researcher/ResearchDocumentId">;
32
+ readonly message: Schema.String;
33
+ }>, import("effect/Cause").YieldableError>;
34
+ declare class DocumentUnavailable extends DocumentUnavailable_base {}
35
+ declare const DocumentLibrary_base: Context.ServiceClass<DocumentLibrary, "@effect-agent/testing/docs-researcher/DocumentLibrary", {
36
+ readonly fetch: (query: DocumentQuery) => Effect.Effect<ResearchDocument, DocumentUnavailable>;
37
+ }>;
38
+ /** The content store behind the scripted MCP server. */
39
+ declare class DocumentLibrary extends DocumentLibrary_base {}
40
+ /**
41
+ * The one content tool the doc-summarizer child uses. Its authored JSON
42
+ * schema is what MCP discovery must serve byte-for-byte: the scripted MCP
43
+ * fixture derives its discovery entry from `Tool.getJsonSchema(FetchDocument)`
44
+ * and `validateMcpDiscovery` re-derives and digests both sides (CAP-009).
45
+ */
46
+ declare const FetchDocument: Tool.Tool<"fetch_document", {
47
+ readonly parameters: typeof DocumentQuery;
48
+ readonly success: typeof ResearchDocument;
49
+ readonly failure: typeof DocumentUnavailable;
50
+ readonly failureMode: "error";
51
+ }, DocumentLibrary>;
52
+ declare const DocContentToolkit: Toolkit.Toolkit<{
53
+ readonly fetch_document: Tool.Tool<"fetch_document", {
54
+ readonly parameters: typeof DocumentQuery;
55
+ readonly success: typeof ResearchDocument;
56
+ readonly failure: typeof DocumentUnavailable;
57
+ readonly failureMode: "error";
58
+ }, DocumentLibrary>;
59
+ }>;
60
+ declare const docContentToolkitLayer: import("effect/Layer").Layer<Tool.Handler<"fetch_document">, never, never>;
61
+ /** Never allowed outside a child Thread or an unredacted fixture value. */
62
+ declare const docsDocumentBodySecret = "docs-vault-secret-771";
63
+ /** The corpus document ids in canonical fixture order. */
64
+ declare const researchCorpusDocumentIds: ReadonlyArray<ResearchDocumentId>;
65
+ /** Deterministic library lookup shared by the scripted MCP content handlers. */
66
+ declare const researchDocumentLookup: (query: DocumentQuery) => Effect.Effect<ResearchDocument, DocumentUnavailable>;
67
+ /** The full fixture document (body includes the secret marker — child-side only). */
68
+ declare const researchDocumentFor: (documentId: string) => ResearchDocument;
69
+ /** The distinctive body phrase used by context-isolation assertions. */
70
+ declare const documentBodyPhrase: (documentId: string) => string;
71
+ declare const SummaryBrief_base: Schema.Class<SummaryBrief, Schema.Struct<{
72
+ readonly documentId: Schema.brand<Schema.NonEmptyString, "@effect-agent/testing/docs-researcher/ResearchDocumentId">;
73
+ readonly focus: Schema.NonEmptyString;
74
+ }>, {}>;
75
+ declare class SummaryBrief extends SummaryBrief_base {}
76
+ declare const DocumentSummary_base: Schema.Class<DocumentSummary, Schema.Struct<{
77
+ readonly documentId: Schema.brand<Schema.NonEmptyString, "@effect-agent/testing/docs-researcher/ResearchDocumentId">;
78
+ readonly summary: Schema.NonEmptyString;
79
+ }>, {}>;
80
+ declare class DocumentSummary extends DocumentSummary_base {}
81
+ /** The summary the scripted child writes after fetching the document. */
82
+ declare const documentSummaryFor: (documentId: string) => DocumentSummary;
83
+ declare const encodedDocumentSummary: (documentId: string) => string;
84
+ declare const DocSummarizer: Agent.Definition<typeof SummaryBrief, typeof DocumentSummary, "Fetch the briefed document with fetch_document exactly once, then return only a JSON document summary. Never copy raw notes or secrets into the summary.", Toolkit.Toolkit<{
85
+ readonly fetch_document: Tool.Tool<"fetch_document", {
86
+ readonly parameters: typeof DocumentQuery;
87
+ readonly success: typeof ResearchDocument;
88
+ readonly failure: typeof DocumentUnavailable;
89
+ readonly failureMode: "error";
90
+ }, DocumentLibrary>;
91
+ }>, undefined, undefined, undefined> & {
92
+ readonly id: import("effect/Brand").Brand<"@effect-agent/core/AgentId"> & "doc-summarizer";
93
+ };
94
+ declare const SummaryRequest_base: Schema.Class<SummaryRequest, Schema.Struct<{
95
+ readonly documentId: Schema.brand<Schema.NonEmptyString, "@effect-agent/testing/docs-researcher/ResearchDocumentId">;
96
+ }>, {}>;
97
+ declare class SummaryRequest extends SummaryRequest_base {}
98
+ declare const SummaryFinding_base: Schema.Class<SummaryFinding, Schema.Struct<{
99
+ readonly documentId: Schema.brand<Schema.NonEmptyString, "@effect-agent/testing/docs-researcher/ResearchDocumentId">;
100
+ readonly summary: Schema.NonEmptyString;
101
+ }>, {}>;
102
+ declare class SummaryFinding extends SummaryFinding_base {}
103
+ declare const DocumentSummaryFailed_base: Schema.Class<DocumentSummaryFailed, Schema.TaggedStruct<"DocumentSummaryFailed", {
104
+ readonly childErrorTag: Schema.NonEmptyString;
105
+ }>, import("effect/Cause").YieldableError>;
106
+ declare class DocumentSummaryFailed extends DocumentSummaryFailed_base {}
107
+ /** Finite per-invocation bounds (SUB-009): one fetch per child, two children per Run. */
108
+ declare const documentSummaryPolicy: SubagentPolicy;
109
+ declare const delegateDocumentSummary: Subagent.SubagentDelegation<"delegate_document_summary", typeof SummaryBrief, typeof DocumentSummary, "Fetch the briefed document with fetch_document exactly once, then return only a JSON document summary. Never copy raw notes or secrets into the summary.", {
110
+ readonly fetch_document: Tool.Tool<"fetch_document", {
111
+ readonly parameters: typeof DocumentQuery;
112
+ readonly success: typeof ResearchDocument;
113
+ readonly failure: typeof DocumentUnavailable;
114
+ readonly failureMode: "error";
115
+ }, DocumentLibrary>;
116
+ }, typeof SummaryRequest, typeof SummaryFinding, typeof DocumentSummaryFailed, never, never, "error"> & {
117
+ readonly target: Agent.Definition<typeof SummaryBrief, typeof DocumentSummary, "Fetch the briefed document with fetch_document exactly once, then return only a JSON document summary. Never copy raw notes or secrets into the summary.", Toolkit.Toolkit<{
118
+ readonly fetch_document: Tool.Tool<"fetch_document", {
119
+ readonly parameters: typeof DocumentQuery;
120
+ readonly success: typeof ResearchDocument;
121
+ readonly failure: typeof DocumentUnavailable;
122
+ readonly failureMode: "error";
123
+ }, DocumentLibrary>;
124
+ }>, undefined, undefined, undefined> & {
125
+ readonly id: import("effect/Brand").Brand<"@effect-agent/core/AgentId"> & "doc-summarizer";
126
+ };
127
+ };
128
+ /** Total mapping from every expected child Run failure to the declared Tool failure (SUB-028). */
129
+ declare const mapSummaryChildFailure: (failure: {
130
+ readonly _tag: string;
131
+ }) => DocumentSummaryFailed;
132
+ /** The exact digest strings the durable declaration AND host registration must share (SUB-023). */
133
+ declare const docsSummarizerDigestStrings: {
134
+ readonly agent: string;
135
+ readonly model: string;
136
+ readonly tools: string;
137
+ };
138
+ /** Runtime wiring: the immutable delegation plus one explicit child Binding (S2 declaration). */
139
+ declare const docsSummaryHandlersLayer: <Provider, ModelProvides, ModelRequires>(childBinding: RuntimeBinding<typeof SummaryBrief, typeof DocumentSummary, string, Toolkit.Tools<typeof DocContentToolkit>, Provider, ModelProvides, ModelRequires>) => import("effect/Layer").Layer<Tool.Handler<"delegate_document_summary">, never, Subagent.SubagentLayerRequirements<typeof SummaryBrief, typeof DocumentSummary, string, {
140
+ readonly fetch_document: Tool.Tool<"fetch_document", {
141
+ readonly parameters: typeof DocumentQuery;
142
+ readonly success: typeof ResearchDocument;
143
+ readonly failure: typeof DocumentUnavailable;
144
+ readonly failureMode: "error";
145
+ }, DocumentLibrary>;
146
+ }, Provider, ModelProvides, ModelRequires, never, never, never, {
147
+ readonly _tag: string;
148
+ }, never, undefined, undefined, undefined>>;
149
+ declare const ResearchRequest_base: Schema.Class<ResearchRequest, Schema.Struct<{
150
+ readonly question: Schema.NonEmptyString;
151
+ readonly documentIds: Schema.$Array<Schema.brand<Schema.NonEmptyString, "@effect-agent/testing/docs-researcher/ResearchDocumentId">>;
152
+ }>, {}>;
153
+ declare class ResearchRequest extends ResearchRequest_base {}
154
+ declare const ResearchDigest_base: Schema.Class<ResearchDigest, Schema.Struct<{
155
+ readonly findings: Schema.$Array<typeof SummaryFinding>;
156
+ readonly nextAction: Schema.Literal<"review">;
157
+ }>, {}>;
158
+ declare class ResearchDigest extends ResearchDigest_base {}
159
+ /** Parent-only transcript markers proving child context isolation (SUB-006/SUB-015). */
160
+ declare const docsCoordinatorConfidentialMarker = "docs-coordinator-vault-19x";
161
+ declare const docsMissionConfidentialMarker = "docs-mission-dossier-42f";
162
+ declare const DocsResearcherToolkit: Toolkit.Toolkit<{
163
+ readonly delegate_document_summary: Tool.Tool<"delegate_document_summary", {
164
+ readonly parameters: typeof SummaryRequest;
165
+ readonly success: typeof SummaryFinding;
166
+ readonly failure: Subagent.SubagentToolFailure<typeof DocumentSummaryFailed>;
167
+ readonly failureMode: "error";
168
+ }, import("effect-agent/agent-runtime").AgentSpawner | import("effect-agent/run-event-sink").RunEventSink | import("effect-agent/agent-runtime").SubagentDurability>;
169
+ }>;
170
+ declare const DocsResearcher: Agent.Definition<typeof ResearchRequest, typeof ResearchDigest, string, Toolkit.Toolkit<{
171
+ readonly delegate_document_summary: Tool.Tool<"delegate_document_summary", {
172
+ readonly parameters: typeof SummaryRequest;
173
+ readonly success: typeof SummaryFinding;
174
+ readonly failure: Subagent.SubagentToolFailure<typeof DocumentSummaryFailed>;
175
+ readonly failureMode: "error";
176
+ }, import("effect-agent/agent-runtime").AgentSpawner | import("effect-agent/run-event-sink").RunEventSink | import("effect-agent/agent-runtime").SubagentDurability>;
177
+ }>, undefined, undefined, undefined> & {
178
+ readonly id: import("effect/Brand").Brand<"@effect-agent/core/AgentId"> & "docs-researcher";
179
+ };
180
+ /** The default two-document research mission. */
181
+ declare const researchMissionRequest: ResearchRequest;
182
+ /** The coordinator's expected final digest for the given documents. */
183
+ declare const expectedResearchDigest: (documentIds?: ReadonlyArray<string>) => ResearchDigest;
184
+ //#endregion
185
+ //#region src/fixtures/docs-researcher/harness.d.ts
186
+ declare const docsResearcherDeploymentId: string & import("effect/Brand").Brand<"@effect-agent/thread/DeploymentId">;
187
+ declare const docsResearcherProducerId: string & import("effect/Brand").Brand<"@effect-agent/thread/ProducerId">;
188
+ declare const docsResearcherPrincipal: string & import("effect/Brand").Brand<"@effect-agent/thread/Principal">;
189
+ /** Redacted, deterministic coordinator definition digests for this fixture version. */
190
+ declare const docsCoordinatorDigests: DefinitionDigests;
191
+ /** The child registration digests — byte-equal to `docsSummarizerDigestStrings` (SUB-023). */
192
+ declare const docsSummarizerDigests: DefinitionDigests;
193
+ /** Durable admission options for one docs-researcher Submission on one mission lane. */
194
+ declare const docsResearcherSubmitOptions: (threadId: ThreadId, idempotencyKey: IdempotencyKey) => DurableSubmitOptions;
195
+ /** The structural submit slice of the coordinator Binding (`DurableAgentRuntime.submit`). */
196
+ declare const docsResearcherSubmitAgent: {
197
+ readonly definition: {
198
+ readonly id: import("effect/Brand").Brand<"@effect-agent/core/AgentId"> & "docs-researcher";
199
+ readonly input: typeof ResearchRequest;
200
+ };
201
+ };
202
+ /** The deterministic delegation Tool Call identity for one document. */
203
+ declare const summarizeCallId: (documentId: string) => string;
204
+ /** The child's own scripted fetch Tool Call identity for one document. */
205
+ declare const fetchCallId: (documentId: string) => string;
206
+ /** Optional overrides for one docs-researcher harness. */
207
+ interface DocsResearcherHarnessOptions {
208
+ /** Documents to research; defaults to the full two-document corpus. */
209
+ readonly documentIds?: ReadonlyArray<string> | undefined;
210
+ }
211
+ /** One durable coordinator/summarizer pair with observable counters and MCP evidence. */
212
+ interface DocsResearcherHarness {
213
+ /** Resolved registrations for the parent and child workers. */
214
+ readonly bindings: ReadonlyArray<ResolvedBinding>;
215
+ /** The validated MCP discovery the child toolkit registration was gated on. */
216
+ readonly discovery: McpDiscovery;
217
+ /** Total coordinator model invocations across every Attempt and runtime handle. */
218
+ readonly parentModelCalls: Effect.Effect<number>;
219
+ /** JSON-encoded coordinator prompts in request order. */
220
+ readonly parentPrompts: Effect.Effect<ReadonlyArray<string>>;
221
+ /** Total summarizer model invocations across every Attempt and runtime handle. */
222
+ readonly childModelCalls: Effect.Effect<number>;
223
+ /** JSON-encoded summarizer prompts in request order (context-isolation evidence). */
224
+ readonly childPrompts: Effect.Effect<ReadonlyArray<string>>;
225
+ /** MCP content-tool handler executions for one document (external side-effect record). */
226
+ readonly fetchInvocations: (documentId: string) => Effect.Effect<number>;
227
+ }
228
+ /**
229
+ * Build the docs-researcher harness. Order matters and is the point: the
230
+ * child's content toolkit is only registered as a worker Binding AFTER the
231
+ * MCP connector's bounded discovery validated the authored toolkit
232
+ * byte-for-byte (`connectMcp` + `assertDiscoveryMatchesAuthoredToolkit`), so
233
+ * "the tools the summarizer runs are the tools discovery served" is enforced
234
+ * at assembly, not assumed. Content-tool execution then flows through the
235
+ * counting `DocumentLibrary` — the scripted MCP server's content store.
236
+ */
237
+ declare const makeDocsResearcherHarness: (options?: DocsResearcherHarnessOptions) => Effect.Effect<DocsResearcherHarness, import("effect-agent/mcp").McpConnectionError | import("effect-agent/mcp").McpDiscoveryLimitExceeded | import("effect-agent/mcp").McpToolkitMismatch, Crypto.Crypto>;
238
+ /**
239
+ * The audit-surface preview of one fetched document: the raw document —
240
+ * secret marker and all — passes through the configured structural `Redactor`
241
+ * before anything may quote it outside the child Thread (SEC-008,
242
+ * CAP-013). Tests assert the preview keeps shape but no scalar content.
243
+ */
244
+ declare const redactedDocumentPreview: (documentId: string) => Effect.Effect<string & import("effect/Brand").Brand<"@effect-agent/capabilities/RedactedPreview">, RedactionError, Redactor>;
245
+ type DocsResearcherHarnessRequirements = Crypto.Crypto;
246
+ //#endregion
247
+ //#region src/fixtures/docs-researcher/mcp.d.ts
248
+ /** Framework-side hard bounds one docs-researcher assembly requests. */
249
+ declare const docsMcpRequest: McpConnectionRequest;
250
+ declare const docsMcpIdentity: McpServerIdentity;
251
+ /** The well-behaved scripted content server. */
252
+ declare const docsMcpConnectorLayer: Layer.Layer<McpConnector>;
253
+ /** Serves a tool description exceeding `maxToolDescriptionBytes` (SEC-013 bound). */
254
+ declare const docsMcpOversizedConnectorLayer: Layer.Layer<McpConnector>;
255
+ /** Serves a discovery schema that disagrees with the authored toolkit (drift fails closed). */
256
+ declare const docsMcpMismatchedConnectorLayer: Layer.Layer<McpConnector>;
257
+ /**
258
+ * Bind DISCOVERY to AUTHORING: `validateMcpDiscovery` (inside `connectMcp`)
259
+ * already proved the served discovery matches the connection's own Toolkit;
260
+ * this check additionally proves that Toolkit is the exact toolkit the
261
+ * doc-summarizer was AUTHORED against — same tool names, same derived JSON
262
+ * schemas — so a connector cannot substitute a look-alike toolkit. The
263
+ * docs-researcher harness runs it before any worker Binding registration and
264
+ * fails closed on any drift.
265
+ */
266
+ declare const assertDiscoveryMatchesAuthoredToolkit: (connection: McpConnection) => Effect.Effect<void, McpToolkitMismatch, never>;
267
+ /** Round-trip guard for encoded discovery values persisted as fixture evidence. */
268
+ declare const DocsMcpDiscoveryEvidence: Schema.Struct<{
269
+ readonly serverId: Schema.NonEmptyString;
270
+ readonly toolCount: Schema.Natural;
271
+ readonly encodedBytes: Schema.Natural;
272
+ readonly toolkitSchemaDigest: Schema.String;
273
+ }>;
274
+ //#endregion
275
+ export { BoundedSummary, DocContentToolkit, DocSummarizer, DocsMcpDiscoveryEvidence, DocsResearcher, type DocsResearcherHarness, type DocsResearcherHarnessOptions, type DocsResearcherHarnessRequirements, DocsResearcherToolkit, DocumentLibrary, DocumentQuery, DocumentSummary, DocumentSummaryFailed, DocumentUnavailable, FetchDocument, ResearchDigest, ResearchDocument, ResearchDocumentId, ResearchRequest, SummaryBrief, SummaryFinding, SummaryRequest, assertDiscoveryMatchesAuthoredToolkit, delegateDocumentSummary, docContentToolkitLayer, docsCoordinatorConfidentialMarker, docsCoordinatorDigests, docsDocumentBodySecret, docsMcpConnectorLayer, docsMcpIdentity, docsMcpMismatchedConnectorLayer, docsMcpOversizedConnectorLayer, docsMcpRequest, docsMissionConfidentialMarker, docsResearcherDeploymentId, docsResearcherPrincipal, docsResearcherProducerId, docsResearcherSubmitAgent, docsResearcherSubmitOptions, docsSummarizerDigestStrings, docsSummarizerDigests, docsSummaryHandlersLayer, documentBodyPhrase, documentSummaryFor, documentSummaryPolicy, encodedDocumentSummary, expectedResearchDigest, fetchCallId, makeDocsResearcherHarness, mapSummaryChildFailure, redactedDocumentPreview, researchCorpusDocumentIds, researchDocumentFor, researchDocumentLookup, researchMissionRequest, summarizeCallId };
276
+ //# sourceMappingURL=DocsResearcher.d.mts.map