@case-framework/survey-assistant 0.1.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 (98) hide show
  1. package/README.md +212 -0
  2. package/dist/authoring-references-Cy8J-DWt.d.mts +48 -0
  3. package/dist/authoring-references-Cy8J-DWt.d.mts.map +1 -0
  4. package/dist/authoring-references-X6uRaWuf.mjs +68 -0
  5. package/dist/authoring-references-X6uRaWuf.mjs.map +1 -0
  6. package/dist/capabilities-B6tvE7fK.mjs +66 -0
  7. package/dist/capabilities-B6tvE7fK.mjs.map +1 -0
  8. package/dist/capabilities-DvSKtjAw.d.mts +182 -0
  9. package/dist/capabilities-DvSKtjAw.d.mts.map +1 -0
  10. package/dist/capabilities-default.d.mts +15 -0
  11. package/dist/capabilities-default.d.mts.map +1 -0
  12. package/dist/capabilities-default.mjs +347 -0
  13. package/dist/capabilities-default.mjs.map +1 -0
  14. package/dist/constants-CFUWrRtl.mjs +7 -0
  15. package/dist/constants-CFUWrRtl.mjs.map +1 -0
  16. package/dist/constants-Jw0k8ojS.d.mts +67 -0
  17. package/dist/constants-Jw0k8ojS.d.mts.map +1 -0
  18. package/dist/controller-proxy-BRDusFiO.d.mts +57 -0
  19. package/dist/controller-proxy-BRDusFiO.d.mts.map +1 -0
  20. package/dist/controller-proxy-Duxo2IFE.mjs +92 -0
  21. package/dist/controller-proxy-Duxo2IFE.mjs.map +1 -0
  22. package/dist/digest-BsoVq49o.d.mts +9 -0
  23. package/dist/digest-BsoVq49o.d.mts.map +1 -0
  24. package/dist/digest.d.mts +2 -0
  25. package/dist/digest.mjs +20 -0
  26. package/dist/digest.mjs.map +1 -0
  27. package/dist/engine-sPvuixWg.mjs +4857 -0
  28. package/dist/engine-sPvuixWg.mjs.map +1 -0
  29. package/dist/engine.d.mts +3 -0
  30. package/dist/engine.mjs +4 -0
  31. package/dist/index-BWNHkpkh.d.mts +187 -0
  32. package/dist/index-BWNHkpkh.d.mts.map +1 -0
  33. package/dist/index-CUqbBjkc.d.mts +641 -0
  34. package/dist/index-CUqbBjkc.d.mts.map +1 -0
  35. package/dist/index-MpEMQzTm.d.mts +123 -0
  36. package/dist/index-MpEMQzTm.d.mts.map +1 -0
  37. package/dist/index-TFtvBiSQ.d.mts +1149 -0
  38. package/dist/index-TFtvBiSQ.d.mts.map +1 -0
  39. package/dist/memory-thread-repository-CJkkVE2-.mjs +718 -0
  40. package/dist/memory-thread-repository-CJkkVE2-.mjs.map +1 -0
  41. package/dist/protocol-DV0ka9WT.mjs +1032 -0
  42. package/dist/protocol-DV0ka9WT.mjs.map +1 -0
  43. package/dist/protocol.d.mts +3 -0
  44. package/dist/protocol.mjs +2 -0
  45. package/dist/react-VuYe-cPh.mjs +521 -0
  46. package/dist/react-VuYe-cPh.mjs.map +1 -0
  47. package/dist/react-integration.d.mts +2 -0
  48. package/dist/react-integration.mjs +3 -0
  49. package/dist/react.d.mts +3 -0
  50. package/dist/react.mjs +4 -0
  51. package/dist/references/assistant-operations.md +287 -0
  52. package/dist/references/core-rules.md +11 -0
  53. package/dist/references/embedded-forms.md +80 -0
  54. package/dist/references/expressions.md +301 -0
  55. package/dist/references/item-types.md +364 -0
  56. package/dist/references/localization.md +25 -0
  57. package/dist/references/rich-text-content.md +193 -0
  58. package/dist/references/source-material-surveys.md +60 -0
  59. package/dist/references/survey-data-model.md +109 -0
  60. package/dist/references/survey-quality.md +23 -0
  61. package/dist/request-context-jcmXT_Q2.mjs +44 -0
  62. package/dist/request-context-jcmXT_Q2.mjs.map +1 -0
  63. package/dist/request-guardrails-C59IWnH8.mjs +73 -0
  64. package/dist/request-guardrails-C59IWnH8.mjs.map +1 -0
  65. package/dist/server-agent.d.mts +131 -0
  66. package/dist/server-agent.d.mts.map +1 -0
  67. package/dist/server-agent.mjs +229 -0
  68. package/dist/server-agent.mjs.map +1 -0
  69. package/dist/server-runtime.d.mts +123 -0
  70. package/dist/server-runtime.d.mts.map +1 -0
  71. package/dist/server-runtime.mjs +296 -0
  72. package/dist/server-runtime.mjs.map +1 -0
  73. package/dist/server-tasks.d.mts +78 -0
  74. package/dist/server-tasks.d.mts.map +1 -0
  75. package/dist/server-tasks.mjs +253 -0
  76. package/dist/server-tasks.mjs.map +1 -0
  77. package/dist/server-tools.d.mts +2 -0
  78. package/dist/server-tools.mjs +2 -0
  79. package/dist/server.d.mts +52 -0
  80. package/dist/server.d.mts.map +1 -0
  81. package/dist/server.mjs +6 -0
  82. package/dist/storage-postgres.d.mts +37 -0
  83. package/dist/storage-postgres.d.mts.map +1 -0
  84. package/dist/storage-postgres.mjs +167 -0
  85. package/dist/storage-postgres.mjs.map +1 -0
  86. package/dist/thread-documents-DamIq9Od.d.mts +91 -0
  87. package/dist/thread-documents-DamIq9Od.d.mts.map +1 -0
  88. package/dist/thread-handlers-DpynUc64.d.mts +112 -0
  89. package/dist/thread-handlers-DpynUc64.d.mts.map +1 -0
  90. package/dist/tools-Hz2p7vyv.mjs +1879 -0
  91. package/dist/tools-Hz2p7vyv.mjs.map +1 -0
  92. package/dist/ui.css +2 -0
  93. package/dist/ui.d.mts +63 -0
  94. package/dist/ui.d.mts.map +1 -0
  95. package/dist/ui.mjs +2238 -0
  96. package/dist/ui.mjs.map +1 -0
  97. package/package.json +166 -0
  98. package/ui.css.d.ts +3 -0
