sysprom 1.20.0 → 1.21.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/schema.json +4 -44
- package/dist/src/cli/commands/add.js +6 -2
- package/dist/src/cli/commands/query.js +5 -3
- package/dist/src/cli/commands/speckit.js +2 -2
- package/dist/src/cli/commands/update.js +6 -4
- package/dist/src/endpoint-types.d.ts +4 -0
- package/dist/src/endpoint-types.js +22 -121
- package/dist/src/json-to-md.js +2 -16
- package/dist/src/lifecycle-state.d.ts +9 -0
- package/dist/src/lifecycle-state.js +22 -0
- package/dist/src/mcp/server.js +3 -6
- package/dist/src/md-to-json.js +1 -19
- package/dist/src/operations/add-node.d.ts +21 -135
- package/dist/src/operations/add-plan-task.d.ts +14 -90
- package/dist/src/operations/add-relationship.d.ts +16 -105
- package/dist/src/operations/check.d.ts +7 -45
- package/dist/src/operations/graph-decision.d.ts +7 -45
- package/dist/src/operations/graph-decision.js +0 -1
- package/dist/src/operations/graph-dependency.d.ts +7 -45
- package/dist/src/operations/graph-dependency.js +3 -23
- package/dist/src/operations/graph-refinement.d.ts +7 -45
- package/dist/src/operations/graph-shared.js +1 -3
- package/dist/src/operations/graph.d.ts +7 -45
- package/dist/src/operations/infer-completeness.d.ts +10 -54
- package/dist/src/operations/infer-derived.d.ts +7 -45
- package/dist/src/operations/infer-derived.js +28 -4
- package/dist/src/operations/infer-impact.d.ts +49 -315
- package/dist/src/operations/infer-impact.js +22 -3
- package/dist/src/operations/infer-lifecycle.d.ts +8 -106
- package/dist/src/operations/infer-lifecycle.js +4 -10
- package/dist/src/operations/init-document.d.ts +7 -45
- package/dist/src/operations/json-to-markdown.d.ts +7 -45
- package/dist/src/operations/mark-task-done.d.ts +14 -90
- package/dist/src/operations/mark-task-undone.d.ts +14 -90
- package/dist/src/operations/markdown-to-json.d.ts +7 -45
- package/dist/src/operations/next-id.d.ts +8 -48
- package/dist/src/operations/node-history.d.ts +7 -45
- package/dist/src/operations/plan-add-task.d.ts +14 -90
- package/dist/src/operations/plan-gate.d.ts +7 -45
- package/dist/src/operations/plan-init.d.ts +7 -45
- package/dist/src/operations/plan-progress.d.ts +7 -45
- package/dist/src/operations/plan-status.d.ts +7 -45
- package/dist/src/operations/query-node.d.ts +29 -195
- package/dist/src/operations/query-nodes.d.ts +15 -91
- package/dist/src/operations/query-nodes.js +6 -4
- package/dist/src/operations/query-relationships.d.ts +9 -60
- package/dist/src/operations/remove-node.d.ts +21 -135
- package/dist/src/operations/remove-node.js +11 -1
- package/dist/src/operations/remove-relationship.d.ts +15 -104
- package/dist/src/operations/rename.d.ts +14 -90
- package/dist/src/operations/search.d.ts +14 -90
- package/dist/src/operations/speckit-diff.d.ts +7 -45
- package/dist/src/operations/speckit-export.d.ts +7 -45
- package/dist/src/operations/speckit-import.d.ts +7 -45
- package/dist/src/operations/speckit-sync.d.ts +22 -136
- package/dist/src/operations/speckit-sync.js +3 -3
- package/dist/src/operations/state-at.d.ts +7 -45
- package/dist/src/operations/stats.d.ts +7 -45
- package/dist/src/operations/sync.d.ts +21 -135
- package/dist/src/operations/task-list.d.ts +7 -45
- package/dist/src/operations/timeline.d.ts +7 -45
- package/dist/src/operations/trace-from-node.d.ts +21 -135
- package/dist/src/operations/update-metadata.d.ts +14 -90
- package/dist/src/operations/update-node.d.ts +20 -155
- package/dist/src/operations/update-plan-task.d.ts +14 -90
- package/dist/src/operations/validate.d.ts +7 -45
- package/dist/src/operations/validate.js +8 -6
- package/dist/src/schema.d.ts +22 -164
- package/dist/src/schema.js +4 -27
- package/dist/src/speckit/generate.js +10 -7
- package/dist/src/speckit/parse.js +6 -3
- package/dist/src/speckit/plan.js +1 -1
- package/package.json +13 -2
- package/schema.json +4 -44
|
@@ -38,39 +38,18 @@ export declare const SyncResult: z.ZodObject<{
|
|
|
38
38
|
gate: "gate";
|
|
39
39
|
mode: "mode";
|
|
40
40
|
artefact: "artefact";
|
|
41
|
-
artefact_flow: "artefact_flow";
|
|
42
41
|
decision: "decision";
|
|
43
42
|
change: "change";
|
|
44
43
|
view: "view";
|
|
45
44
|
milestone: "milestone";
|
|
46
|
-
version: "version";
|
|
47
45
|
}> & {
|
|
48
|
-
is(value: unknown): value is "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "
|
|
46
|
+
is(value: unknown): value is "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "decision" | "change" | "view" | "milestone";
|
|
49
47
|
};
|
|
50
48
|
name: z.ZodString;
|
|
51
49
|
description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
52
50
|
is(value: unknown): value is string | string[];
|
|
53
51
|
}>;
|
|
54
|
-
status: z.ZodOptional<z.
|
|
55
|
-
deprecated: "deprecated";
|
|
56
|
-
proposed: "proposed";
|
|
57
|
-
accepted: "accepted";
|
|
58
|
-
active: "active";
|
|
59
|
-
implemented: "implemented";
|
|
60
|
-
adopted: "adopted";
|
|
61
|
-
defined: "defined";
|
|
62
|
-
introduced: "introduced";
|
|
63
|
-
in_progress: "in_progress";
|
|
64
|
-
complete: "complete";
|
|
65
|
-
consolidated: "consolidated";
|
|
66
|
-
experimental: "experimental";
|
|
67
|
-
retired: "retired";
|
|
68
|
-
superseded: "superseded";
|
|
69
|
-
abandoned: "abandoned";
|
|
70
|
-
deferred: "deferred";
|
|
71
|
-
}> & {
|
|
72
|
-
is(value: unknown): value is "deprecated" | "proposed" | "accepted" | "active" | "implemented" | "adopted" | "defined" | "introduced" | "in_progress" | "complete" | "consolidated" | "experimental" | "retired" | "superseded" | "abandoned" | "deferred";
|
|
73
|
-
}>;
|
|
52
|
+
status: z.ZodOptional<z.ZodNever>;
|
|
74
53
|
lifecycle: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>>;
|
|
75
54
|
context: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
76
55
|
is(value: unknown): value is string | string[];
|
|
@@ -125,8 +104,6 @@ export declare const SyncResult: z.ZodObject<{
|
|
|
125
104
|
}>>;
|
|
126
105
|
propagation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
|
|
127
106
|
includes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
128
|
-
input: z.ZodOptional<z.ZodString>;
|
|
129
|
-
output: z.ZodOptional<z.ZodString>;
|
|
130
107
|
external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
131
108
|
role: z.ZodEnum<{
|
|
132
109
|
output: "output";
|
|
@@ -170,27 +147,14 @@ export declare const SyncResult: z.ZodObject<{
|
|
|
170
147
|
affects: "affects";
|
|
171
148
|
supersedes: "supersedes";
|
|
172
149
|
must_preserve: "must_preserve";
|
|
173
|
-
performs: "performs";
|
|
174
150
|
part_of: "part_of";
|
|
175
151
|
precedes: "precedes";
|
|
176
152
|
must_follow: "must_follow";
|
|
177
|
-
blocks: "blocks";
|
|
178
|
-
routes_to: "routes_to";
|
|
179
|
-
orchestrates: "orchestrates";
|
|
180
153
|
governed_by: "governed_by";
|
|
181
154
|
modifies: "modifies";
|
|
182
|
-
triggered_by: "triggered_by";
|
|
183
|
-
applies_to: "applies_to";
|
|
184
155
|
produces: "produces";
|
|
185
|
-
consumes: "consumes";
|
|
186
|
-
transforms_into: "transforms_into";
|
|
187
|
-
selects: "selects";
|
|
188
|
-
requires: "requires";
|
|
189
|
-
disables: "disables";
|
|
190
|
-
influence: "influence";
|
|
191
|
-
justifies: "justifies";
|
|
192
156
|
}> & {
|
|
193
|
-
is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
157
|
+
is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
194
158
|
};
|
|
195
159
|
description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
196
160
|
is(value: unknown): value is string | string[];
|
|
@@ -209,7 +173,7 @@ export declare const SyncResult: z.ZodObject<{
|
|
|
209
173
|
[x: string]: unknown;
|
|
210
174
|
from: string;
|
|
211
175
|
to: string;
|
|
212
|
-
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
176
|
+
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
213
177
|
description?: string | string[] | undefined;
|
|
214
178
|
polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
|
|
215
179
|
strength?: number | undefined;
|
|
@@ -249,10 +213,10 @@ export declare const SyncResult: z.ZodObject<{
|
|
|
249
213
|
nodes: {
|
|
250
214
|
[x: string]: unknown;
|
|
251
215
|
id: string;
|
|
252
|
-
type: "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "
|
|
216
|
+
type: "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "decision" | "change" | "view" | "milestone";
|
|
253
217
|
name: string;
|
|
254
218
|
description?: string | string[] | undefined;
|
|
255
|
-
status?:
|
|
219
|
+
status?: undefined;
|
|
256
220
|
lifecycle?: Record<string, string | boolean> | undefined;
|
|
257
221
|
context?: string | string[] | undefined;
|
|
258
222
|
options?: {
|
|
@@ -276,8 +240,6 @@ export declare const SyncResult: z.ZodObject<{
|
|
|
276
240
|
}[] | undefined;
|
|
277
241
|
propagation?: Record<string, boolean> | undefined;
|
|
278
242
|
includes?: string[] | undefined;
|
|
279
|
-
input?: string | undefined;
|
|
280
|
-
output?: string | undefined;
|
|
281
243
|
external_references?: {
|
|
282
244
|
role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";
|
|
283
245
|
identifier: string;
|
|
@@ -300,7 +262,7 @@ export declare const SyncResult: z.ZodObject<{
|
|
|
300
262
|
[x: string]: unknown;
|
|
301
263
|
from: string;
|
|
302
264
|
to: string;
|
|
303
|
-
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
265
|
+
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
304
266
|
description?: string | string[] | undefined;
|
|
305
267
|
polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
|
|
306
268
|
strength?: number | undefined;
|
|
@@ -318,7 +280,7 @@ export declare const SyncResult: z.ZodObject<{
|
|
|
318
280
|
modified: z.ZodNumber;
|
|
319
281
|
removed: z.ZodNumber;
|
|
320
282
|
}, z.core.$strip>;
|
|
321
|
-
/** Synchronise a SysProM document with a Spec-Kit directory. Spec-Kit content wins for descriptions and
|
|
283
|
+
/** Synchronise a SysProM document with a Spec-Kit directory. Spec-Kit content wins for descriptions and lifecycle; SysProM structure (relationships, hierarchies) is preserved. Regenerates the Spec-Kit directory from the merged document. */
|
|
322
284
|
export declare const speckitSyncOp: import("./define-operation.js").DefinedOperation<z.ZodObject<{
|
|
323
285
|
doc: z.ZodObject<{
|
|
324
286
|
$schema: z.ZodOptional<z.ZodString>;
|
|
@@ -355,39 +317,18 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
355
317
|
gate: "gate";
|
|
356
318
|
mode: "mode";
|
|
357
319
|
artefact: "artefact";
|
|
358
|
-
artefact_flow: "artefact_flow";
|
|
359
320
|
decision: "decision";
|
|
360
321
|
change: "change";
|
|
361
322
|
view: "view";
|
|
362
323
|
milestone: "milestone";
|
|
363
|
-
version: "version";
|
|
364
324
|
}> & {
|
|
365
|
-
is(value: unknown): value is "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "
|
|
325
|
+
is(value: unknown): value is "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "decision" | "change" | "view" | "milestone";
|
|
366
326
|
};
|
|
367
327
|
name: z.ZodString;
|
|
368
328
|
description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
369
329
|
is(value: unknown): value is string | string[];
|
|
370
330
|
}>;
|
|
371
|
-
status: z.ZodOptional<z.
|
|
372
|
-
deprecated: "deprecated";
|
|
373
|
-
proposed: "proposed";
|
|
374
|
-
accepted: "accepted";
|
|
375
|
-
active: "active";
|
|
376
|
-
implemented: "implemented";
|
|
377
|
-
adopted: "adopted";
|
|
378
|
-
defined: "defined";
|
|
379
|
-
introduced: "introduced";
|
|
380
|
-
in_progress: "in_progress";
|
|
381
|
-
complete: "complete";
|
|
382
|
-
consolidated: "consolidated";
|
|
383
|
-
experimental: "experimental";
|
|
384
|
-
retired: "retired";
|
|
385
|
-
superseded: "superseded";
|
|
386
|
-
abandoned: "abandoned";
|
|
387
|
-
deferred: "deferred";
|
|
388
|
-
}> & {
|
|
389
|
-
is(value: unknown): value is "deprecated" | "proposed" | "accepted" | "active" | "implemented" | "adopted" | "defined" | "introduced" | "in_progress" | "complete" | "consolidated" | "experimental" | "retired" | "superseded" | "abandoned" | "deferred";
|
|
390
|
-
}>;
|
|
331
|
+
status: z.ZodOptional<z.ZodNever>;
|
|
391
332
|
lifecycle: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>>;
|
|
392
333
|
context: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
393
334
|
is(value: unknown): value is string | string[];
|
|
@@ -442,8 +383,6 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
442
383
|
}>>;
|
|
443
384
|
propagation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
|
|
444
385
|
includes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
445
|
-
input: z.ZodOptional<z.ZodString>;
|
|
446
|
-
output: z.ZodOptional<z.ZodString>;
|
|
447
386
|
external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
448
387
|
role: z.ZodEnum<{
|
|
449
388
|
output: "output";
|
|
@@ -487,27 +426,14 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
487
426
|
affects: "affects";
|
|
488
427
|
supersedes: "supersedes";
|
|
489
428
|
must_preserve: "must_preserve";
|
|
490
|
-
performs: "performs";
|
|
491
429
|
part_of: "part_of";
|
|
492
430
|
precedes: "precedes";
|
|
493
431
|
must_follow: "must_follow";
|
|
494
|
-
blocks: "blocks";
|
|
495
|
-
routes_to: "routes_to";
|
|
496
|
-
orchestrates: "orchestrates";
|
|
497
432
|
governed_by: "governed_by";
|
|
498
433
|
modifies: "modifies";
|
|
499
|
-
triggered_by: "triggered_by";
|
|
500
|
-
applies_to: "applies_to";
|
|
501
434
|
produces: "produces";
|
|
502
|
-
consumes: "consumes";
|
|
503
|
-
transforms_into: "transforms_into";
|
|
504
|
-
selects: "selects";
|
|
505
|
-
requires: "requires";
|
|
506
|
-
disables: "disables";
|
|
507
|
-
influence: "influence";
|
|
508
|
-
justifies: "justifies";
|
|
509
435
|
}> & {
|
|
510
|
-
is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
436
|
+
is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
511
437
|
};
|
|
512
438
|
description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
513
439
|
is(value: unknown): value is string | string[];
|
|
@@ -526,7 +452,7 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
526
452
|
[x: string]: unknown;
|
|
527
453
|
from: string;
|
|
528
454
|
to: string;
|
|
529
|
-
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
455
|
+
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
530
456
|
description?: string | string[] | undefined;
|
|
531
457
|
polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
|
|
532
458
|
strength?: number | undefined;
|
|
@@ -566,10 +492,10 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
566
492
|
nodes: {
|
|
567
493
|
[x: string]: unknown;
|
|
568
494
|
id: string;
|
|
569
|
-
type: "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "
|
|
495
|
+
type: "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "decision" | "change" | "view" | "milestone";
|
|
570
496
|
name: string;
|
|
571
497
|
description?: string | string[] | undefined;
|
|
572
|
-
status?:
|
|
498
|
+
status?: undefined;
|
|
573
499
|
lifecycle?: Record<string, string | boolean> | undefined;
|
|
574
500
|
context?: string | string[] | undefined;
|
|
575
501
|
options?: {
|
|
@@ -593,8 +519,6 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
593
519
|
}[] | undefined;
|
|
594
520
|
propagation?: Record<string, boolean> | undefined;
|
|
595
521
|
includes?: string[] | undefined;
|
|
596
|
-
input?: string | undefined;
|
|
597
|
-
output?: string | undefined;
|
|
598
522
|
external_references?: {
|
|
599
523
|
role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";
|
|
600
524
|
identifier: string;
|
|
@@ -617,7 +541,7 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
617
541
|
[x: string]: unknown;
|
|
618
542
|
from: string;
|
|
619
543
|
to: string;
|
|
620
|
-
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
544
|
+
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
621
545
|
description?: string | string[] | undefined;
|
|
622
546
|
polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
|
|
623
547
|
strength?: number | undefined;
|
|
@@ -669,39 +593,18 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
669
593
|
gate: "gate";
|
|
670
594
|
mode: "mode";
|
|
671
595
|
artefact: "artefact";
|
|
672
|
-
artefact_flow: "artefact_flow";
|
|
673
596
|
decision: "decision";
|
|
674
597
|
change: "change";
|
|
675
598
|
view: "view";
|
|
676
599
|
milestone: "milestone";
|
|
677
|
-
version: "version";
|
|
678
600
|
}> & {
|
|
679
|
-
is(value: unknown): value is "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "
|
|
601
|
+
is(value: unknown): value is "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "decision" | "change" | "view" | "milestone";
|
|
680
602
|
};
|
|
681
603
|
name: z.ZodString;
|
|
682
604
|
description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
683
605
|
is(value: unknown): value is string | string[];
|
|
684
606
|
}>;
|
|
685
|
-
status: z.ZodOptional<z.
|
|
686
|
-
deprecated: "deprecated";
|
|
687
|
-
proposed: "proposed";
|
|
688
|
-
accepted: "accepted";
|
|
689
|
-
active: "active";
|
|
690
|
-
implemented: "implemented";
|
|
691
|
-
adopted: "adopted";
|
|
692
|
-
defined: "defined";
|
|
693
|
-
introduced: "introduced";
|
|
694
|
-
in_progress: "in_progress";
|
|
695
|
-
complete: "complete";
|
|
696
|
-
consolidated: "consolidated";
|
|
697
|
-
experimental: "experimental";
|
|
698
|
-
retired: "retired";
|
|
699
|
-
superseded: "superseded";
|
|
700
|
-
abandoned: "abandoned";
|
|
701
|
-
deferred: "deferred";
|
|
702
|
-
}> & {
|
|
703
|
-
is(value: unknown): value is "deprecated" | "proposed" | "accepted" | "active" | "implemented" | "adopted" | "defined" | "introduced" | "in_progress" | "complete" | "consolidated" | "experimental" | "retired" | "superseded" | "abandoned" | "deferred";
|
|
704
|
-
}>;
|
|
607
|
+
status: z.ZodOptional<z.ZodNever>;
|
|
705
608
|
lifecycle: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>>;
|
|
706
609
|
context: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
707
610
|
is(value: unknown): value is string | string[];
|
|
@@ -756,8 +659,6 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
756
659
|
}>>;
|
|
757
660
|
propagation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
|
|
758
661
|
includes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
759
|
-
input: z.ZodOptional<z.ZodString>;
|
|
760
|
-
output: z.ZodOptional<z.ZodString>;
|
|
761
662
|
external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
762
663
|
role: z.ZodEnum<{
|
|
763
664
|
output: "output";
|
|
@@ -801,27 +702,14 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
801
702
|
affects: "affects";
|
|
802
703
|
supersedes: "supersedes";
|
|
803
704
|
must_preserve: "must_preserve";
|
|
804
|
-
performs: "performs";
|
|
805
705
|
part_of: "part_of";
|
|
806
706
|
precedes: "precedes";
|
|
807
707
|
must_follow: "must_follow";
|
|
808
|
-
blocks: "blocks";
|
|
809
|
-
routes_to: "routes_to";
|
|
810
|
-
orchestrates: "orchestrates";
|
|
811
708
|
governed_by: "governed_by";
|
|
812
709
|
modifies: "modifies";
|
|
813
|
-
triggered_by: "triggered_by";
|
|
814
|
-
applies_to: "applies_to";
|
|
815
710
|
produces: "produces";
|
|
816
|
-
consumes: "consumes";
|
|
817
|
-
transforms_into: "transforms_into";
|
|
818
|
-
selects: "selects";
|
|
819
|
-
requires: "requires";
|
|
820
|
-
disables: "disables";
|
|
821
|
-
influence: "influence";
|
|
822
|
-
justifies: "justifies";
|
|
823
711
|
}> & {
|
|
824
|
-
is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
712
|
+
is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
825
713
|
};
|
|
826
714
|
description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
827
715
|
is(value: unknown): value is string | string[];
|
|
@@ -840,7 +728,7 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
840
728
|
[x: string]: unknown;
|
|
841
729
|
from: string;
|
|
842
730
|
to: string;
|
|
843
|
-
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
731
|
+
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
844
732
|
description?: string | string[] | undefined;
|
|
845
733
|
polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
|
|
846
734
|
strength?: number | undefined;
|
|
@@ -880,10 +768,10 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
880
768
|
nodes: {
|
|
881
769
|
[x: string]: unknown;
|
|
882
770
|
id: string;
|
|
883
|
-
type: "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "
|
|
771
|
+
type: "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "decision" | "change" | "view" | "milestone";
|
|
884
772
|
name: string;
|
|
885
773
|
description?: string | string[] | undefined;
|
|
886
|
-
status?:
|
|
774
|
+
status?: undefined;
|
|
887
775
|
lifecycle?: Record<string, string | boolean> | undefined;
|
|
888
776
|
context?: string | string[] | undefined;
|
|
889
777
|
options?: {
|
|
@@ -907,8 +795,6 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
907
795
|
}[] | undefined;
|
|
908
796
|
propagation?: Record<string, boolean> | undefined;
|
|
909
797
|
includes?: string[] | undefined;
|
|
910
|
-
input?: string | undefined;
|
|
911
|
-
output?: string | undefined;
|
|
912
798
|
external_references?: {
|
|
913
799
|
role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";
|
|
914
800
|
identifier: string;
|
|
@@ -931,7 +817,7 @@ export declare const speckitSyncOp: import("./define-operation.js").DefinedOpera
|
|
|
931
817
|
[x: string]: unknown;
|
|
932
818
|
from: string;
|
|
933
819
|
to: string;
|
|
934
|
-
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
820
|
+
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
935
821
|
description?: string | string[] | undefined;
|
|
936
822
|
polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
|
|
937
823
|
strength?: number | undefined;
|
|
@@ -36,7 +36,7 @@ export const SyncResult = z.object({
|
|
|
36
36
|
modified: z.number(),
|
|
37
37
|
removed: z.number(),
|
|
38
38
|
});
|
|
39
|
-
/** Synchronise a SysProM document with a Spec-Kit directory. Spec-Kit content wins for descriptions and
|
|
39
|
+
/** Synchronise a SysProM document with a Spec-Kit directory. Spec-Kit content wins for descriptions and lifecycle; SysProM structure (relationships, hierarchies) is preserved. Regenerates the Spec-Kit directory from the merged document. */
|
|
40
40
|
export const speckitSyncOp = defineOperation({
|
|
41
41
|
name: "speckitSync",
|
|
42
42
|
description: "Synchronise a SysProM document with a Spec-Kit directory",
|
|
@@ -70,7 +70,7 @@ export const speckitSyncOp = defineOperation({
|
|
|
70
70
|
const specKitDoc = parseSpecKitFeature(speckitDir, idPrefix, constitutionPath);
|
|
71
71
|
// Compare documents
|
|
72
72
|
const diff = compareDocuments(syspromDoc, specKitDoc);
|
|
73
|
-
// Merge: Spec-Kit wins for content (description,
|
|
73
|
+
// Merge: Spec-Kit wins for content (description, lifecycle), SysProM wins for structure
|
|
74
74
|
const mergedNodes = new Map(syspromDoc.nodes.map((n) => [n.id, n]));
|
|
75
75
|
const specKitNodes = new Map(specKitDoc.nodes.map((n) => [n.id, n]));
|
|
76
76
|
for (const [id, specKitNode] of specKitNodes) {
|
|
@@ -80,7 +80,7 @@ export const speckitSyncOp = defineOperation({
|
|
|
80
80
|
const merged = {
|
|
81
81
|
...syspromNode,
|
|
82
82
|
description: specKitNode.description ?? syspromNode.description,
|
|
83
|
-
|
|
83
|
+
lifecycle: specKitNode.lifecycle ?? syspromNode.lifecycle,
|
|
84
84
|
context: specKitNode.context ?? syspromNode.context,
|
|
85
85
|
options: specKitNode.options ?? syspromNode.options,
|
|
86
86
|
selected: specKitNode.selected ?? syspromNode.selected,
|
|
@@ -44,39 +44,18 @@ export declare const stateAtOp: import("./define-operation.js").DefinedOperation
|
|
|
44
44
|
gate: "gate";
|
|
45
45
|
mode: "mode";
|
|
46
46
|
artefact: "artefact";
|
|
47
|
-
artefact_flow: "artefact_flow";
|
|
48
47
|
decision: "decision";
|
|
49
48
|
change: "change";
|
|
50
49
|
view: "view";
|
|
51
50
|
milestone: "milestone";
|
|
52
|
-
version: "version";
|
|
53
51
|
}> & {
|
|
54
|
-
is(value: unknown): value is "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "
|
|
52
|
+
is(value: unknown): value is "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "decision" | "change" | "view" | "milestone";
|
|
55
53
|
};
|
|
56
54
|
name: z.ZodString;
|
|
57
55
|
description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
58
56
|
is(value: unknown): value is string | string[];
|
|
59
57
|
}>;
|
|
60
|
-
status: z.ZodOptional<z.
|
|
61
|
-
deprecated: "deprecated";
|
|
62
|
-
proposed: "proposed";
|
|
63
|
-
accepted: "accepted";
|
|
64
|
-
active: "active";
|
|
65
|
-
implemented: "implemented";
|
|
66
|
-
adopted: "adopted";
|
|
67
|
-
defined: "defined";
|
|
68
|
-
introduced: "introduced";
|
|
69
|
-
in_progress: "in_progress";
|
|
70
|
-
complete: "complete";
|
|
71
|
-
consolidated: "consolidated";
|
|
72
|
-
experimental: "experimental";
|
|
73
|
-
retired: "retired";
|
|
74
|
-
superseded: "superseded";
|
|
75
|
-
abandoned: "abandoned";
|
|
76
|
-
deferred: "deferred";
|
|
77
|
-
}> & {
|
|
78
|
-
is(value: unknown): value is "deprecated" | "proposed" | "accepted" | "active" | "implemented" | "adopted" | "defined" | "introduced" | "in_progress" | "complete" | "consolidated" | "experimental" | "retired" | "superseded" | "abandoned" | "deferred";
|
|
79
|
-
}>;
|
|
58
|
+
status: z.ZodOptional<z.ZodNever>;
|
|
80
59
|
lifecycle: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodBoolean, z.ZodString]>>>;
|
|
81
60
|
context: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
82
61
|
is(value: unknown): value is string | string[];
|
|
@@ -131,8 +110,6 @@ export declare const stateAtOp: import("./define-operation.js").DefinedOperation
|
|
|
131
110
|
}>>;
|
|
132
111
|
propagation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodBoolean>>;
|
|
133
112
|
includes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
134
|
-
input: z.ZodOptional<z.ZodString>;
|
|
135
|
-
output: z.ZodOptional<z.ZodString>;
|
|
136
113
|
external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
137
114
|
role: z.ZodEnum<{
|
|
138
115
|
output: "output";
|
|
@@ -176,27 +153,14 @@ export declare const stateAtOp: import("./define-operation.js").DefinedOperation
|
|
|
176
153
|
affects: "affects";
|
|
177
154
|
supersedes: "supersedes";
|
|
178
155
|
must_preserve: "must_preserve";
|
|
179
|
-
performs: "performs";
|
|
180
156
|
part_of: "part_of";
|
|
181
157
|
precedes: "precedes";
|
|
182
158
|
must_follow: "must_follow";
|
|
183
|
-
blocks: "blocks";
|
|
184
|
-
routes_to: "routes_to";
|
|
185
|
-
orchestrates: "orchestrates";
|
|
186
159
|
governed_by: "governed_by";
|
|
187
160
|
modifies: "modifies";
|
|
188
|
-
triggered_by: "triggered_by";
|
|
189
|
-
applies_to: "applies_to";
|
|
190
161
|
produces: "produces";
|
|
191
|
-
consumes: "consumes";
|
|
192
|
-
transforms_into: "transforms_into";
|
|
193
|
-
selects: "selects";
|
|
194
|
-
requires: "requires";
|
|
195
|
-
disables: "disables";
|
|
196
|
-
influence: "influence";
|
|
197
|
-
justifies: "justifies";
|
|
198
162
|
}> & {
|
|
199
|
-
is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
163
|
+
is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
200
164
|
};
|
|
201
165
|
description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
|
|
202
166
|
is(value: unknown): value is string | string[];
|
|
@@ -215,7 +179,7 @@ export declare const stateAtOp: import("./define-operation.js").DefinedOperation
|
|
|
215
179
|
[x: string]: unknown;
|
|
216
180
|
from: string;
|
|
217
181
|
to: string;
|
|
218
|
-
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
182
|
+
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
219
183
|
description?: string | string[] | undefined;
|
|
220
184
|
polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
|
|
221
185
|
strength?: number | undefined;
|
|
@@ -255,10 +219,10 @@ export declare const stateAtOp: import("./define-operation.js").DefinedOperation
|
|
|
255
219
|
nodes: {
|
|
256
220
|
[x: string]: unknown;
|
|
257
221
|
id: string;
|
|
258
|
-
type: "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "
|
|
222
|
+
type: "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | "mode" | "artefact" | "decision" | "change" | "view" | "milestone";
|
|
259
223
|
name: string;
|
|
260
224
|
description?: string | string[] | undefined;
|
|
261
|
-
status?:
|
|
225
|
+
status?: undefined;
|
|
262
226
|
lifecycle?: Record<string, string | boolean> | undefined;
|
|
263
227
|
context?: string | string[] | undefined;
|
|
264
228
|
options?: {
|
|
@@ -282,8 +246,6 @@ export declare const stateAtOp: import("./define-operation.js").DefinedOperation
|
|
|
282
246
|
}[] | undefined;
|
|
283
247
|
propagation?: Record<string, boolean> | undefined;
|
|
284
248
|
includes?: string[] | undefined;
|
|
285
|
-
input?: string | undefined;
|
|
286
|
-
output?: string | undefined;
|
|
287
249
|
external_references?: {
|
|
288
250
|
role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";
|
|
289
251
|
identifier: string;
|
|
@@ -306,7 +268,7 @@ export declare const stateAtOp: import("./define-operation.js").DefinedOperation
|
|
|
306
268
|
[x: string]: unknown;
|
|
307
269
|
from: string;
|
|
308
270
|
to: string;
|
|
309
|
-
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "
|
|
271
|
+
type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "part_of" | "precedes" | "must_follow" | "governed_by" | "modifies" | "produces";
|
|
310
272
|
description?: string | string[] | undefined;
|
|
311
273
|
polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
|
|
312
274
|
strength?: number | undefined;
|