@spotpatch/shared 1.12.0 → 1.13.0

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 (61) hide show
  1. package/dist/annotation-C0Me9mN2.d.cts +102 -0
  2. package/dist/annotation-C0Me9mN2.d.ts +102 -0
  3. package/dist/chunk-C2PJ4UUU.js +195 -0
  4. package/dist/chunk-C2PJ4UUU.js.map +1 -0
  5. package/dist/chunk-DYTWEIES.js +89 -0
  6. package/dist/chunk-DYTWEIES.js.map +1 -0
  7. package/dist/{chunk-JGOIBOFI.js → chunk-FPDSZDP2.js} +16 -2
  8. package/dist/chunk-FPDSZDP2.js.map +1 -0
  9. package/dist/chunk-IUTOVI5G.js +584 -0
  10. package/dist/chunk-IUTOVI5G.js.map +1 -0
  11. package/dist/{chunk-JU5HIWX7.js → chunk-YQ5GL523.js} +8 -173
  12. package/dist/chunk-YQ5GL523.js.map +1 -0
  13. package/dist/contextual-ask-B0mCFn92.d.cts +1451 -0
  14. package/dist/contextual-ask-B0mCFn92.d.ts +1451 -0
  15. package/dist/contextual-ask-browser.cjs +200 -0
  16. package/dist/contextual-ask-browser.cjs.map +1 -0
  17. package/dist/contextual-ask-browser.d.cts +31 -0
  18. package/dist/contextual-ask-browser.d.ts +31 -0
  19. package/dist/contextual-ask-browser.js +66 -0
  20. package/dist/contextual-ask-browser.js.map +1 -0
  21. package/dist/contextual-ask-node.cjs +968 -0
  22. package/dist/contextual-ask-node.cjs.map +1 -0
  23. package/dist/contextual-ask-node.d.cts +14 -0
  24. package/dist/contextual-ask-node.d.ts +14 -0
  25. package/dist/contextual-ask-node.js +122 -0
  26. package/dist/contextual-ask-node.js.map +1 -0
  27. package/dist/{data-flow-runtime-oq9m21IP.d.cts → data-flow-runtime-D8HPSb2i.d.cts} +13 -13
  28. package/dist/{data-flow-runtime-BelOgo8s.d.ts → data-flow-runtime-vKeEaJgT.d.ts} +13 -13
  29. package/dist/data-flow-runtime.cjs +2 -0
  30. package/dist/data-flow-runtime.cjs.map +1 -1
  31. package/dist/data-flow-runtime.d.cts +2 -2
  32. package/dist/data-flow-runtime.d.ts +2 -2
  33. package/dist/data-flow-runtime.js +1 -1
  34. package/dist/{endpoints-GedF44M2.d.cts → endpoints-O3ohYyAo.d.cts} +7 -1
  35. package/dist/{endpoints-GedF44M2.d.ts → endpoints-O3ohYyAo.d.ts} +7 -1
  36. package/dist/error-code-DRz2eqcB.d.cts +63 -0
  37. package/dist/error-code-DRz2eqcB.d.ts +63 -0
  38. package/dist/external-agent-node.cjs +142 -121
  39. package/dist/external-agent-node.cjs.map +1 -1
  40. package/dist/external-agent-node.d.cts +27 -26
  41. package/dist/external-agent-node.d.ts +27 -26
  42. package/dist/external-agent-node.js +4 -2
  43. package/dist/external-agent-node.js.map +1 -1
  44. package/dist/{external-handoff-BNUyMfNb.d.ts → external-handoff-DighrWn8.d.ts} +30 -130
  45. package/dist/{external-handoff-BNUyMfNb.d.cts → external-handoff-DwtFFR6F.d.cts} +30 -130
  46. package/dist/external-handoff-browser.cjs +2 -0
  47. package/dist/external-handoff-browser.cjs.map +1 -1
  48. package/dist/external-handoff-browser.d.cts +4 -3
  49. package/dist/external-handoff-browser.d.ts +4 -3
  50. package/dist/external-handoff-browser.js +1 -1
  51. package/dist/index.cjs +1144 -422
  52. package/dist/index.cjs.map +1 -1
  53. package/dist/index.d.cts +126 -178
  54. package/dist/index.d.ts +126 -178
  55. package/dist/index.js +97 -16
  56. package/dist/index.js.map +1 -1
  57. package/package.json +29 -2
  58. package/dist/chunk-JGOIBOFI.js.map +0 -1
  59. package/dist/chunk-JU5HIWX7.js.map +0 -1
  60. package/dist/{external-agent-control-BMoSq_xI.d.cts → external-agent-control-CRBbjDDk.d.cts} +46 -46
  61. package/dist/{external-agent-control-BMoSq_xI.d.ts → external-agent-control-CRBbjDDk.d.ts} +46 -46