@@ -0,0 +1,641 @@
1
+ import { i as AssistantItemTypeManifest, o as SurveyAssistantCapabilityManifest } from "./capabilities-DvSKtjAw.mjs";
2
+ import { P as SurveyAssistantTaskContext, bt as SurveyValidationIssue, cn as SurveyDocumentSnapshot, d as SurveyAssistantTurnFinal, ln as SurveyDocumentVersion, p as SurveyChangeSet, vt as SurveyOperation, xt as SurveyValidationResult, yn as JsonValue$1 } from "./index-TFtvBiSQ.mjs";
3
+ import { z } from "zod";
4
+ import { JsonExpression, JsonPatchOperation, RawSurvey, RawSurveyItem, ResponseValue, SurveyTranslations, ValueType } from "@case-framework/survey-core";
5
+
6
+ //#region src/engine/capabilities.d.ts
7
+ interface AssistantCapabilityReference {
8
+ topic: string;
9
+ title?: string;
10
+ markdown: string;
11
+ }
12
+ interface AssistantItemInspection {
13
+ summary: string;
14
+ details?: JsonValue$1;
15
+ }
16
+ interface AssistantItemCapabilityAdapter {
17
+ manifest: AssistantItemTypeManifest;
18
+ references?: AssistantCapabilityReference[];
19
+ normalizeCreate?: (item: RawSurveyItem) => RawSurveyItem;
20
+ validateItem?: (item: RawSurveyItem) => SurveyValidationIssue[];
21
+ supportsOperation?: (operation: SurveyOperation) => boolean;
22
+ deriveResponseSlots?: (item: RawSurveyItem) => Record<string, ValueType>;
23
+ inspectItem?: (item: RawSurveyItem) => AssistantItemInspection;
24
+ }
25
+ interface SurveyAssistantCapabilitySet {
26
+ manifest: SurveyAssistantCapabilityManifest;
27
+ byItemType: ReadonlyMap<string, AssistantItemCapabilityAdapter>;
28
+ }
29
+ declare const resolveAssistantCapabilityReference: ({
30
+ capabilities,
31
+ itemType,
32
+ topic
33
+ }: {
34
+ capabilities: SurveyAssistantCapabilitySet | undefined;
35
+ itemType: string;
36
+ topic: string;
37
+ }) => AssistantCapabilityReference | undefined;
38
+ declare const inspectAssistantItem: ({
39
+ capabilities,
40
+ item
41
+ }: {
42
+ capabilities: SurveyAssistantCapabilitySet | undefined;
43
+ item: RawSurveyItem;
44
+ }) => AssistantItemInspection | undefined;
45
+ type AssistantItemCreationResolution = {
46
+ kind: "deterministic";
47
+ } | {
48
+ kind: "ui-intent";
49
+ intent: {
50
+ kind: "open-create-item";
51
+ itemType: string;
52
+ parentItemId?: string;
53
+ };
54
+ } | {
55
+ kind: "unsupported";
56
+ reason: string;
57
+ };
58
+ declare const createSurveyAssistantCapabilities: (capabilities: readonly AssistantItemCapabilityAdapter[]) => SurveyAssistantCapabilitySet;
59
+ declare const getDeterministicCreateItemTypes: (manifest: SurveyAssistantCapabilityManifest) => string[];
60
+ declare const resolveAssistantItemCreation: ({
61
+ itemType,
62
+ manifest,
63
+ parentItemId
64
+ }: {
65
+ itemType: string;
66
+ manifest: SurveyAssistantCapabilityManifest;
67
+ parentItemId?: string;
68
+ }) => AssistantItemCreationResolution;
69
+ declare const createUnsupportedItemCapability: ({
70
+ displayName,
71
+ itemType
72
+ }: {
73
+ displayName: string;
74
+ itemType: string;
75
+ }) => AssistantItemCapabilityAdapter;
76
+ declare class SurveyAssistantCapabilityMismatchError extends Error {
77
+ readonly code = "survey-assistant-capability-mismatch";
78
+ constructor(message?: string);
79
+ }
80
+ declare const assertSurveyAssistantCapabilities: ({
81
+ manifest,
82
+ trustedCapabilities,
83
+ versionDigest
84
+ }: {
85
+ manifest: SurveyAssistantCapabilityManifest;
86
+ trustedCapabilities?: SurveyAssistantCapabilitySet;
87
+ versionDigest: string;
88
+ }) => void;
89
+ //#endregion
90
+ //#region src/engine/context.d.ts
91
+ type SurveyAssistantResponseSlotTypes = Record<string, ValueType | undefined>;
92
+ interface SurveyAssistantInspectionOutlineNode {
93
+ itemId: string;
94
+ parentId?: string;
95
+ depth: number;
96
+ itemType: string;
97
+ key: string;
98
+ fullKey: string;
99
+ itemLabel?: string;
100
+ childCount: number;
101
+ }
102
+ interface SurveyAssistantInspectionFocus {
103
+ focusItemId: string;
104
+ parentItemId?: string;
105
+ pathItemIds: string[];
106
+ siblingItemIds: string[];
107
+ childItemIds: string[];
108
+ }
109
+ interface SurveyAssistantInspectionItemNode {
110
+ itemId: string;
111
+ itemType: string;
112
+ itemKey: string;
113
+ fullKey: string;
114
+ itemLabel?: string;
115
+ siblingKeys: string[];
116
+ translations: Array<{
117
+ locale: string;
118
+ contentKey: string;
119
+ text: string;
120
+ }>;
121
+ descendants: SurveyAssistantInspectionItemNode[];
122
+ }
123
+ interface SurveyAssistantInspectionKeyEntry {
124
+ itemId: string;
125
+ itemType: string;
126
+ key: string;
127
+ fullKey: string;
128
+ itemLabel?: string;
129
+ path: string[];
130
+ }
131
+ /** Deterministic, request-local lookup data derived from the canonical document. */
132
+ interface SurveyAssistantInspectionIndex {
133
+ surveyKey?: string;
134
+ locales: string[];
135
+ itemCount: number;
136
+ outline: SurveyAssistantInspectionOutlineNode[];
137
+ focus?: SurveyAssistantInspectionFocus;
138
+ focusItem?: SurveyAssistantInspectionItemNode;
139
+ keyIndex: SurveyAssistantInspectionKeyEntry[];
140
+ responseSlots: string[];
141
+ focusItemTreeTruncated: boolean;
142
+ }
143
+ /** Request-local derived state built from one authoritative survey document. */
144
+ interface SurveyAssistantEngineContext {
145
+ document: SurveyDocumentSnapshot;
146
+ version: SurveyDocumentVersion;
147
+ survey: RawSurvey;
148
+ ui: SurveyDocumentSnapshot["ui"];
149
+ capabilities: SurveyAssistantCapabilityManifest;
150
+ responseSlotTypes: SurveyAssistantResponseSlotTypes;
151
+ inspection: SurveyAssistantInspectionIndex;
152
+ trustedCapabilities?: SurveyAssistantCapabilitySet;
153
+ }
154
+ interface CreateSurveyAssistantEngineContextOptions {
155
+ focusItemId?: string;
156
+ }
157
+ declare const deriveResponseSlotTypes: (survey: RawSurvey, trustedCapabilities?: SurveyAssistantCapabilitySet) => SurveyAssistantResponseSlotTypes;
158
+ declare const createSurveyAssistantEngineContext: (document: SurveyDocumentSnapshot, trustedCapabilities?: SurveyAssistantCapabilitySet, options?: CreateSurveyAssistantEngineContextOptions) => SurveyAssistantEngineContext;
159
+ //#endregion
160
+ //#region src/engine/expression-validation.d.ts
161
+ type ResponseSlotTypeLookup = Record<string, ValueType | undefined>;
162
+ declare const inferExpressionReturnType: (expression: JsonExpression | undefined, responseSlotTypes: ResponseSlotTypeLookup) => ValueType | undefined;
163
+ declare const validateExpression: ({
164
+ expression,
165
+ expectedReturnType,
166
+ issues,
167
+ operationIndex,
168
+ responseSlotTypes,
169
+ scope
170
+ }: {
171
+ expression: JsonExpression | undefined;
172
+ expectedReturnType?: ValueType;
173
+ issues: SurveyValidationIssue[];
174
+ operationIndex: number;
175
+ responseSlotTypes: ResponseSlotTypeLookup;
176
+ scope: string;
177
+ }) => void;
178
+ //#endregion
179
+ //#region src/engine/expression-mutations.d.ts
180
+ declare const expressionSchema: z.ZodType<JsonExpression>;
181
+ declare const expressionMutationSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
182
+ kind: z.ZodLiteral<"set-item-display-condition">;
183
+ itemId: z.ZodString;
184
+ expression: z.ZodType<JsonExpression, unknown, z.core.$ZodTypeInternals<JsonExpression, unknown>>;
185
+ }, z.core.$strip>, z.ZodObject<{
186
+ kind: z.ZodLiteral<"clear-item-display-condition">;
187
+ itemId: z.ZodString;
188
+ }, z.core.$strip>, z.ZodObject<{
189
+ kind: z.ZodLiteral<"set-component-display-condition">;
190
+ itemId: z.ZodString;
191
+ componentId: z.ZodString;
192
+ expression: z.ZodType<JsonExpression, unknown, z.core.$ZodTypeInternals<JsonExpression, unknown>>;
193
+ }, z.core.$strip>, z.ZodObject<{
194
+ kind: z.ZodLiteral<"clear-component-display-condition">;
195
+ itemId: z.ZodString;
196
+ componentId: z.ZodString;
197
+ }, z.core.$strip>, z.ZodObject<{
198
+ kind: z.ZodLiteral<"set-component-disabled-condition">;
199
+ itemId: z.ZodString;
200
+ componentId: z.ZodString;
201
+ expression: z.ZodType<JsonExpression, unknown, z.core.$ZodTypeInternals<JsonExpression, unknown>>;
202
+ }, z.core.$strip>, z.ZodObject<{
203
+ kind: z.ZodLiteral<"clear-component-disabled-condition">;
204
+ itemId: z.ZodString;
205
+ componentId: z.ZodString;
206
+ }, z.core.$strip>, z.ZodObject<{
207
+ kind: z.ZodLiteral<"set-validation-expression">;
208
+ itemId: z.ZodString;
209
+ validationKey: z.ZodString;
210
+ expression: z.ZodType<JsonExpression, unknown, z.core.$ZodTypeInternals<JsonExpression, unknown>>;
211
+ }, z.core.$strip>, z.ZodObject<{
212
+ kind: z.ZodLiteral<"clear-validation-expression">;
213
+ itemId: z.ZodString;
214
+ validationKey: z.ZodString;
215
+ }, z.core.$strip>, z.ZodObject<{
216
+ kind: z.ZodLiteral<"set-prefill">;
217
+ itemId: z.ZodString;
218
+ prefill: z.ZodObject<{
219
+ id: z.ZodString;
220
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
221
+ type: z.ZodLiteral<"itemResponse">;
222
+ }, z.core.$strip>, z.ZodObject<{
223
+ type: z.ZodLiteral<"field">;
224
+ fieldId: z.ZodString;
225
+ }, z.core.$strip>, z.ZodObject<{
226
+ type: z.ZodLiteral<"embeddedField">;
227
+ optionId: z.ZodString;
228
+ fieldId: z.ZodString;
229
+ }, z.core.$strip>], "type">;
230
+ when: z.ZodOptional<z.ZodType<JsonExpression, unknown, z.core.$ZodTypeInternals<JsonExpression, unknown>>>;
231
+ apply: z.ZodOptional<z.ZodLiteral<"ifEmpty">>;
232
+ source: z.ZodDiscriminatedUnion<[z.ZodObject<{
233
+ type: z.ZodLiteral<"static">;
234
+ value: z.ZodType<ResponseValue, unknown, z.core.$ZodTypeInternals<ResponseValue, unknown>>;
235
+ }, z.core.$strip>, z.ZodObject<{
236
+ type: z.ZodLiteral<"expression">;
237
+ expression: z.ZodType<JsonExpression, unknown, z.core.$ZodTypeInternals<JsonExpression, unknown>>;
238
+ }, z.core.$strip>, z.ZodObject<{
239
+ type: z.ZodLiteral<"templateValue">;
240
+ key: z.ZodString;
241
+ }, z.core.$strip>, z.ZodObject<{
242
+ type: z.ZodLiteral<"previousResponse">;
243
+ ref: z.ZodObject<{
244
+ surveyKey: z.ZodOptional<z.ZodString>;
245
+ itemId: z.ZodString;
246
+ target: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
247
+ type: z.ZodLiteral<"itemResponse">;
248
+ }, z.core.$strip>, z.ZodObject<{
249
+ type: z.ZodLiteral<"field">;
250
+ fieldId: z.ZodString;
251
+ }, z.core.$strip>, z.ZodObject<{
252
+ type: z.ZodLiteral<"embeddedField">;
253
+ optionId: z.ZodString;
254
+ fieldId: z.ZodString;
255
+ }, z.core.$strip>], "type">>;
256
+ }, z.core.$strip>;
257
+ ifUnsupported: z.ZodOptional<z.ZodLiteral<"skip">>;
258
+ }, z.core.$strip>], "type">;
259
+ }, z.core.$strip>;
260
+ }, z.core.$strip>, z.ZodObject<{
261
+ kind: z.ZodLiteral<"clear-prefill">;
262
+ itemId: z.ZodString;
263
+ prefillId: z.ZodString;
264
+ }, z.core.$strip>, z.ZodObject<{
265
+ kind: z.ZodLiteral<"set-template-value">;
266
+ templateKey: z.ZodString;
267
+ templateValue: z.ZodObject<{
268
+ type: z.ZodEnum<{
269
+ default: "default";
270
+ date2string: "date2string";
271
+ }>;
272
+ returnType: z.ZodEnum<{
273
+ string: "string";
274
+ number: "number";
275
+ boolean: "boolean";
276
+ date: "date";
277
+ duration: "duration";
278
+ reference: "reference";
279
+ "string[]": "string[]";
280
+ "duration[]": "duration[]";
281
+ "reference[]": "reference[]";
282
+ "number[]": "number[]";
283
+ "date[]": "date[]";
284
+ }>;
285
+ expression: z.ZodOptional<z.ZodType<JsonExpression, unknown, z.core.$ZodTypeInternals<JsonExpression, unknown>>>;
286
+ dateFormat: z.ZodOptional<z.ZodString>;
287
+ }, z.core.$strip>;
288
+ }, z.core.$strip>, z.ZodObject<{
289
+ kind: z.ZodLiteral<"clear-template-value">;
290
+ templateKey: z.ZodString;
291
+ }, z.core.$strip>], "kind">;
292
+ type ExpressionMutation = z.infer<typeof expressionMutationSchema>;
293
+ declare const buildExpressionMutationPatches: ({
294
+ mutation,
295
+ operationIndex,
296
+ issues,
297
+ patches,
298
+ responseSlotTypes,
299
+ snapshot
300
+ }: {
301
+ mutation: ExpressionMutation;
302
+ operationIndex: number;
303
+ issues: SurveyValidationIssue[];
304
+ patches: JsonPatchOperation[];
305
+ responseSlotTypes: ResponseSlotTypeLookup;
306
+ snapshot: SurveyAssistantEngineContext;
307
+ }) => void;
308
+ //#endregion
309
+ //#region src/engine/inspection.d.ts
310
+ declare const DEFAULT_LIMIT = 12;
311
+ declare const MAX_LIMIT = 50;
312
+ declare const itemSummarySchema: z.ZodObject<{
313
+ itemId: z.ZodString;
314
+ itemType: z.ZodString;
315
+ key: z.ZodString;
316
+ fullKey: z.ZodString;
317
+ itemLabel: z.ZodOptional<z.ZodString>;
318
+ parentId: z.ZodOptional<z.ZodString>;
319
+ depth: z.ZodOptional<z.ZodNumber>;
320
+ childCount: z.ZodOptional<z.ZodNumber>;
321
+ path: z.ZodOptional<z.ZodArray<z.ZodString>>;
322
+ siblingKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
323
+ }, z.core.$strip>;
324
+ type ItemSummary = z.infer<typeof itemSummarySchema>;
325
+ declare const translationEntrySchema: z.ZodObject<{
326
+ locale: z.ZodString;
327
+ contentKey: z.ZodString;
328
+ text: z.ZodString;
329
+ }, z.core.$strip>;
330
+ type TranslationEntry = z.infer<typeof translationEntrySchema>;
331
+ declare const choiceOptionDetailsSchema: z.ZodObject<{
332
+ id: z.ZodString;
333
+ key: z.ZodOptional<z.ZodString>;
334
+ labelContentKey: z.ZodString;
335
+ hasDisplayCondition: z.ZodOptional<z.ZodBoolean>;
336
+ embeddedFormItemId: z.ZodOptional<z.ZodString>;
337
+ embeddedFormFieldGroupCount: z.ZodOptional<z.ZodNumber>;
338
+ embeddedFormTranslationPrefix: z.ZodOptional<z.ZodString>;
339
+ embeddedFormResponseSlotPrefix: z.ZodOptional<z.ZodString>;
340
+ }, z.core.$strip>;
341
+ declare const formSelectOptionDetailsSchema: z.ZodObject<{
342
+ id: z.ZodString;
343
+ value: z.ZodOptional<z.ZodString>;
344
+ labelContentKey: z.ZodString;
345
+ }, z.core.$strip>;
346
+ declare const formFieldGroupLayoutSchema: z.ZodObject<{
347
+ base: z.ZodNumber;
348
+ xs: z.ZodNumber;
349
+ sm: z.ZodNumber;
350
+ md: z.ZodNumber;
351
+ xl: z.ZodNumber;
352
+ }, z.core.$strip>;
353
+ declare const formFieldDetailsSchema: z.ZodObject<{
354
+ id: z.ZodString;
355
+ key: z.ZodString;
356
+ type: z.ZodString;
357
+ responseSlotId: z.ZodString;
358
+ labelContentKey: z.ZodString;
359
+ descriptionContentKey: z.ZodString;
360
+ errorContentKey: z.ZodString;
361
+ placeholderContentKey: z.ZodOptional<z.ZodString>;
362
+ unitContentKey: z.ZodOptional<z.ZodString>;
363
+ checkedLabelContentKey: z.ZodOptional<z.ZodString>;
364
+ uncheckedLabelContentKey: z.ZodOptional<z.ZodString>;
365
+ required: z.ZodOptional<z.ZodBoolean>;
366
+ controllerType: z.ZodOptional<z.ZodString>;
367
+ validationTypes: z.ZodOptional<z.ZodArray<z.ZodString>>;
368
+ validationMessageContentKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
369
+ selectOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
370
+ id: z.ZodString;
371
+ value: z.ZodOptional<z.ZodString>;
372
+ labelContentKey: z.ZodString;
373
+ }, z.core.$strip>>>;
374
+ }, z.core.$strip>;
375
+ declare const formFieldGroupDetailsSchema: z.ZodObject<{
376
+ id: z.ZodString;
377
+ titleContentKey: z.ZodString;
378
+ descriptionContentKey: z.ZodString;
379
+ hasDisplayCondition: z.ZodOptional<z.ZodBoolean>;
380
+ layout: z.ZodObject<{
381
+ base: z.ZodNumber;
382
+ xs: z.ZodNumber;
383
+ sm: z.ZodNumber;
384
+ md: z.ZodNumber;
385
+ xl: z.ZodNumber;
386
+ }, z.core.$strip>;
387
+ fieldCount: z.ZodNumber;
388
+ fields: z.ZodArray<z.ZodObject<{
389
+ id: z.ZodString;
390
+ key: z.ZodString;
391
+ type: z.ZodString;
392
+ responseSlotId: z.ZodString;
393
+ labelContentKey: z.ZodString;
394
+ descriptionContentKey: z.ZodString;
395
+ errorContentKey: z.ZodString;
396
+ placeholderContentKey: z.ZodOptional<z.ZodString>;
397
+ unitContentKey: z.ZodOptional<z.ZodString>;
398
+ checkedLabelContentKey: z.ZodOptional<z.ZodString>;
399
+ uncheckedLabelContentKey: z.ZodOptional<z.ZodString>;
400
+ required: z.ZodOptional<z.ZodBoolean>;
401
+ controllerType: z.ZodOptional<z.ZodString>;
402
+ validationTypes: z.ZodOptional<z.ZodArray<z.ZodString>>;
403
+ validationMessageContentKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
404
+ selectOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
405
+ id: z.ZodString;
406
+ value: z.ZodOptional<z.ZodString>;
407
+ labelContentKey: z.ZodString;
408
+ }, z.core.$strip>>>;
409
+ }, z.core.$strip>>;
410
+ }, z.core.$strip>;
411
+ declare const itemConfigDetailsSchema: z.ZodObject<{
412
+ kind: z.ZodEnum<{
413
+ choice: "choice";
414
+ form: "form";
415
+ generic: "generic";
416
+ }>;
417
+ summary: z.ZodArray<z.ZodString>;
418
+ mainResponseSlotId: z.ZodOptional<z.ZodString>;
419
+ choiceOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
420
+ id: z.ZodString;
421
+ key: z.ZodOptional<z.ZodString>;
422
+ labelContentKey: z.ZodString;
423
+ hasDisplayCondition: z.ZodOptional<z.ZodBoolean>;
424
+ embeddedFormItemId: z.ZodOptional<z.ZodString>;
425
+ embeddedFormFieldGroupCount: z.ZodOptional<z.ZodNumber>;
426
+ embeddedFormTranslationPrefix: z.ZodOptional<z.ZodString>;
427
+ embeddedFormResponseSlotPrefix: z.ZodOptional<z.ZodString>;
428
+ }, z.core.$strip>>>;
429
+ formFieldGroups: z.ZodOptional<z.ZodArray<z.ZodObject<{
430
+ id: z.ZodString;
431
+ titleContentKey: z.ZodString;
432
+ descriptionContentKey: z.ZodString;
433
+ hasDisplayCondition: z.ZodOptional<z.ZodBoolean>;
434
+ layout: z.ZodObject<{
435
+ base: z.ZodNumber;
436
+ xs: z.ZodNumber;
437
+ sm: z.ZodNumber;
438
+ md: z.ZodNumber;
439
+ xl: z.ZodNumber;
440
+ }, z.core.$strip>;
441
+ fieldCount: z.ZodNumber;
442
+ fields: z.ZodArray<z.ZodObject<{
443
+ id: z.ZodString;
444
+ key: z.ZodString;
445
+ type: z.ZodString;
446
+ responseSlotId: z.ZodString;
447
+ labelContentKey: z.ZodString;
448
+ descriptionContentKey: z.ZodString;
449
+ errorContentKey: z.ZodString;
450
+ placeholderContentKey: z.ZodOptional<z.ZodString>;
451
+ unitContentKey: z.ZodOptional<z.ZodString>;
452
+ checkedLabelContentKey: z.ZodOptional<z.ZodString>;
453
+ uncheckedLabelContentKey: z.ZodOptional<z.ZodString>;
454
+ required: z.ZodOptional<z.ZodBoolean>;
455
+ controllerType: z.ZodOptional<z.ZodString>;
456
+ validationTypes: z.ZodOptional<z.ZodArray<z.ZodString>>;
457
+ validationMessageContentKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
458
+ selectOptions: z.ZodOptional<z.ZodArray<z.ZodObject<{
459
+ id: z.ZodString;
460
+ value: z.ZodOptional<z.ZodString>;
461
+ labelContentKey: z.ZodString;
462
+ }, z.core.$strip>>>;
463
+ }, z.core.$strip>>;
464
+ }, z.core.$strip>>>;
465
+ }, z.core.$strip>;
466
+ type ChoiceOptionDetails = z.infer<typeof choiceOptionDetailsSchema>;
467
+ type FormFieldDetails = z.infer<typeof formFieldDetailsSchema>;
468
+ type FormFieldGroupDetails = z.infer<typeof formFieldGroupDetailsSchema>;
469
+ type ItemConfigDetails = z.infer<typeof itemConfigDetailsSchema>;
470
+ type SurveyInspectionIndex = SurveyAssistantEngineContext["inspection"];
471
+ type SurveyOutlineNode = SurveyInspectionIndex["outline"][number];
472
+ type SurveyKeyIndexEntry = SurveyInspectionIndex["keyIndex"][number];
473
+ type SurveyFocusItemNode = NonNullable<SurveyInspectionIndex["focusItem"]>;
474
+ declare const normalizeText: (value: string | undefined) => string;
475
+ declare const clampLimit: (limit: number | undefined) => number;
476
+ declare const parseCursor: (cursor: string | undefined) => number;
477
+ declare const unique: <T>(values: T[]) => T[];
478
+ declare const sliceWithCursor: <T>(values: T[], input: {
479
+ cursor?: string;
480
+ limit?: number;
481
+ }) => {
482
+ items: T[];
483
+ nextCursor: string | undefined;
484
+ truncated: boolean;
485
+ };
486
+ declare const mapOutlineById: (snapshot: SurveyAssistantEngineContext) => Map<string, SurveyAssistantInspectionOutlineNode>;
487
+ declare const mapKeyIndexById: (snapshot: SurveyAssistantEngineContext) => Map<string, SurveyAssistantInspectionKeyEntry>;
488
+ /** The full-survey key index, regardless of the (possibly focus-scoped) outline. */
489
+ declare const getKeyIndexEntries: (snapshot: SurveyAssistantEngineContext) => SurveyKeyIndexEntry[];
490
+ declare const getRawSurvey: (snapshot: SurveyAssistantEngineContext) => Partial<RawSurvey>;
491
+ declare const getRawSurveyItems: (snapshot: SurveyAssistantEngineContext) => RawSurveyItem[];
492
+ declare const mapRawItemsById: (snapshot: SurveyAssistantEngineContext) => Map<string, RawSurveyItem>;
493
+ declare const buildSurveyTranslations: (snapshot: SurveyAssistantEngineContext) => SurveyTranslations;
494
+ declare const summarizeRawItem: (item: RawSurveyItem) => ItemSummary;
495
+ declare const buildItemTranslationEntries: (snapshot: SurveyAssistantEngineContext, itemId: string, input: {
496
+ locales?: string[];
497
+ textLimit?: number;
498
+ }) => TranslationEntry[];
499
+ declare const summarizeOutlineNode: (node: SurveyOutlineNode) => ItemSummary;
500
+ declare const summarizeKeyIndexEntry: (entry: SurveyKeyIndexEntry, outlineById: Map<string, SurveyOutlineNode>) => ItemSummary;
501
+ declare const summarizeKeyIndexEntries: (entries: SurveyKeyIndexEntry[], outlineById: Map<string, SurveyOutlineNode>) => ItemSummary[];
502
+ declare const buildItemConfigDetails: (rawItem: RawSurveyItem) => ItemConfigDetails | undefined;
503
+ declare const buildEmbeddedFormDetails: (choiceOption: ChoiceOptionDetails, embeddedForm: unknown) => ItemConfigDetails | undefined;
504
+ declare const buildConfigSearchText: (rawItem: RawSurveyItem) => string[];
505
+ declare const summarizeFocusItemNode: (node: SurveyFocusItemNode, outlineById: Map<string, SurveyOutlineNode>) => ItemSummary;
506
+ declare const summarizeItemById: (itemId: string, indexById: Map<string, SurveyKeyIndexEntry>, outlineById: Map<string, SurveyOutlineNode>) => ItemSummary | undefined;
507
+ /**
508
+ * Resolve an item by internal itemId, or fall back to matching on `key` /
509
+ * `fullKey`. Model-facing text (outline rows, fullKey paths) only ever shows
510
+ * key/fullKey, not the internal itemId, so models often pass a key like
511
+ * "info_1" where an itemId is expected — this keeps that usage working.
512
+ */
513
+ declare const resolveItemSummary: (identifier: string, indexById: Map<string, SurveyKeyIndexEntry>, outlineById: Map<string, SurveyOutlineNode>) => ItemSummary | undefined;
514
+ declare const itemMatchesQuery: (item: ItemSummary, query: string) => boolean;
515
+ /**
516
+ * Direct children of `parentFullKey` derived from the full-survey key index.
517
+ * This works for any item, selected or not.
518
+ */
519
+ declare const findDirectChildrenByFullKey: (entries: SurveyKeyIndexEntry[], outlineById: Map<string, SurveyOutlineNode>, parentFullKey: string) => ItemSummary[];
520
+ //#endregion
521
+ //#region src/engine/normalization.d.ts
522
+ /**
523
+ * Accepts common model-authored shorthand and converts it to the strict
524
+ * assistant operation shape before validation. This keeps the public tool
525
+ * compact while making it tolerant of predictable schema-near authoring
526
+ * mistakes: nested raw translation maps, sibling config objects, choice
527
+ * optionId aliases, and flat form fields.
528
+ */
529
+ declare const normalizeSurveyChangeOperations: (operations: unknown[], defaultLocale: string) => unknown[];
530
+ //#endregion
531
+ //#region src/engine/operations.d.ts
532
+ declare const MAX_SURVEY_ASSISTANT_OPERATIONS_PER_PROPOSAL = 200;
533
+ declare const buildSurveyDocumentVersion: (snapshot: SurveyAssistantEngineContext | SurveyDocumentSnapshot) => SurveyDocumentVersion;
534
+ declare const validateSurveyOperations: ({
535
+ operations,
536
+ snapshot: snapshotInput
537
+ }: {
538
+ operations: SurveyOperation[];
539
+ snapshot: SurveyAssistantEngineContext | SurveyDocumentSnapshot | undefined;
540
+ }) => SurveyValidationResult;
541
+ declare const createSurveyChangeSet: ({
542
+ operations,
543
+ snapshot,
544
+ summary,
545
+ turnId
546
+ }: {
547
+ operations: SurveyOperation[];
548
+ snapshot: SurveyAssistantEngineContext | SurveyDocumentSnapshot | undefined;
549
+ summary: string;
550
+ turnId: string;
551
+ }) => SurveyChangeSet;
552
+ //#endregion
553
+ //#region src/engine/turn-change-collector.d.ts
554
+ declare const SURVEY_CHANGE_CONTINUATION_MODES: readonly ["append", "replace"];
555
+ type SurveyChangeContinuationMode = (typeof SURVEY_CHANGE_CONTINUATION_MODES)[number];
556
+ declare const SURVEY_CHANGE_CONTINUATION_DESCRIPTION = "Omit only for the first mutation call in this turn. On every later mutation call, use \"append\" for independent additional work or \"replace\" for a correction that should discard all currently active candidates.";
557
+ interface RegisterSurveyChangeSetOptions {
558
+ continuationMode?: SurveyChangeContinuationMode;
559
+ }
560
+ declare class TurnChangeCollector {
561
+ #private;
562
+ readonly turnId: string;
563
+ constructor(turnId?: `${string}-${string}-${string}-${string}-${string}`);
564
+ register(candidate: SurveyChangeSet, {
565
+ continuationMode
566
+ }?: RegisterSurveyChangeSetOptions): SurveyChangeSet;
567
+ finalize(status: SurveyAssistantTurnFinal["status"], createdAt?: string): SurveyAssistantTurnFinal;
568
+ getCandidate(changeSetId: string): SurveyChangeSet | undefined;
569
+ get final(): SurveyAssistantTurnFinal | null;
570
+ }
571
+ //#endregion
572
+ //#region src/engine/task-context.d.ts
573
+ type SurveyAssistantTaskPurpose = "suggest-item-key" | "suggest-item-label" | "translate-content";
574
+ interface BuildSurveyAssistantTaskContextOptions {
575
+ purpose: SurveyAssistantTaskPurpose;
576
+ focusItemId?: string;
577
+ sourceLocale?: string;
578
+ targetLocales?: readonly string[];
579
+ sourceTexts?: readonly string[];
580
+ }
581
+ declare const buildSurveyAssistantTaskContext: (snapshot: SurveyDocumentSnapshot, options: BuildSurveyAssistantTaskContextOptions) => SurveyAssistantTaskContext;
582
+ //#endregion
583
+ //#region src/engine/task-result-cache.d.ts
584
+ interface SurveyAssistantTaskResultCacheOptions {
585
+ ttlMs?: number;
586
+ maxEntries?: number;
587
+ now?: () => number;
588
+ }
589
+ /** Small in-memory LRU cache for deterministic, snapshot-scoped one-shot results. */
590
+ declare class SurveyAssistantTaskResultCache {
591
+ private readonly entries;
592
+ private readonly ttlMs;
593
+ private readonly maxEntries;
594
+ private readonly now;
595
+ constructor(options?: SurveyAssistantTaskResultCacheOptions);
596
+ get<TResult>(key: string): TResult | undefined;
597
+ set<TResult>(key: string, value: TResult): void;
598
+ clear(): void;
599
+ }
600
+ //#endregion
601
+ //#region src/engine/audit.d.ts
602
+ type SurveyAuditSeverity = "error" | "warning" | "info";
603
+ type SurveyAuditCategory = "structure" | "content" | "localization" | "logic" | "responses" | "assets" | "quality";
604
+ interface SurveyAuditFinding {
605
+ code: string;
606
+ severity: SurveyAuditSeverity;
607
+ category: SurveyAuditCategory;
608
+ message: string;
609
+ itemId?: string;
610
+ locale?: string;
611
+ contentKey?: string;
612
+ suggestion?: string;
613
+ }
614
+ interface SurveyQualityReviewPrinciple {
615
+ id: string;
616
+ title: string;
617
+ prompt: string;
618
+ }
619
+ interface SurveyAuditReport {
620
+ summary: Record<SurveyAuditSeverity, number> & {
621
+ total: number;
622
+ };
623
+ metrics: {
624
+ itemCount: number;
625
+ localeCount: number;
626
+ responseSlotCount: number;
627
+ assetCount: number;
628
+ itemTypes: Record<string, number>;
629
+ };
630
+ findings: SurveyAuditFinding[];
631
+ qualityReviewPrinciples: SurveyQualityReviewPrinciple[];
632
+ note: string;
633
+ }
634
+ declare const auditSurvey: (context: SurveyAssistantEngineContext, options?: {
635
+ sourceLocale?: string;
636
+ targetLocales?: string[];
637
+ maxFindings?: number;
638
+ }) => SurveyAuditReport;
639
+ //#endregion
640
+ export { mapOutlineById as $, SurveyInspectionIndex as A, AssistantCapabilityReference as At, clampLimit as B, inspectAssistantItem as Bt, DEFAULT_LIMIT as C, SurveyAssistantInspectionIndex as Ct, ItemSummary as D, SurveyAssistantResponseSlotTypes as Dt, ItemConfigDetails as E, SurveyAssistantInspectionOutlineNode as Et, buildEmbeddedFormDetails as F, SurveyAssistantCapabilitySet as Ft, formSelectOptionDetailsSchema as G, formFieldDetailsSchema as H, resolveAssistantItemCreation as Ht, buildItemConfigDetails as I, assertSurveyAssistantCapabilities as It, getRawSurveyItems as J, getKeyIndexEntries as K, buildItemTranslationEntries as L, createSurveyAssistantCapabilities as Lt, SurveyOutlineNode as M, AssistantItemCreationResolution as Mt, TranslationEntry as N, AssistantItemInspection as Nt, MAX_LIMIT as O, createSurveyAssistantEngineContext as Ot, buildConfigSearchText as P, SurveyAssistantCapabilityMismatchError as Pt, mapKeyIndexById as Q, buildSurveyTranslations as R, createUnsupportedItemCapability as Rt, ChoiceOptionDetails as S, SurveyAssistantInspectionFocus as St, FormFieldGroupDetails as T, SurveyAssistantInspectionKeyEntry as Tt, formFieldGroupDetailsSchema as U, findDirectChildrenByFullKey as V, resolveAssistantCapabilityReference as Vt, formFieldGroupLayoutSchema as W, itemMatchesQuery as X, itemConfigDetailsSchema as Y, itemSummarySchema as Z, MAX_SURVEY_ASSISTANT_OPERATIONS_PER_PROPOSAL as _, ResponseSlotTypeLookup as _t, SurveyQualityReviewPrinciple as a, summarizeFocusItemNode as at, validateSurveyOperations as b, CreateSurveyAssistantEngineContextOptions as bt, SurveyAssistantTaskResultCacheOptions as c, summarizeKeyIndexEntry as ct, buildSurveyAssistantTaskContext as d, translationEntrySchema as dt, mapRawItemsById as et, RegisterSurveyChangeSetOptions as f, unique as ft, TurnChangeCollector as g, expressionSchema as gt, SurveyChangeContinuationMode as h, expressionMutationSchema as ht, SurveyAuditSeverity as i, sliceWithCursor as it, SurveyKeyIndexEntry as j, AssistantItemCapabilityAdapter as jt, SurveyFocusItemNode as k, deriveResponseSlotTypes as kt, BuildSurveyAssistantTaskContextOptions as l, summarizeOutlineNode as lt, SURVEY_CHANGE_CONTINUATION_MODES as m, buildExpressionMutationPatches as mt, SurveyAuditFinding as n, parseCursor as nt, auditSurvey as o, summarizeItemById as ot, SURVEY_CHANGE_CONTINUATION_DESCRIPTION as p, ExpressionMutation as pt, getRawSurvey as q, SurveyAuditReport as r, resolveItemSummary as rt, SurveyAssistantTaskResultCache as s, summarizeKeyIndexEntries as st, SurveyAuditCategory as t, normalizeText as tt, SurveyAssistantTaskPurpose as u, summarizeRawItem as ut, buildSurveyDocumentVersion as v, inferExpressionReturnType as vt, FormFieldDetails as w, SurveyAssistantInspectionItemNode as wt, normalizeSurveyChangeOperations as x, SurveyAssistantEngineContext as xt, createSurveyChangeSet as y, validateExpression as yt, choiceOptionDetailsSchema as z, getDeterministicCreateItemTypes as zt };
641
+ //# sourceMappingURL=index-CUqbBjkc.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-CUqbBjkc.d.mts","names":[],"sources":["../src/engine/capabilities.ts","../src/engine/context.ts","../src/engine/expression-validation.ts","../src/engine/expression-mutations.ts","../src/engine/inspection.ts","../src/engine/normalization.ts","../src/engine/operations.ts","../src/engine/turn-change-collector.ts","../src/engine/task-context.ts","../src/engine/task-result-cache.ts","../src/engine/audit.ts"],"mappings":"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"}