@anlyx/core 0.1.3 → 0.1.5

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.
@@ -0,0 +1,502 @@
1
+ import { z } from "zod";
2
+ export declare const flowNodeTypeSchema: z.ZodEnum<{
3
+ unknown: "unknown";
4
+ controller: "controller";
5
+ middleware: "middleware";
6
+ service: "service";
7
+ repository: "repository";
8
+ external: "external";
9
+ queue: "queue";
10
+ job: "job";
11
+ database: "database";
12
+ response: "response";
13
+ result: "result";
14
+ "ui.action": "ui.action";
15
+ "ui.page": "ui.page";
16
+ "ui.component": "ui.component";
17
+ "api.request": "api.request";
18
+ "api.route": "api.route";
19
+ "auth.session": "auth.session";
20
+ }>;
21
+ export declare const flowStatusSchema: z.ZodEnum<{
22
+ unknown: "unknown";
23
+ manual: "manual";
24
+ observed: "observed";
25
+ measured: "measured";
26
+ "source-matched": "source-matched";
27
+ "agent-inferred": "agent-inferred";
28
+ "not-proven": "not-proven";
29
+ }>;
30
+ export declare const flowEvidenceKindSchema: z.ZodEnum<{
31
+ unknown: "unknown";
32
+ manual: "manual";
33
+ agent: "agent";
34
+ source: "source";
35
+ "runtime.browser.click": "runtime.browser.click";
36
+ "runtime.browser.fetch": "runtime.browser.fetch";
37
+ "runtime.server.span": "runtime.server.span";
38
+ "runtime.database.query": "runtime.database.query";
39
+ "telemetry.span": "telemetry.span";
40
+ }>;
41
+ export declare const flowTimingSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
42
+ kind: z.ZodLiteral<"measured">;
43
+ durationMs: z.ZodNumber;
44
+ evidenceId: z.ZodString;
45
+ }, z.core.$strict>, z.ZodObject<{
46
+ kind: z.ZodLiteral<"estimate">;
47
+ durationMs: z.ZodOptional<z.ZodNumber>;
48
+ reason: z.ZodString;
49
+ }, z.core.$strict>, z.ZodObject<{
50
+ kind: z.ZodLiteral<"unknown">;
51
+ }, z.core.$strict>], "kind">;
52
+ export declare const flowSourceLocationSchema: z.ZodObject<{
53
+ file: z.ZodOptional<z.ZodString>;
54
+ symbol: z.ZodOptional<z.ZodString>;
55
+ lineStart: z.ZodOptional<z.ZodNumber>;
56
+ lineEnd: z.ZodOptional<z.ZodNumber>;
57
+ }, z.core.$strict>;
58
+ export declare const flowEvidenceSchema: z.ZodObject<{
59
+ id: z.ZodString;
60
+ kind: z.ZodEnum<{
61
+ unknown: "unknown";
62
+ manual: "manual";
63
+ agent: "agent";
64
+ source: "source";
65
+ "runtime.browser.click": "runtime.browser.click";
66
+ "runtime.browser.fetch": "runtime.browser.fetch";
67
+ "runtime.server.span": "runtime.server.span";
68
+ "runtime.database.query": "runtime.database.query";
69
+ "telemetry.span": "telemetry.span";
70
+ }>;
71
+ label: z.ZodOptional<z.ZodString>;
72
+ file: z.ZodOptional<z.ZodString>;
73
+ symbol: z.ZodOptional<z.ZodString>;
74
+ lineStart: z.ZodOptional<z.ZodNumber>;
75
+ lineEnd: z.ZodOptional<z.ZodNumber>;
76
+ observedAt: z.ZodOptional<z.ZodString>;
77
+ detail: z.ZodOptional<z.ZodString>;
78
+ }, z.core.$strict>;
79
+ export declare const flowRequestSchema: z.ZodObject<{
80
+ pathParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
81
+ query: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
82
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
83
+ body: z.ZodOptional<z.ZodUnknown>;
84
+ }, z.core.$strict>;
85
+ export declare const flowResponseSchema: z.ZodObject<{
86
+ statusCodes: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
87
+ bodyShape: z.ZodOptional<z.ZodUnknown>;
88
+ source: z.ZodOptional<z.ZodObject<{
89
+ file: z.ZodOptional<z.ZodString>;
90
+ symbol: z.ZodOptional<z.ZodString>;
91
+ lineStart: z.ZodOptional<z.ZodNumber>;
92
+ lineEnd: z.ZodOptional<z.ZodNumber>;
93
+ }, z.core.$strict>>;
94
+ }, z.core.$strict>;
95
+ export declare const flowNodeSchema: z.ZodObject<{
96
+ id: z.ZodString;
97
+ type: z.ZodEnum<{
98
+ unknown: "unknown";
99
+ controller: "controller";
100
+ middleware: "middleware";
101
+ service: "service";
102
+ repository: "repository";
103
+ external: "external";
104
+ queue: "queue";
105
+ job: "job";
106
+ database: "database";
107
+ response: "response";
108
+ result: "result";
109
+ "ui.action": "ui.action";
110
+ "ui.page": "ui.page";
111
+ "ui.component": "ui.component";
112
+ "api.request": "api.request";
113
+ "api.route": "api.route";
114
+ "auth.session": "auth.session";
115
+ }>;
116
+ label: z.ZodString;
117
+ status: z.ZodDefault<z.ZodEnum<{
118
+ unknown: "unknown";
119
+ manual: "manual";
120
+ observed: "observed";
121
+ measured: "measured";
122
+ "source-matched": "source-matched";
123
+ "agent-inferred": "agent-inferred";
124
+ "not-proven": "not-proven";
125
+ }>>;
126
+ evidenceIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
127
+ timing: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
128
+ kind: z.ZodLiteral<"measured">;
129
+ durationMs: z.ZodNumber;
130
+ evidenceId: z.ZodString;
131
+ }, z.core.$strict>, z.ZodObject<{
132
+ kind: z.ZodLiteral<"estimate">;
133
+ durationMs: z.ZodOptional<z.ZodNumber>;
134
+ reason: z.ZodString;
135
+ }, z.core.$strict>, z.ZodObject<{
136
+ kind: z.ZodLiteral<"unknown">;
137
+ }, z.core.$strict>], "kind">>;
138
+ request: z.ZodOptional<z.ZodObject<{
139
+ pathParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
140
+ query: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
141
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
142
+ body: z.ZodOptional<z.ZodUnknown>;
143
+ }, z.core.$strict>>;
144
+ response: z.ZodOptional<z.ZodObject<{
145
+ statusCodes: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
146
+ bodyShape: z.ZodOptional<z.ZodUnknown>;
147
+ source: z.ZodOptional<z.ZodObject<{
148
+ file: z.ZodOptional<z.ZodString>;
149
+ symbol: z.ZodOptional<z.ZodString>;
150
+ lineStart: z.ZodOptional<z.ZodNumber>;
151
+ lineEnd: z.ZodOptional<z.ZodNumber>;
152
+ }, z.core.$strict>>;
153
+ }, z.core.$strict>>;
154
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
155
+ }, z.core.$strict>;
156
+ export declare const flowEdgeSchema: z.ZodObject<{
157
+ id: z.ZodOptional<z.ZodString>;
158
+ from: z.ZodString;
159
+ to: z.ZodString;
160
+ label: z.ZodOptional<z.ZodString>;
161
+ status: z.ZodDefault<z.ZodEnum<{
162
+ unknown: "unknown";
163
+ manual: "manual";
164
+ observed: "observed";
165
+ measured: "measured";
166
+ "source-matched": "source-matched";
167
+ "agent-inferred": "agent-inferred";
168
+ "not-proven": "not-proven";
169
+ }>>;
170
+ evidenceIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
171
+ timing: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
172
+ kind: z.ZodLiteral<"measured">;
173
+ durationMs: z.ZodNumber;
174
+ evidenceId: z.ZodString;
175
+ }, z.core.$strict>, z.ZodObject<{
176
+ kind: z.ZodLiteral<"estimate">;
177
+ durationMs: z.ZodOptional<z.ZodNumber>;
178
+ reason: z.ZodString;
179
+ }, z.core.$strict>, z.ZodObject<{
180
+ kind: z.ZodLiteral<"unknown">;
181
+ }, z.core.$strict>], "kind">>;
182
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
183
+ }, z.core.$strict>;
184
+ export declare const flowEntrySchema: z.ZodObject<{
185
+ type: z.ZodString;
186
+ label: z.ZodString;
187
+ page: z.ZodOptional<z.ZodString>;
188
+ }, z.core.$strict>;
189
+ export declare const flowSchema: z.ZodObject<{
190
+ id: z.ZodString;
191
+ title: z.ZodString;
192
+ description: z.ZodOptional<z.ZodString>;
193
+ entry: z.ZodOptional<z.ZodObject<{
194
+ type: z.ZodString;
195
+ label: z.ZodString;
196
+ page: z.ZodOptional<z.ZodString>;
197
+ }, z.core.$strict>>;
198
+ nodes: z.ZodArray<z.ZodObject<{
199
+ id: z.ZodString;
200
+ type: z.ZodEnum<{
201
+ unknown: "unknown";
202
+ controller: "controller";
203
+ middleware: "middleware";
204
+ service: "service";
205
+ repository: "repository";
206
+ external: "external";
207
+ queue: "queue";
208
+ job: "job";
209
+ database: "database";
210
+ response: "response";
211
+ result: "result";
212
+ "ui.action": "ui.action";
213
+ "ui.page": "ui.page";
214
+ "ui.component": "ui.component";
215
+ "api.request": "api.request";
216
+ "api.route": "api.route";
217
+ "auth.session": "auth.session";
218
+ }>;
219
+ label: z.ZodString;
220
+ status: z.ZodDefault<z.ZodEnum<{
221
+ unknown: "unknown";
222
+ manual: "manual";
223
+ observed: "observed";
224
+ measured: "measured";
225
+ "source-matched": "source-matched";
226
+ "agent-inferred": "agent-inferred";
227
+ "not-proven": "not-proven";
228
+ }>>;
229
+ evidenceIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
230
+ timing: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
231
+ kind: z.ZodLiteral<"measured">;
232
+ durationMs: z.ZodNumber;
233
+ evidenceId: z.ZodString;
234
+ }, z.core.$strict>, z.ZodObject<{
235
+ kind: z.ZodLiteral<"estimate">;
236
+ durationMs: z.ZodOptional<z.ZodNumber>;
237
+ reason: z.ZodString;
238
+ }, z.core.$strict>, z.ZodObject<{
239
+ kind: z.ZodLiteral<"unknown">;
240
+ }, z.core.$strict>], "kind">>;
241
+ request: z.ZodOptional<z.ZodObject<{
242
+ pathParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
243
+ query: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
244
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
245
+ body: z.ZodOptional<z.ZodUnknown>;
246
+ }, z.core.$strict>>;
247
+ response: z.ZodOptional<z.ZodObject<{
248
+ statusCodes: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
249
+ bodyShape: z.ZodOptional<z.ZodUnknown>;
250
+ source: z.ZodOptional<z.ZodObject<{
251
+ file: z.ZodOptional<z.ZodString>;
252
+ symbol: z.ZodOptional<z.ZodString>;
253
+ lineStart: z.ZodOptional<z.ZodNumber>;
254
+ lineEnd: z.ZodOptional<z.ZodNumber>;
255
+ }, z.core.$strict>>;
256
+ }, z.core.$strict>>;
257
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
258
+ }, z.core.$strict>>;
259
+ edges: z.ZodArray<z.ZodObject<{
260
+ id: z.ZodOptional<z.ZodString>;
261
+ from: z.ZodString;
262
+ to: z.ZodString;
263
+ label: z.ZodOptional<z.ZodString>;
264
+ status: z.ZodDefault<z.ZodEnum<{
265
+ unknown: "unknown";
266
+ manual: "manual";
267
+ observed: "observed";
268
+ measured: "measured";
269
+ "source-matched": "source-matched";
270
+ "agent-inferred": "agent-inferred";
271
+ "not-proven": "not-proven";
272
+ }>>;
273
+ evidenceIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
274
+ timing: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
275
+ kind: z.ZodLiteral<"measured">;
276
+ durationMs: z.ZodNumber;
277
+ evidenceId: z.ZodString;
278
+ }, z.core.$strict>, z.ZodObject<{
279
+ kind: z.ZodLiteral<"estimate">;
280
+ durationMs: z.ZodOptional<z.ZodNumber>;
281
+ reason: z.ZodString;
282
+ }, z.core.$strict>, z.ZodObject<{
283
+ kind: z.ZodLiteral<"unknown">;
284
+ }, z.core.$strict>], "kind">>;
285
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
286
+ }, z.core.$strict>>;
287
+ evidence: z.ZodArray<z.ZodObject<{
288
+ id: z.ZodString;
289
+ kind: z.ZodEnum<{
290
+ unknown: "unknown";
291
+ manual: "manual";
292
+ agent: "agent";
293
+ source: "source";
294
+ "runtime.browser.click": "runtime.browser.click";
295
+ "runtime.browser.fetch": "runtime.browser.fetch";
296
+ "runtime.server.span": "runtime.server.span";
297
+ "runtime.database.query": "runtime.database.query";
298
+ "telemetry.span": "telemetry.span";
299
+ }>;
300
+ label: z.ZodOptional<z.ZodString>;
301
+ file: z.ZodOptional<z.ZodString>;
302
+ symbol: z.ZodOptional<z.ZodString>;
303
+ lineStart: z.ZodOptional<z.ZodNumber>;
304
+ lineEnd: z.ZodOptional<z.ZodNumber>;
305
+ observedAt: z.ZodOptional<z.ZodString>;
306
+ detail: z.ZodOptional<z.ZodString>;
307
+ }, z.core.$strict>>;
308
+ }, z.core.$strict>;
309
+ export declare const flowProjectSchema: z.ZodObject<{
310
+ name: z.ZodString;
311
+ root: z.ZodDefault<z.ZodString>;
312
+ frameworks: z.ZodOptional<z.ZodArray<z.ZodString>>;
313
+ }, z.core.$strict>;
314
+ export declare const flowGeneratedBySchema: z.ZodObject<{
315
+ type: z.ZodEnum<{
316
+ unknown: "unknown";
317
+ manual: "manual";
318
+ agent: "agent";
319
+ runtime: "runtime";
320
+ adapter: "adapter";
321
+ }>;
322
+ name: z.ZodOptional<z.ZodString>;
323
+ version: z.ZodOptional<z.ZodString>;
324
+ skill: z.ZodOptional<z.ZodString>;
325
+ }, z.core.$strict>;
326
+ export declare const flowSnapshotSchema: z.ZodObject<{
327
+ id: z.ZodString;
328
+ createdAt: z.ZodString;
329
+ source: z.ZodString;
330
+ git: z.ZodOptional<z.ZodObject<{
331
+ branch: z.ZodOptional<z.ZodString>;
332
+ commit: z.ZodOptional<z.ZodString>;
333
+ }, z.core.$strict>>;
334
+ }, z.core.$strict>;
335
+ export declare const anlyxFlowFileSchema: z.ZodObject<{
336
+ schemaVersion: z.ZodLiteral<"0.1.5">;
337
+ project: z.ZodObject<{
338
+ name: z.ZodString;
339
+ root: z.ZodDefault<z.ZodString>;
340
+ frameworks: z.ZodOptional<z.ZodArray<z.ZodString>>;
341
+ }, z.core.$strict>;
342
+ generatedBy: z.ZodOptional<z.ZodObject<{
343
+ type: z.ZodEnum<{
344
+ unknown: "unknown";
345
+ manual: "manual";
346
+ agent: "agent";
347
+ runtime: "runtime";
348
+ adapter: "adapter";
349
+ }>;
350
+ name: z.ZodOptional<z.ZodString>;
351
+ version: z.ZodOptional<z.ZodString>;
352
+ skill: z.ZodOptional<z.ZodString>;
353
+ }, z.core.$strict>>;
354
+ snapshot: z.ZodOptional<z.ZodObject<{
355
+ id: z.ZodString;
356
+ createdAt: z.ZodString;
357
+ source: z.ZodString;
358
+ git: z.ZodOptional<z.ZodObject<{
359
+ branch: z.ZodOptional<z.ZodString>;
360
+ commit: z.ZodOptional<z.ZodString>;
361
+ }, z.core.$strict>>;
362
+ }, z.core.$strict>>;
363
+ flows: z.ZodArray<z.ZodObject<{
364
+ id: z.ZodString;
365
+ title: z.ZodString;
366
+ description: z.ZodOptional<z.ZodString>;
367
+ entry: z.ZodOptional<z.ZodObject<{
368
+ type: z.ZodString;
369
+ label: z.ZodString;
370
+ page: z.ZodOptional<z.ZodString>;
371
+ }, z.core.$strict>>;
372
+ nodes: z.ZodArray<z.ZodObject<{
373
+ id: z.ZodString;
374
+ type: z.ZodEnum<{
375
+ unknown: "unknown";
376
+ controller: "controller";
377
+ middleware: "middleware";
378
+ service: "service";
379
+ repository: "repository";
380
+ external: "external";
381
+ queue: "queue";
382
+ job: "job";
383
+ database: "database";
384
+ response: "response";
385
+ result: "result";
386
+ "ui.action": "ui.action";
387
+ "ui.page": "ui.page";
388
+ "ui.component": "ui.component";
389
+ "api.request": "api.request";
390
+ "api.route": "api.route";
391
+ "auth.session": "auth.session";
392
+ }>;
393
+ label: z.ZodString;
394
+ status: z.ZodDefault<z.ZodEnum<{
395
+ unknown: "unknown";
396
+ manual: "manual";
397
+ observed: "observed";
398
+ measured: "measured";
399
+ "source-matched": "source-matched";
400
+ "agent-inferred": "agent-inferred";
401
+ "not-proven": "not-proven";
402
+ }>>;
403
+ evidenceIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
404
+ timing: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
405
+ kind: z.ZodLiteral<"measured">;
406
+ durationMs: z.ZodNumber;
407
+ evidenceId: z.ZodString;
408
+ }, z.core.$strict>, z.ZodObject<{
409
+ kind: z.ZodLiteral<"estimate">;
410
+ durationMs: z.ZodOptional<z.ZodNumber>;
411
+ reason: z.ZodString;
412
+ }, z.core.$strict>, z.ZodObject<{
413
+ kind: z.ZodLiteral<"unknown">;
414
+ }, z.core.$strict>], "kind">>;
415
+ request: z.ZodOptional<z.ZodObject<{
416
+ pathParams: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
417
+ query: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
418
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
419
+ body: z.ZodOptional<z.ZodUnknown>;
420
+ }, z.core.$strict>>;
421
+ response: z.ZodOptional<z.ZodObject<{
422
+ statusCodes: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
423
+ bodyShape: z.ZodOptional<z.ZodUnknown>;
424
+ source: z.ZodOptional<z.ZodObject<{
425
+ file: z.ZodOptional<z.ZodString>;
426
+ symbol: z.ZodOptional<z.ZodString>;
427
+ lineStart: z.ZodOptional<z.ZodNumber>;
428
+ lineEnd: z.ZodOptional<z.ZodNumber>;
429
+ }, z.core.$strict>>;
430
+ }, z.core.$strict>>;
431
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
432
+ }, z.core.$strict>>;
433
+ edges: z.ZodArray<z.ZodObject<{
434
+ id: z.ZodOptional<z.ZodString>;
435
+ from: z.ZodString;
436
+ to: z.ZodString;
437
+ label: z.ZodOptional<z.ZodString>;
438
+ status: z.ZodDefault<z.ZodEnum<{
439
+ unknown: "unknown";
440
+ manual: "manual";
441
+ observed: "observed";
442
+ measured: "measured";
443
+ "source-matched": "source-matched";
444
+ "agent-inferred": "agent-inferred";
445
+ "not-proven": "not-proven";
446
+ }>>;
447
+ evidenceIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
448
+ timing: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
449
+ kind: z.ZodLiteral<"measured">;
450
+ durationMs: z.ZodNumber;
451
+ evidenceId: z.ZodString;
452
+ }, z.core.$strict>, z.ZodObject<{
453
+ kind: z.ZodLiteral<"estimate">;
454
+ durationMs: z.ZodOptional<z.ZodNumber>;
455
+ reason: z.ZodString;
456
+ }, z.core.$strict>, z.ZodObject<{
457
+ kind: z.ZodLiteral<"unknown">;
458
+ }, z.core.$strict>], "kind">>;
459
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
460
+ }, z.core.$strict>>;
461
+ evidence: z.ZodArray<z.ZodObject<{
462
+ id: z.ZodString;
463
+ kind: z.ZodEnum<{
464
+ unknown: "unknown";
465
+ manual: "manual";
466
+ agent: "agent";
467
+ source: "source";
468
+ "runtime.browser.click": "runtime.browser.click";
469
+ "runtime.browser.fetch": "runtime.browser.fetch";
470
+ "runtime.server.span": "runtime.server.span";
471
+ "runtime.database.query": "runtime.database.query";
472
+ "telemetry.span": "telemetry.span";
473
+ }>;
474
+ label: z.ZodOptional<z.ZodString>;
475
+ file: z.ZodOptional<z.ZodString>;
476
+ symbol: z.ZodOptional<z.ZodString>;
477
+ lineStart: z.ZodOptional<z.ZodNumber>;
478
+ lineEnd: z.ZodOptional<z.ZodNumber>;
479
+ observedAt: z.ZodOptional<z.ZodString>;
480
+ detail: z.ZodOptional<z.ZodString>;
481
+ }, z.core.$strict>>;
482
+ }, z.core.$strict>>;
483
+ }, z.core.$strict>;
484
+ export type FlowNodeType = z.infer<typeof flowNodeTypeSchema>;
485
+ export type FlowStatus = z.infer<typeof flowStatusSchema>;
486
+ export type FlowEvidenceKind = z.infer<typeof flowEvidenceKindSchema>;
487
+ export type FlowTiming = z.infer<typeof flowTimingSchema>;
488
+ export type FlowSourceLocation = z.infer<typeof flowSourceLocationSchema>;
489
+ export type FlowEvidence = z.infer<typeof flowEvidenceSchema>;
490
+ export type FlowRequest = z.infer<typeof flowRequestSchema>;
491
+ export type FlowResponse = z.infer<typeof flowResponseSchema>;
492
+ export type FlowNode = z.infer<typeof flowNodeSchema>;
493
+ export type FlowEdge = z.infer<typeof flowEdgeSchema>;
494
+ export type FlowEntry = z.infer<typeof flowEntrySchema>;
495
+ export type FlowProject = z.infer<typeof flowProjectSchema>;
496
+ export type FlowGeneratedBy = z.infer<typeof flowGeneratedBySchema>;
497
+ export type FlowSnapshot = z.infer<typeof flowSnapshotSchema>;
498
+ export type Flow = z.infer<typeof flowSchema>;
499
+ export type AnlyxFlowFile = z.infer<typeof anlyxFlowFileSchema>;
500
+ export declare function parseAnlyxFlowFile(value: unknown): AnlyxFlowFile;
501
+ export declare function parseFlow(value: unknown): Flow;
502
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/flow-spec/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,186 @@
1
+ import { z } from "zod";
2
+ export const flowNodeTypeSchema = z.enum([
3
+ "ui.action",
4
+ "ui.page",
5
+ "ui.component",
6
+ "api.request",
7
+ "api.route",
8
+ "controller",
9
+ "middleware",
10
+ "auth.session",
11
+ "service",
12
+ "repository",
13
+ "database",
14
+ "external",
15
+ "queue",
16
+ "job",
17
+ "result",
18
+ "response",
19
+ "unknown"
20
+ ]);
21
+ export const flowStatusSchema = z.enum([
22
+ "observed",
23
+ "measured",
24
+ "source-matched",
25
+ "agent-inferred",
26
+ "manual",
27
+ "not-proven",
28
+ "unknown"
29
+ ]);
30
+ export const flowEvidenceKindSchema = z.enum([
31
+ "runtime.browser.click",
32
+ "runtime.browser.fetch",
33
+ "runtime.server.span",
34
+ "runtime.database.query",
35
+ "telemetry.span",
36
+ "source",
37
+ "agent",
38
+ "manual",
39
+ "unknown"
40
+ ]);
41
+ export const flowTimingSchema = z.discriminatedUnion("kind", [
42
+ z
43
+ .object({
44
+ kind: z.literal("measured"),
45
+ durationMs: z.number().nonnegative(),
46
+ evidenceId: z.string().min(1)
47
+ })
48
+ .strict(),
49
+ z
50
+ .object({
51
+ kind: z.literal("estimate"),
52
+ durationMs: z.number().nonnegative().optional(),
53
+ reason: z.string().min(1)
54
+ })
55
+ .strict(),
56
+ z
57
+ .object({
58
+ kind: z.literal("unknown")
59
+ })
60
+ .strict()
61
+ ]);
62
+ const recordSchema = z.record(z.string(), z.unknown());
63
+ export const flowSourceLocationSchema = z
64
+ .object({
65
+ file: z.string().optional(),
66
+ symbol: z.string().optional(),
67
+ lineStart: z.number().int().positive().optional(),
68
+ lineEnd: z.number().int().positive().optional()
69
+ })
70
+ .strict();
71
+ export const flowEvidenceSchema = z
72
+ .object({
73
+ id: z.string().min(1),
74
+ kind: flowEvidenceKindSchema,
75
+ label: z.string().optional(),
76
+ file: z.string().optional(),
77
+ symbol: z.string().optional(),
78
+ lineStart: z.number().int().positive().optional(),
79
+ lineEnd: z.number().int().positive().optional(),
80
+ observedAt: z.string().optional(),
81
+ detail: z.string().optional()
82
+ })
83
+ .strict();
84
+ export const flowRequestSchema = z
85
+ .object({
86
+ pathParams: recordSchema.optional(),
87
+ query: recordSchema.optional(),
88
+ headers: recordSchema.optional(),
89
+ body: z.unknown().optional()
90
+ })
91
+ .strict();
92
+ export const flowResponseSchema = z
93
+ .object({
94
+ statusCodes: z.array(z.number().int()).optional(),
95
+ bodyShape: z.unknown().optional(),
96
+ source: flowSourceLocationSchema.optional()
97
+ })
98
+ .strict();
99
+ export const flowNodeSchema = z
100
+ .object({
101
+ id: z.string().min(1),
102
+ type: flowNodeTypeSchema,
103
+ label: z.string().min(1),
104
+ status: flowStatusSchema.default("unknown"),
105
+ evidenceIds: z.array(z.string().min(1)).optional(),
106
+ timing: flowTimingSchema.optional(),
107
+ request: flowRequestSchema.optional(),
108
+ response: flowResponseSchema.optional(),
109
+ metadata: recordSchema.optional()
110
+ })
111
+ .strict();
112
+ export const flowEdgeSchema = z
113
+ .object({
114
+ id: z.string().min(1).optional(),
115
+ from: z.string().min(1),
116
+ to: z.string().min(1),
117
+ label: z.string().optional(),
118
+ status: flowStatusSchema.default("unknown"),
119
+ evidenceIds: z.array(z.string().min(1)).optional(),
120
+ timing: flowTimingSchema.optional(),
121
+ metadata: recordSchema.optional()
122
+ })
123
+ .strict();
124
+ export const flowEntrySchema = z
125
+ .object({
126
+ type: z.string().min(1),
127
+ label: z.string().min(1),
128
+ page: z.string().optional()
129
+ })
130
+ .strict();
131
+ export const flowSchema = z
132
+ .object({
133
+ id: z.string().min(1),
134
+ title: z.string().min(1),
135
+ description: z.string().optional(),
136
+ entry: flowEntrySchema.optional(),
137
+ nodes: z.array(flowNodeSchema),
138
+ edges: z.array(flowEdgeSchema),
139
+ evidence: z.array(flowEvidenceSchema)
140
+ })
141
+ .strict();
142
+ export const flowProjectSchema = z
143
+ .object({
144
+ name: z.string().min(1),
145
+ root: z.string().default("."),
146
+ frameworks: z.array(z.string()).optional()
147
+ })
148
+ .strict();
149
+ export const flowGeneratedBySchema = z
150
+ .object({
151
+ type: z.enum(["agent", "manual", "runtime", "adapter", "unknown"]),
152
+ name: z.string().optional(),
153
+ version: z.string().optional(),
154
+ skill: z.string().optional()
155
+ })
156
+ .strict();
157
+ export const flowSnapshotSchema = z
158
+ .object({
159
+ id: z.string().min(1),
160
+ createdAt: z.string().min(1),
161
+ source: z.string().min(1),
162
+ git: z
163
+ .object({
164
+ branch: z.string().optional(),
165
+ commit: z.string().optional()
166
+ })
167
+ .strict()
168
+ .optional()
169
+ })
170
+ .strict();
171
+ export const anlyxFlowFileSchema = z
172
+ .object({
173
+ schemaVersion: z.literal("0.1.5"),
174
+ project: flowProjectSchema,
175
+ generatedBy: flowGeneratedBySchema.optional(),
176
+ snapshot: flowSnapshotSchema.optional(),
177
+ flows: z.array(flowSchema)
178
+ })
179
+ .strict();
180
+ export function parseAnlyxFlowFile(value) {
181
+ return anlyxFlowFileSchema.parse(value);
182
+ }
183
+ export function parseFlow(value) {
184
+ return flowSchema.parse(value);
185
+ }
186
+ //# sourceMappingURL=schema.js.map