@@ -1,3 +1,7 @@
1
+ import {
2
+ MAX_ANNOTATION_TARGETS,
3
+ spotAnnotationSchema
4
+ } from "./chunk-C2PJ4UUU.js";
1
5
  import {
2
6
  EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS,
3
7
  EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES,
@@ -10,16 +14,6 @@ import {
10
14
  EXTERNAL_HANDOFF_STATES
11
15
  } from "./chunk-2LVIH7OA.js";
12
16
 
13
- // src/model/annotation.ts
14
- var MAX_ANNOTATION_TARGETS = 20;
15
- var MAX_TARGET_INSTRUCTION_CHARACTERS = 2e3;
16
- var MAX_ANNOTATION_INSTRUCTION_CHARACTERS = 4e3;
17
- var SPOTPATCH_LOCALES = Object.freeze(["en-US", "zh-CN"]);
18
- var SPOTPATCH_LOCALE_PREFERENCES = Object.freeze([
19
- "auto",
20
- ...SPOTPATCH_LOCALES
21
- ]);
22
-
23
17
  // src/model/agent.ts
24
18
  var AGENT_APPLY_MODES = Object.freeze([
25
19
  "review",
@@ -113,100 +107,13 @@ var dataFlowPageReportRequestSchema = z.strictObject({
113
107
  targets: z.array(dataFlowComponentReportRequestSchema).min(1).max(MAX_ANNOTATION_TARGETS)
114
108
  });
115
109
  var profileIdSchema = z.string().min(1).max(64).regex(/^[A-Za-z0-9][A-Za-z0-9._-]*$/);
116
- var boundedString = (maximum) => z.string().max(maximum);
117
- var sourceRefSchema = z.strictObject({
118
- fileId: boundedString(128).optional(),
119
- relativePath: boundedString(1024).optional(),
120
- line: z.number().int().positive().optional(),
121
- column: z.number().int().positive().optional(),
122
- origin: z.enum(["jsx-host", "react-fiber", "dom-ancestor", "none"]),
123
- confidence: z.enum(["exact", "probable", "approximate", "unknown"])
124
- });
125
- var matchedStyleRuleSchema = z.strictObject({
126
- selector: boundedString(2048),
127
- declarations: boundedString(8192),
128
- source: boundedString(1024).optional(),
129
- media: boundedString(1024).optional()
130
- });
131
- var codeContextSchema = z.strictObject({
132
- relativePath: boundedString(1024),
133
- language: z.enum(["tsx", "jsx"]),
134
- startLine: z.number().int().positive(),
135
- endLine: z.number().int().positive(),
136
- excerpt: boundedString(16e3),
137
- boundary: z.enum(["component", "nearby-lines"])
138
- });
139
- var pageContextSchema = z.strictObject({
140
- url: boundedString(2048),
141
- pathname: boundedString(2048),
142
- title: boundedString(1024),
143
- viewportWidth: z.number().nonnegative(),
144
- viewportHeight: z.number().nonnegative(),
145
- devicePixelRatio: z.number().positive()
146
- });
147
- var spotTargetContextRequestSchema = z.strictObject({
148
- instruction: z.string().trim().min(1).max(MAX_TARGET_INSTRUCTION_CHARACTERS),
149
- page: pageContextSchema.optional(),
150
- source: sourceRefSchema,
151
- react: z.strictObject({
152
- supported: z.boolean(),
153
- version: boundedString(64).optional(),
154
- componentName: boundedString(256).optional(),
155
- componentSourceId: boundedString(128).optional(),
156
- sourceVersion: boundedString(128).optional(),
157
- componentStack: z.array(boundedString(256)).max(64),
158
- source: sourceRefSchema.optional()
159
- }),
160
- element: z.strictObject({
161
- tagName: boundedString(128),
162
- selector: boundedString(2048),
163
- sanitizedHtml: boundedString(8192),
164
- textPreview: boundedString(2048).optional(),
165
- role: boundedString(256).optional(),
166
- rect: z.strictObject({
167
- x: z.number(),
168
- y: z.number(),
169
- width: z.number().nonnegative(),
170
- height: z.number().nonnegative()
171
- })
172
- }),
173
- styles: z.strictObject({
174
- classNames: z.array(boundedString(512)).max(256),
175
- inlineStyle: boundedString(8192).optional(),
176
- matchedRules: z.array(matchedStyleRuleSchema).max(256),
177
- computed: z.record(boundedString(256), boundedString(2048)),
178
- warnings: z.array(boundedString(1024)).max(64)
179
- }),
180
- code: codeContextSchema.optional(),
181
- warnings: z.array(boundedString(1024)).max(64)
182
- });
183
- var spotAnnotationRequestSchema = z.strictObject({
184
- schemaVersion: z.literal(3),
185
- id: boundedString(128),
186
- locale: z.enum(SPOTPATCH_LOCALES),
187
- page: pageContextSchema,
188
- targets: z.array(spotTargetContextRequestSchema).min(1).max(MAX_ANNOTATION_TARGETS),
189
- createdAt: z.iso.datetime()
190
- }).superRefine((annotation, context) => {
191
- const total = annotation.targets.reduce(
192
- (characters, target) => characters + target.instruction.length,
193
- 0
194
- );
195
- if (total > MAX_ANNOTATION_INSTRUCTION_CHARACTERS) {
196
- context.addIssue({
197
- code: "custom",
198
- message: "Combined target instructions exceed the annotation limit.",
199
- path: ["targets"]
200
- });
201
- }
202
- });
203
110
  var agentCapabilityRequestSchema = z.strictObject({
204
111
  providerProfileId: profileIdSchema,
205
112
  modelProfileId: profileIdSchema
206
113
  });
207
114
  var agentWorkspaceHealthRequestSchema = z.strictObject({});
208
115
  var agentJobCreateRequestSchema = z.strictObject({
209
- annotation: spotAnnotationRequestSchema,
116
+ annotation: spotAnnotationSchema,
210
117
  applyMode: z.enum(AGENT_APPLY_MODES).optional(),
211
118
  providerProfileId: profileIdSchema,
212
119
  modelProfileId: profileIdSchema,
@@ -250,7 +157,7 @@ var externalHandoffSnapshotSchema = z2.strictObject({
250
157
  revision: z2.number().int().positive(),
251
158
  publishedAt: isoTimestampSchema,
252
159
  expiresAt: isoTimestampSchema,
253
- annotation: spotAnnotationRequestSchema
160
+ annotation: spotAnnotationSchema
254
161
  });
255
162
  var activeAdapterSummarySchema = z2.strictObject({
256
163
  kind: z2.enum(EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS),
@@ -276,7 +183,7 @@ var dispatchSummarySchema = z2.strictObject({
276
183
  var externalHandoffCapabilityRequestSchema = z2.strictObject({});
277
184
  var externalHandoffPublishRequestSchema = z2.strictObject({
278
185
  requestId: opaqueIdSchema,
279
- annotation: spotAnnotationRequestSchema
186
+ annotation: spotAnnotationSchema
280
187
  });
281
188
  var externalHandoffStatusRequestSchema = z2.strictObject({
282
189
  cursor: opaqueIdSchema.optional()
@@ -313,68 +220,6 @@ var externalHandoffStatusResultSchema = z2.strictObject({
313
220
  dispatch: dispatchSummarySchema.nullable()
314
221
  });
315
222
 
316
- // src/errors/error-code.ts
317
- var ERROR_CODES = {
318
- INVALID_REQUEST: "INVALID_REQUEST",
319
- INVALID_TOKEN: "INVALID_TOKEN",
320
- ORIGIN_NOT_ALLOWED: "ORIGIN_NOT_ALLOWED",
321
- SOURCE_NOT_FOUND: "SOURCE_NOT_FOUND",
322
- SOURCE_OUTSIDE_ROOT: "SOURCE_OUTSIDE_ROOT",
323
- SOURCE_TOO_LARGE: "SOURCE_TOO_LARGE",
324
- EDITOR_OPEN_FAILED: "EDITOR_OPEN_FAILED",
325
- DATA_FLOW_DISABLED: "DATA_FLOW_DISABLED",
326
- DATA_FLOW_SOURCE_STALE: "DATA_FLOW_SOURCE_STALE",
327
- DATA_FLOW_ANALYSIS_CANCELLED: "DATA_FLOW_ANALYSIS_CANCELLED",
328
- AI_DISABLED: "AI_DISABLED",
329
- PROVIDER_NOT_CONFIGURED: "PROVIDER_NOT_CONFIGURED",
330
- PROVIDER_AUTH_FAILED: "PROVIDER_AUTH_FAILED",
331
- PROVIDER_PROTOCOL_UNSUPPORTED: "PROVIDER_PROTOCOL_UNSUPPORTED",
332
- MODEL_NOT_ALLOWED: "MODEL_NOT_ALLOWED",
333
- MODEL_TOOL_CALL_UNSUPPORTED: "MODEL_TOOL_CALL_UNSUPPORTED",
334
- PROVIDER_RATE_LIMITED: "PROVIDER_RATE_LIMITED",
335
- AGENT_BUSY: "AGENT_BUSY",
336
- AGENT_LIMIT_EXCEEDED: "AGENT_LIMIT_EXCEEDED",
337
- AGENT_CANCELLED: "AGENT_CANCELLED",
338
- EXTERNAL_HANDOFF_DISABLED: "EXTERNAL_HANDOFF_DISABLED",
339
- EXTERNAL_HANDOFF_UNAVAILABLE: "EXTERNAL_HANDOFF_UNAVAILABLE",
340
- HANDOFF_VALIDATION_FAILED: "HANDOFF_VALIDATION_FAILED",
341
- HANDOFF_SOURCE_STALE: "HANDOFF_SOURCE_STALE",
342
- HANDOFF_NOT_FOUND: "HANDOFF_NOT_FOUND",
343
- HANDOFF_EXPIRED: "HANDOFF_EXPIRED",
344
- HANDOFF_CURSOR_INVALID: "HANDOFF_CURSOR_INVALID",
345
- HANDOFF_RESPONSE_TOO_LARGE: "HANDOFF_RESPONSE_TOO_LARGE",
346
- BRIDGE_UNAUTHORIZED: "BRIDGE_UNAUTHORIZED",
347
- BRIDGE_PROTOCOL_MISMATCH: "BRIDGE_PROTOCOL_MISMATCH",
348
- BRIDGE_BUSY: "BRIDGE_BUSY",
349
- EXTERNAL_AGENT_BUSY: "EXTERNAL_AGENT_BUSY",
350
- ACTIVE_ADAPTER_CONFLICT: "ACTIVE_ADAPTER_CONFLICT",
351
- ACTIVE_ADAPTER_LEASE_INVALID: "ACTIVE_ADAPTER_LEASE_INVALID",
352
- ACTIVE_DISPATCH_INVALID: "ACTIVE_DISPATCH_INVALID",
353
- SESSION_NOT_FOUND: "SESSION_NOT_FOUND",
354
- SESSION_AMBIGUOUS: "SESSION_AMBIGUOUS",
355
- SESSION_CLOSED: "SESSION_CLOSED",
356
- WORKTREE_DIRTY: "WORKTREE_DIRTY",
357
- WORKTREE_NOT_REPOSITORY: "WORKTREE_NOT_REPOSITORY",
358
- WORKTREE_OPERATION_IN_PROGRESS: "WORKTREE_OPERATION_IN_PROGRESS",
359
- WORKTREE_CONFLICTED: "WORKTREE_CONFLICTED",
360
- WORKTREE_LOCAL_CHANGES_TOO_LARGE: "WORKTREE_LOCAL_CHANGES_TOO_LARGE",
361
- WORKTREE_UNTRACKED_UNSUPPORTED: "WORKTREE_UNTRACKED_UNSUPPORTED",
362
- WORKTREE_LOCAL_CHANGES_UNSUPPORTED: "WORKTREE_LOCAL_CHANGES_UNSUPPORTED",
363
- TOOL_DENIED: "TOOL_DENIED",
364
- TOOL_INPUT_INVALID: "TOOL_INPUT_INVALID",
365
- TOOL_ARGUMENTS_INVALID: "TOOL_ARGUMENTS_INVALID",
366
- TOOL_CALL_ID_CONFLICT: "TOOL_CALL_ID_CONFLICT",
367
- TOOL_PATH_DENIED: "TOOL_PATH_DENIED",
368
- PATCH_REJECTED: "PATCH_REJECTED",
369
- VALIDATION_FAILED: "VALIDATION_FAILED",
370
- APPLY_CONFLICT: "APPLY_CONFLICT",
371
- INTERNAL_ERROR: "INTERNAL_ERROR"
372
- };
373
- var ERROR_CODE_VALUES = Object.freeze(Object.values(ERROR_CODES));
374
- function isErrorCode(value) {
375
- return typeof value === "string" && ERROR_CODE_VALUES.includes(value);
376
- }
377
-
378
223
  // src/errors/spotpatch-error.ts
379
224
  var SpotPatchError = class extends Error {
380
225
  code;
@@ -386,11 +231,6 @@ var SpotPatchError = class extends Error {
386
231
  };
387
232
 
388
233
  export {
389
- MAX_ANNOTATION_TARGETS,
390
- MAX_TARGET_INSTRUCTION_CHARACTERS,
391
- MAX_ANNOTATION_INSTRUCTION_CHARACTERS,
392
- SPOTPATCH_LOCALES,
393
- SPOTPATCH_LOCALE_PREFERENCES,
394
234
  AGENT_APPLY_MODES,
395
235
  DEFAULT_AGENT_LIMITS,
396
236
  AGENT_JOB_STATUSES,
@@ -404,8 +244,6 @@ export {
404
244
  openEditorRequestSchema,
405
245
  dataFlowComponentReportRequestSchema,
406
246
  dataFlowPageReportRequestSchema,
407
- spotTargetContextRequestSchema,
408
- spotAnnotationRequestSchema,
409
247
  agentCapabilityRequestSchema,
410
248
  agentWorkspaceHealthRequestSchema,
411
249
  agentJobCreateRequestSchema,
@@ -423,9 +261,6 @@ export {
423
261
  externalHandoffPublishDeliverySchema,
424
262
  externalHandoffPublishResultSchema,
425
263
  externalHandoffStatusResultSchema,
426
- ERROR_CODES,
427
- ERROR_CODE_VALUES,
428
- isErrorCode,
429
264
  SpotPatchError
430
265
  };
431
- //# sourceMappingURL=chunk-JU5HIWX7.js.map
266
+ //# sourceMappingURL=chunk-YQ5GL523.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/model/agent.ts","../src/protocol/requests.ts","../src/protocol/external-handoff.ts","../src/errors/spotpatch-error.ts"],"sourcesContent":["import type { ErrorCode } from \"../errors/error-code.js\";\n\nexport type AiProviderProtocol = \"responses\" | \"chat-completions\";\nexport type AiProviderAuthentication = \"bearer\" | \"x-api-key\";\nexport const AGENT_APPLY_MODES = Object.freeze([\n \"review\",\n \"auto\",\n \"trusted-auto\",\n] as const);\nexport type AgentApplyMode = (typeof AGENT_APPLY_MODES)[number];\nexport type AgentWorkingTreeMode = \"require-clean\" | \"include-local-changes\";\n\nexport interface AiModelProfile {\n readonly label: string;\n readonly model: string;\n}\n\nexport interface OpenAICompatibleProviderOptions {\n readonly type: \"openai-compatible\";\n readonly label: string;\n readonly protocol: AiProviderProtocol;\n readonly authentication?: AiProviderAuthentication;\n readonly baseURL: string;\n readonly apiKeyEnv: string;\n readonly models: Readonly<Record<string, AiModelProfile>>;\n readonly defaultModel: string;\n}\n\nexport interface AgentCheckDefinition {\n readonly label: string;\n readonly command: string;\n readonly args?: readonly string[];\n readonly required?: boolean;\n readonly timeoutMs?: number;\n}\n\nexport interface AgentLimits {\n readonly maxTurns: number;\n readonly maxToolCalls: number;\n readonly maxChangedFiles: number;\n readonly maxDiffBytes: number;\n readonly maxReadBytesPerFile: number;\n readonly maxToolOutputCharacters: number;\n readonly maxProviderResponseBytes: number;\n readonly providerConnectTimeoutMs: number;\n readonly providerFirstByteTimeoutMs: number;\n readonly providerIdleTimeoutMs: number;\n readonly checkTimeoutMs: number;\n readonly jobTimeoutMs: number;\n}\n\nexport const DEFAULT_AGENT_LIMITS = Object.freeze({\n maxTurns: 20,\n maxToolCalls: 80,\n maxChangedFiles: 20,\n maxDiffBytes: 512_000,\n maxReadBytesPerFile: 256_000,\n maxToolOutputCharacters: 40_000,\n maxProviderResponseBytes: 2_000_000,\n providerConnectTimeoutMs: 15_000,\n providerFirstByteTimeoutMs: 30_000,\n providerIdleTimeoutMs: 60_000,\n checkTimeoutMs: 120_000,\n jobTimeoutMs: 600_000,\n} satisfies AgentLimits);\n\nexport interface AiExecutionOptions {\n readonly isolation?: \"git-worktree\";\n readonly applyMode?: AgentApplyMode;\n readonly checks?: Readonly<Record<string, AgentCheckDefinition>>;\n readonly limits?: Partial<AgentLimits>;\n}\n\nexport interface AiOptions {\n readonly providers: Readonly<Record<string, OpenAICompatibleProviderOptions>>;\n readonly defaultProvider: string;\n readonly execution?: AiExecutionOptions;\n}\n\nexport interface ResolvedAiModelProfile extends AiModelProfile {\n readonly id: string;\n}\n\nexport interface ResolvedOpenAICompatibleProviderOptions {\n readonly id: string;\n readonly type: \"openai-compatible\";\n readonly label: string;\n readonly protocol: AiProviderProtocol;\n readonly authentication: AiProviderAuthentication;\n readonly baseURL: string;\n readonly apiKeyEnv: string;\n readonly models: Readonly<Record<string, ResolvedAiModelProfile>>;\n readonly defaultModel: string;\n}\n\nexport interface ResolvedAgentCheckDefinition {\n readonly id: string;\n readonly label: string;\n readonly command: string;\n readonly args: readonly string[];\n readonly required: boolean;\n readonly timeoutMs: number;\n}\n\nexport interface ResolvedAiExecutionOptions {\n readonly isolation: \"git-worktree\";\n readonly applyMode: AgentApplyMode;\n readonly checks: Readonly<Record<string, ResolvedAgentCheckDefinition>>;\n readonly limits: Readonly<AgentLimits>;\n}\n\nexport interface ResolvedAiOptions {\n readonly providers: Readonly<Record<string, ResolvedOpenAICompatibleProviderOptions>>;\n readonly defaultProvider: string;\n readonly execution: ResolvedAiExecutionOptions;\n}\n\nexport interface RuntimeAiModelProfile {\n readonly id: string;\n readonly label: string;\n}\n\nexport interface RuntimeAiProviderProfile {\n readonly id: string;\n readonly label: string;\n readonly protocol: AiProviderProtocol;\n readonly models: readonly RuntimeAiModelProfile[];\n readonly defaultModel: string;\n}\n\nexport type RuntimeAiConfig =\n | Readonly<{ enabled: false }>\n | Readonly<{\n enabled: true;\n providers: readonly RuntimeAiProviderProfile[];\n defaultProvider: string;\n applyMode: AgentApplyMode;\n }>;\n\nexport const AGENT_JOB_STATUSES = Object.freeze([\n \"queued\",\n \"preparing\",\n \"running\",\n \"validating\",\n \"awaiting-review\",\n \"applying\",\n \"applied\",\n \"completed\",\n \"cancelling\",\n \"cancelled\",\n \"reverting\",\n \"reverted\",\n \"failed\",\n] as const);\n\nexport type AgentJobStatus = (typeof AGENT_JOB_STATUSES)[number];\n\nexport const AGENT_CAPABILITY_STATES = Object.freeze([\n \"unknown\",\n \"probing\",\n \"agent-ready\",\n \"prompt-only\",\n \"unavailable\",\n] as const);\n\nexport type AgentCapabilityState = (typeof AGENT_CAPABILITY_STATES)[number];\n\nexport interface AgentCapabilitySnapshot {\n readonly providerProfileId: string;\n readonly providerLabel: string;\n readonly modelProfileId: string;\n readonly modelLabel: string;\n readonly protocol: AiProviderProtocol;\n readonly state: AgentCapabilityState;\n readonly authenticated: boolean;\n readonly modelAvailable: boolean;\n readonly toolCalling: boolean;\n readonly toolResultContinuation: boolean;\n readonly streaming: boolean;\n readonly checkedAt?: string;\n readonly errorCode?: ErrorCode;\n}\n\nexport const AGENT_WORKSPACE_STATES = Object.freeze([\n \"ready\",\n \"consent-required\",\n \"blocked\",\n] as const);\n\nexport const AGENT_WORKSPACE_SNAPSHOT_LIMITS = Object.freeze({\n maxUntrackedFiles: 1_000,\n maxUntrackedBytes: 20 * 1024 * 1024,\n});\n\nexport type AgentWorkspaceState = (typeof AGENT_WORKSPACE_STATES)[number];\n\nexport interface AgentWorkspaceChangeSummary {\n readonly staged: number;\n readonly unstaged: number;\n readonly untracked: number;\n readonly conflicted: number;\n readonly total: number;\n}\n\nexport interface AgentWorkspaceHealthSnapshot {\n readonly state: AgentWorkspaceState;\n readonly checkedAt: string;\n readonly changes: AgentWorkspaceChangeSummary;\n readonly canIncludeLocalChanges: boolean;\n readonly errorCode?: ErrorCode;\n}\n\nexport const AGENT_FILE_CHANGE_KINDS = Object.freeze([\n \"added\",\n \"modified\",\n \"deleted\",\n] as const);\n\nexport type AgentFileChangeKind = (typeof AGENT_FILE_CHANGE_KINDS)[number];\n\nexport const AGENT_CHECK_STATUSES = Object.freeze([\n \"passed\",\n \"failed\",\n \"cancelled\",\n \"timed-out\",\n] as const);\n\nexport type AgentCheckStatus = (typeof AGENT_CHECK_STATUSES)[number];\n\nexport interface AgentChangedFile {\n readonly relativePath: string;\n readonly kind: AgentFileChangeKind;\n readonly additions: number;\n readonly deletions: number;\n}\n\nexport interface AgentCheckResult {\n readonly checkId: string;\n readonly label: string;\n readonly status: AgentCheckStatus;\n readonly durationMs: number;\n readonly exitCode?: number;\n readonly output: string;\n}\n\nexport interface AgentJobSnapshot {\n readonly jobId: string;\n readonly status: AgentJobStatus;\n readonly providerProfileId: string;\n readonly providerLabel: string;\n readonly modelProfileId: string;\n readonly modelLabel: string;\n readonly phaseMessage: string;\n readonly createdAt: string;\n readonly updatedAt: string;\n readonly canCancel: boolean;\n readonly canApply: boolean;\n readonly canRevert: boolean;\n readonly errorCode?: ErrorCode;\n}\n\nexport interface AgentJobResult {\n readonly jobId: string;\n readonly summary: string;\n readonly diff: string;\n readonly files: readonly AgentChangedFile[];\n readonly checks: readonly AgentCheckResult[];\n}\n\nexport interface AgentJobResultResponse {\n readonly snapshot: AgentJobSnapshot;\n readonly result?: AgentJobResult;\n}\n","import { z } from \"zod\";\n\nimport { MAX_ANNOTATION_TARGETS, type SpotAnnotation } from \"../model/annotation.js\";\nimport { AGENT_APPLY_MODES, type AgentApplyMode } from \"../model/agent.js\";\nimport { spotAnnotationSchema } from \"../model/context-schema.js\";\n\nexport {\n pageContextSchema as pageContextRequestSchema,\n spotAnnotationSchema as spotAnnotationRequestSchema,\n spotTargetContextSchema as spotTargetContextRequestSchema,\n} from \"../model/context-schema.js\";\n\nexport const runtimeBootstrapRequestSchema = z.strictObject({});\n\nconst sourceCoordinatesSchema = z.strictObject({\n fileId: z.string().min(1).max(128),\n line: z.number().int().positive(),\n column: z.number().int().positive(),\n});\n\nexport const sourceContextRequestSchema = sourceCoordinatesSchema\n .extend({\n maxLines: z.number().int().positive(),\n })\n .strict();\n\nexport const openEditorRequestSchema = sourceCoordinatesSchema.strict();\n\nconst dataFlowSourceCoordinatesRequestSchema = sourceCoordinatesSchema\n .extend({\n schemaVersion: z.literal(1),\n sourceVersion: z.string().min(1).max(128).optional(),\n })\n .strict();\n\nconst dataFlowComponentIdentityRequestSchema = z.strictObject({\n schemaVersion: z.literal(1),\n componentSourceId: z.string().min(1).max(128),\n sourceVersion: z.string().min(1).max(128),\n});\n\nexport const dataFlowComponentReportRequestSchema = z.union([\n dataFlowSourceCoordinatesRequestSchema,\n dataFlowComponentIdentityRequestSchema,\n]);\n\nexport const dataFlowPageReportRequestSchema = z.strictObject({\n schemaVersion: z.literal(1),\n targets: z\n .array(dataFlowComponentReportRequestSchema)\n .min(1)\n .max(MAX_ANNOTATION_TARGETS),\n});\n\nconst profileIdSchema = z\n .string()\n .min(1)\n .max(64)\n .regex(/^[A-Za-z0-9][A-Za-z0-9._-]*$/);\n\nexport const agentCapabilityRequestSchema = z.strictObject({\n providerProfileId: profileIdSchema,\n modelProfileId: profileIdSchema,\n});\n\nexport const agentWorkspaceHealthRequestSchema = z.strictObject({});\n\nexport const agentJobCreateRequestSchema = z.strictObject({\n annotation: spotAnnotationSchema,\n applyMode: z.enum(AGENT_APPLY_MODES).optional(),\n providerProfileId: profileIdSchema,\n modelProfileId: profileIdSchema,\n providerDataConsent: z.literal(true),\n trustedFastModeConsent: z.literal(true).optional(),\n workingTreeMode: z\n .enum([\"require-clean\", \"include-local-changes\"])\n .default(\"require-clean\"),\n});\n\nexport const agentJobActionRequestSchema = z.strictObject({});\n\nexport type SourceContextRequest = z.infer<typeof sourceContextRequestSchema>;\nexport type RuntimeBootstrapRequest = z.infer<typeof runtimeBootstrapRequestSchema>;\nexport type OpenEditorRequest = z.infer<typeof openEditorRequestSchema>;\nexport type DataFlowComponentReportRequest = z.infer<\n typeof dataFlowComponentReportRequestSchema\n>;\nexport type DataFlowPageReportRequest = z.infer<typeof dataFlowPageReportRequestSchema>;\nexport type AgentCapabilityRequest = z.infer<typeof agentCapabilityRequestSchema>;\nexport interface AgentJobCreateRequest {\n readonly annotation: SpotAnnotation;\n readonly applyMode?: AgentApplyMode;\n readonly providerProfileId: string;\n readonly modelProfileId: string;\n readonly providerDataConsent: true;\n readonly trustedFastModeConsent?: true;\n readonly workingTreeMode: \"require-clean\" | \"include-local-changes\";\n}\n","import { z } from \"zod\";\n\nimport type { SpotAnnotation } from \"../model/annotation.js\";\nimport { spotAnnotationRequestSchema } from \"./requests.js\";\nimport {\n EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS,\n EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES,\n EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION,\n EXTERNAL_HANDOFF_DISPATCH_PHASES,\n EXTERNAL_HANDOFF_FRAMEWORKS,\n EXTERNAL_HANDOFF_LIMITS,\n EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES,\n EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION,\n EXTERNAL_HANDOFF_STATES,\n type ExternalHandoffActiveAdapterKind,\n type ExternalHandoffActiveAdapterState,\n type ExternalHandoffDispatchPhase,\n type ExternalHandoffFramework,\n type ExternalHandoffState,\n} from \"./external-handoff-constants.js\";\n\nexport {\n EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS,\n EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES,\n EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION,\n EXTERNAL_HANDOFF_DISPATCH_PHASES,\n EXTERNAL_HANDOFF_FRAMEWORKS,\n EXTERNAL_HANDOFF_LIMITS,\n EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES,\n EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION,\n EXTERNAL_HANDOFF_STATES,\n type ExternalHandoffActiveAdapterKind,\n type ExternalHandoffActiveAdapterState,\n type ExternalHandoffDispatchPhase,\n type ExternalHandoffFramework,\n type ExternalHandoffReportableDispatchPhase,\n type ExternalHandoffState,\n} from \"./external-handoff-constants.js\";\n\nconst opaqueIdSchema = z\n .string()\n .min(22)\n .max(128)\n .regex(/^[A-Za-z0-9_-]+$/u);\nconst isoTimestampSchema = z.iso.datetime();\nexport const externalHandoffReportableDispatchPhaseSchema = z.enum(\n EXTERNAL_HANDOFF_REPORTABLE_DISPATCH_PHASES,\n);\nconst externalHandoffPageSummarySchema = z.strictObject({\n origin: z.string().min(1).max(2_048),\n pathname: z.string().min(1).max(2_048),\n});\n\nexport const externalHandoffSummarySchema = z.strictObject({\n sessionId: opaqueIdSchema,\n framework: z.enum(EXTERNAL_HANDOFF_FRAMEWORKS),\n revision: z.number().int().positive(),\n cursor: opaqueIdSchema,\n targetCount: z.number().int().positive(),\n page: externalHandoffPageSummarySchema,\n publishedAt: isoTimestampSchema,\n expiresAt: isoTimestampSchema,\n state: z.enum(EXTERNAL_HANDOFF_STATES),\n pickupCount: z\n .number()\n .int()\n .nonnegative()\n .max(EXTERNAL_HANDOFF_LIMITS.maximumConnectorReceipts),\n pickedUpAt: isoTimestampSchema.optional(),\n});\n\nexport const externalHandoffSnapshotSchema = z.strictObject({\n schemaVersion: z.literal(EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION),\n cursor: opaqueIdSchema,\n session: z.strictObject({\n id: opaqueIdSchema,\n framework: z.enum(EXTERNAL_HANDOFF_FRAMEWORKS),\n }),\n revision: z.number().int().positive(),\n publishedAt: isoTimestampSchema,\n expiresAt: isoTimestampSchema,\n annotation: spotAnnotationRequestSchema,\n});\n\nexport const activeAdapterSummarySchema = z\n .strictObject({\n kind: z.enum(EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS),\n state: z.enum(EXTERNAL_HANDOFF_ACTIVE_ADAPTER_STATES),\n canDispatch: z.boolean(),\n connectedAt: isoTimestampSchema,\n updatedAt: isoTimestampSchema,\n })\n .superRefine((value, context) => {\n if (value.canDispatch !== (value.state === \"ready\")) {\n context.addIssue({\n code: \"custom\",\n message: \"canDispatch must match the ready state.\",\n path: [\"canDispatch\"],\n });\n }\n });\n\nexport const dispatchSummarySchema = z.strictObject({\n adapterKind: z.enum(EXTERNAL_HANDOFF_ACTIVE_ADAPTER_KINDS),\n revision: z.number().int().positive(),\n phase: z.enum(EXTERNAL_HANDOFF_DISPATCH_PHASES),\n updatedAt: isoTimestampSchema,\n});\n\nexport const externalHandoffCapabilityRequestSchema = z.strictObject({});\nexport const externalHandoffPublishRequestSchema = z.strictObject({\n requestId: opaqueIdSchema,\n annotation: spotAnnotationRequestSchema,\n});\nexport const externalHandoffStatusRequestSchema = z.strictObject({\n cursor: opaqueIdSchema.optional(),\n});\nexport const externalHandoffResolveDeliveryRequestSchema = z.strictObject({\n cursor: opaqueIdSchema,\n confirmation: z.literal(\"workspace-reviewed\"),\n});\nexport const externalHandoffCapabilitySchema = z.strictObject({\n enabled: z.literal(true),\n brokerReady: z.boolean(),\n activeWaitCount: z\n .number()\n .int()\n .nonnegative()\n .max(EXTERNAL_HANDOFF_LIMITS.maximumWaiters),\n snapshotSchemaVersion: z.literal(EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION),\n brokerProtocolVersion: z.literal(EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION),\n activeAdapter: activeAdapterSummarySchema.nullable(),\n dispatch: dispatchSummarySchema.nullable(),\n});\nexport const externalHandoffPublishDeliverySchema = z.discriminatedUnion(\"mode\", [\n z.strictObject({ mode: z.literal(\"inbox\") }),\n z.strictObject({\n mode: z.literal(\"active\"),\n adapter: activeAdapterSummarySchema,\n dispatch: dispatchSummarySchema,\n }),\n]);\nexport const externalHandoffPublishResultSchema = z.strictObject({\n handoff: externalHandoffSummarySchema,\n delivery: externalHandoffPublishDeliverySchema,\n replayed: z.boolean(),\n});\nexport const externalHandoffStatusResultSchema = z.strictObject({\n handoff: externalHandoffSummarySchema,\n activeAdapter: activeAdapterSummarySchema.nullable(),\n dispatch: dispatchSummarySchema.nullable(),\n});\n\nexport interface ExternalHandoffSummary {\n readonly sessionId: string;\n readonly framework: ExternalHandoffFramework;\n readonly revision: number;\n readonly cursor: string;\n readonly targetCount: number;\n readonly page: Readonly<{ origin: string; pathname: string }>;\n readonly publishedAt: string;\n readonly expiresAt: string;\n readonly state: ExternalHandoffState;\n readonly pickupCount: number;\n readonly pickedUpAt?: string | undefined;\n}\n\nexport interface ExternalHandoffSnapshot {\n readonly schemaVersion: typeof EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION;\n readonly cursor: string;\n readonly session: Readonly<{\n id: string;\n framework: ExternalHandoffFramework;\n }>;\n readonly revision: number;\n readonly publishedAt: string;\n readonly expiresAt: string;\n readonly annotation: SpotAnnotation;\n}\n\nexport interface ActiveAdapterSummary {\n readonly kind: ExternalHandoffActiveAdapterKind;\n readonly state: ExternalHandoffActiveAdapterState;\n readonly canDispatch: boolean;\n readonly connectedAt: string;\n readonly updatedAt: string;\n}\n\nexport interface DispatchSummary {\n readonly adapterKind: ExternalHandoffActiveAdapterKind;\n readonly revision: number;\n readonly phase: ExternalHandoffDispatchPhase;\n readonly updatedAt: string;\n}\n\nexport type ExternalHandoffPublishDelivery =\n | Readonly<{ mode: \"inbox\" }>\n | Readonly<{\n mode: \"active\";\n adapter: ActiveAdapterSummary;\n dispatch: DispatchSummary;\n }>;\n\nexport interface ExternalHandoffPublishResult {\n readonly handoff: ExternalHandoffSummary;\n readonly delivery: ExternalHandoffPublishDelivery;\n readonly replayed: boolean;\n}\n\nexport interface ExternalHandoffStatusResult {\n readonly handoff: ExternalHandoffSummary;\n readonly activeAdapter: ActiveAdapterSummary | null;\n readonly dispatch: DispatchSummary | null;\n}\n\nexport interface ExternalHandoffCapability {\n readonly enabled: true;\n readonly brokerReady: boolean;\n readonly activeWaitCount: number;\n readonly snapshotSchemaVersion: typeof EXTERNAL_HANDOFF_SNAPSHOT_SCHEMA_VERSION;\n readonly brokerProtocolVersion: typeof EXTERNAL_HANDOFF_BROKER_PROTOCOL_VERSION;\n readonly activeAdapter: ActiveAdapterSummary | null;\n readonly dispatch: DispatchSummary | null;\n}\n\nexport type ExternalHandoffPublishRequest = z.infer<\n typeof externalHandoffPublishRequestSchema\n>;\nexport type ExternalHandoffStatusRequest = z.infer<\n typeof externalHandoffStatusRequestSchema\n>;\nexport type ExternalHandoffResolveDeliveryRequest = z.infer<\n typeof externalHandoffResolveDeliveryRequestSchema\n>;\n","import type { ErrorCode } from \"./error-code.js\";\n\nexport class SpotPatchError extends Error {\n readonly code: ErrorCode;\n\n constructor(code: ErrorCode, message = code, options?: ErrorOptions) {\n super(message, options);\n this.name = \"SpotPatchError\";\n this.code = code;\n }\n}\n"],"mappings":"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","names":["z","z"]}