@stacksjs/defaults 0.74.41 → 0.74.42

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 (74) hide show
  1. package/ai/skills/stacks-cms/SKILL.md +4 -4
  2. package/ai/skills/stacks-config/SKILL.md +1 -1
  3. package/ai/skills/stacks-technical-diagrams/LICENSE +1 -1
  4. package/ai/skills/stacks-technical-diagrams/SKILL.md +257 -229
  5. package/ai/skills/stacks-technical-diagrams/THIRD_PARTY_NOTICES.md +69 -0
  6. package/ai/skills/stacks-technical-diagrams/assets/JetBrainsMono-OFL.txt +93 -0
  7. package/ai/skills/stacks-technical-diagrams/assets/template.html +14588 -929
  8. package/ai/skills/stacks-technical-diagrams/bin/diagrams +10 -0
  9. package/ai/skills/stacks-technical-diagrams/bin/open-artifact.mjs +86 -0
  10. package/ai/skills/stacks-technical-diagrams/bin/preview.mjs +654 -0
  11. package/ai/skills/stacks-technical-diagrams/bin/technical-diagrams.mjs +1898 -89
  12. package/ai/skills/stacks-technical-diagrams/bin/visual-check.mjs +829 -0
  13. package/ai/skills/stacks-technical-diagrams/brand-marks/README.md +31 -0
  14. package/ai/skills/stacks-technical-diagrams/brand-marks/catalog.json +131 -0
  15. package/ai/skills/stacks-technical-diagrams/delta/architecture-delta.mjs +1221 -0
  16. package/ai/skills/stacks-technical-diagrams/examples/agent-run.lifecycle.json +18 -22
  17. package/ai/skills/stacks-technical-diagrams/examples/agent-tool-call.workflow.json +58 -52
  18. package/ai/skills/stacks-technical-diagrams/examples/async-job-roundtrip.sequence.json +61 -0
  19. package/ai/skills/stacks-technical-diagrams/examples/brand-aware-delivery.architecture.json +47 -0
  20. package/ai/skills/stacks-technical-diagrams/examples/cache-miss-request.sequence.json +30 -23
  21. package/ai/skills/stacks-technical-diagrams/examples/checkout-platform.base.architecture.json +31 -0
  22. package/ai/skills/stacks-technical-diagrams/examples/checkout-platform.head.architecture.json +31 -0
  23. package/ai/skills/stacks-technical-diagrams/examples/deployment-release.lifecycle.json +49 -0
  24. package/ai/skills/stacks-technical-diagrams/examples/event-stream.dataflow.json +57 -0
  25. package/ai/skills/stacks-technical-diagrams/examples/incident-response.workflow.json +64 -0
  26. package/ai/skills/stacks-technical-diagrams/examples/product-analytics.dataflow.json +22 -16
  27. package/ai/skills/stacks-technical-diagrams/examples/production-deployment.architecture.json +71 -0
  28. package/ai/skills/stacks-technical-diagrams/examples/release-delivery.workflow.json +62 -0
  29. package/ai/skills/stacks-technical-diagrams/examples/web-app.architecture.json +16 -11
  30. package/ai/skills/stacks-technical-diagrams/migrations/workflow-v2.mjs +279 -0
  31. package/ai/skills/stacks-technical-diagrams/recipes/scenarios.mjs +391 -0
  32. package/ai/skills/stacks-technical-diagrams/references/authoring-contract.md +243 -0
  33. package/ai/skills/stacks-technical-diagrams/references/brand-marks.md +65 -0
  34. package/ai/skills/stacks-technical-diagrams/references/delivery-contract.md +120 -0
  35. package/ai/skills/stacks-technical-diagrams/references/viewer-runtime.md +45 -0
  36. package/ai/skills/stacks-technical-diagrams/renderers/architecture/render-architecture.mjs +780 -73
  37. package/ai/skills/stacks-technical-diagrams/renderers/dataflow/README.md +25 -3
  38. package/ai/skills/stacks-technical-diagrams/renderers/dataflow/render-dataflow.mjs +240 -52
  39. package/ai/skills/stacks-technical-diagrams/renderers/lifecycle/README.md +31 -7
  40. package/ai/skills/stacks-technical-diagrams/renderers/lifecycle/render-lifecycle.mjs +227 -50
  41. package/ai/skills/stacks-technical-diagrams/renderers/sequence/README.md +36 -6
  42. package/ai/skills/stacks-technical-diagrams/renderers/sequence/render-sequence.mjs +270 -63
  43. package/ai/skills/stacks-technical-diagrams/renderers/shared/brand-marks.mjs +563 -0
  44. package/ai/skills/stacks-technical-diagrams/renderers/shared/bun-runtime.mjs +20 -0
  45. package/ai/skills/stacks-technical-diagrams/renderers/shared/cli.mjs +186 -10
  46. package/ai/skills/stacks-technical-diagrams/renderers/shared/desktop-readability.mjs +26 -0
  47. package/ai/skills/stacks-technical-diagrams/renderers/shared/diagnostics.mjs +127 -0
  48. package/ai/skills/stacks-technical-diagrams/renderers/shared/engineering-profiles.mjs +157 -0
  49. package/ai/skills/stacks-technical-diagrams/renderers/shared/generated-brand-marks.mjs +2003 -0
  50. package/ai/skills/stacks-technical-diagrams/renderers/shared/generated-validators.mjs +3 -3
  51. package/ai/skills/stacks-technical-diagrams/renderers/shared/geometry.mjs +1195 -2
  52. package/ai/skills/stacks-technical-diagrams/renderers/shared/i18n.mjs +595 -0
  53. package/ai/skills/stacks-technical-diagrams/renderers/shared/legend.mjs +217 -0
  54. package/ai/skills/stacks-technical-diagrams/renderers/shared/output-path.mjs +340 -0
  55. package/ai/skills/stacks-technical-diagrams/renderers/shared/repository-evidence.mjs +238 -0
  56. package/ai/skills/stacks-technical-diagrams/renderers/shared/repository-location.mjs +58 -0
  57. package/ai/skills/stacks-technical-diagrams/renderers/shared/text-fit.mjs +49 -0
  58. package/ai/skills/stacks-technical-diagrams/renderers/shared/utils.mjs +163 -19
  59. package/ai/skills/stacks-technical-diagrams/renderers/shared/validator.mjs +51 -5
  60. package/ai/skills/stacks-technical-diagrams/renderers/workflow/README.md +137 -17
  61. package/ai/skills/stacks-technical-diagrams/renderers/workflow/render-workflow.mjs +24 -470
  62. package/ai/skills/stacks-technical-diagrams/renderers/workflow/workflow-compiler.mjs +4400 -0
  63. package/ai/skills/stacks-technical-diagrams/renderers/workflow/workflow-migration-geometry.mjs +144 -0
  64. package/ai/skills/stacks-technical-diagrams/schemas/README.md +154 -11
  65. package/ai/skills/stacks-technical-diagrams/schemas/architecture.schema.json +61 -4
  66. package/ai/skills/stacks-technical-diagrams/schemas/common.schema.json +72 -0
  67. package/ai/skills/stacks-technical-diagrams/schemas/dataflow.schema.json +40 -18
  68. package/ai/skills/stacks-technical-diagrams/schemas/lifecycle.schema.json +43 -18
  69. package/ai/skills/stacks-technical-diagrams/schemas/sequence.schema.json +41 -4
  70. package/ai/skills/stacks-technical-diagrams/schemas/workflow.schema.json +97 -1
  71. package/ai/skills/stacks-technical-diagrams/scripts/check-render-output.mjs +551 -12
  72. package/ai/skills/stacks-technical-diagrams/scripts/render-examples.mjs +3 -4
  73. package/ide/vscode/package.json +1 -1
  74. package/package.json +2 -2
@@ -30,6 +30,9 @@
30
30
  "type": "string",
31
31
  "minLength": 1
32
32
  },
33
+ "locale": {
34
+ "$ref": "common.schema.json#/$defs/locale"
35
+ },
33
36
  "subtitle": {
34
37
  "type": "string"
35
38
  },
@@ -37,10 +40,37 @@
37
40
  "type": "string"
38
41
  },
39
42
  "animation": {
40
- "enum": [
41
- "trace",
42
- "none"
43
- ]
43
+ "$ref": "common.schema.json#/$defs/animation"
44
+ },
45
+ "visual_preset": {
46
+ "$ref": "common.schema.json#/$defs/visualPreset"
47
+ },
48
+ "quality_profile": {
49
+ "$ref": "common.schema.json#/$defs/qualityProfile"
50
+ },
51
+ "views": {
52
+ "$ref": "common.schema.json#/$defs/guidedViews"
53
+ },
54
+ "legend": {
55
+ "type": "object",
56
+ "additionalProperties": false,
57
+ "properties": {
58
+ "mode": { "$ref": "common.schema.json#/$defs/legendMode" },
59
+ "entries": {
60
+ "type": "object",
61
+ "additionalProperties": false,
62
+ "properties": {
63
+ "start": { "$ref": "common.schema.json#/$defs/legendEntry" },
64
+ "active": { "$ref": "common.schema.json#/$defs/legendEntry" },
65
+ "waiting": { "$ref": "common.schema.json#/$defs/legendEntry" },
66
+ "decision": { "$ref": "common.schema.json#/$defs/legendEntry" },
67
+ "success": { "$ref": "common.schema.json#/$defs/legendEntry" },
68
+ "failure": { "$ref": "common.schema.json#/$defs/legendEntry" },
69
+ "neutral": { "$ref": "common.schema.json#/$defs/legendEntry" },
70
+ "external": { "$ref": "common.schema.json#/$defs/legendEntry" }
71
+ }
72
+ }
73
+ }
44
74
  },
45
75
  "viewBox": {
46
76
  "type": "array",
@@ -121,6 +151,9 @@
121
151
  "tag": {
122
152
  "type": "string"
123
153
  },
154
+ "brand": {
155
+ "$ref": "common.schema.json#/$defs/brandMark"
156
+ },
124
157
  "step": {
125
158
  "type": "string"
126
159
  },
@@ -156,6 +189,9 @@
156
189
  "to"
157
190
  ],
158
191
  "properties": {
192
+ "id": {
193
+ "$ref": "common.schema.json#/$defs/id"
194
+ },
159
195
  "from": {
160
196
  "$ref": "common.schema.json#/$defs/id"
161
197
  },
@@ -183,20 +219,10 @@
183
219
  ]
184
220
  },
185
221
  "fromSide": {
186
- "enum": [
187
- "left",
188
- "right",
189
- "top",
190
- "bottom"
191
- ]
222
+ "$ref": "common.schema.json#/$defs/side"
192
223
  },
193
224
  "toSide": {
194
- "enum": [
195
- "left",
196
- "right",
197
- "top",
198
- "bottom"
199
- ]
225
+ "$ref": "common.schema.json#/$defs/side"
200
226
  },
201
227
  "channelX": {
202
228
  "type": "number"
@@ -228,8 +254,7 @@
228
254
  }
229
255
  },
230
256
  "width": {
231
- "type": "number",
232
- "minimum": 0.5
257
+ "$ref": "common.schema.json#/$defs/relationshipWidth"
233
258
  }
234
259
  }
235
260
  }
@@ -29,6 +29,9 @@
29
29
  "type": "string",
30
30
  "minLength": 1
31
31
  },
32
+ "locale": {
33
+ "$ref": "common.schema.json#/$defs/locale"
34
+ },
32
35
  "subtitle": {
33
36
  "type": "string"
34
37
  },
@@ -36,10 +39,38 @@
36
39
  "type": "string"
37
40
  },
38
41
  "animation": {
39
- "enum": [
40
- "trace",
41
- "none"
42
- ]
42
+ "$ref": "common.schema.json#/$defs/animation"
43
+ },
44
+ "visual_preset": {
45
+ "$ref": "common.schema.json#/$defs/visualPreset"
46
+ },
47
+ "quality_profile": {
48
+ "$ref": "common.schema.json#/$defs/qualityProfile"
49
+ },
50
+ "column_fit": {
51
+ "description": "Horizontal participant layout. Omit this field or use fixed for the stable 86px boxes and 108px gap. Use spread when a wide viewBox would leave unused horizontal space or meaningful participant labels do not fit the fixed boxes; spread derives wider boxes and gaps from the viewBox without changing participant order or message semantics.",
52
+ "enum": ["fixed", "spread"]
53
+ },
54
+ "views": {
55
+ "$ref": "common.schema.json#/$defs/guidedViews"
56
+ },
57
+ "legend": {
58
+ "type": "object",
59
+ "additionalProperties": false,
60
+ "properties": {
61
+ "mode": { "$ref": "common.schema.json#/$defs/legendMode" },
62
+ "entries": {
63
+ "type": "object",
64
+ "additionalProperties": false,
65
+ "properties": {
66
+ "default": { "$ref": "common.schema.json#/$defs/legendEntry" },
67
+ "emphasis": { "$ref": "common.schema.json#/$defs/legendEntry" },
68
+ "security": { "$ref": "common.schema.json#/$defs/legendEntry" },
69
+ "dashed": { "$ref": "common.schema.json#/$defs/legendEntry" },
70
+ "return": { "$ref": "common.schema.json#/$defs/legendEntry" }
71
+ }
72
+ }
73
+ }
43
74
  },
44
75
  "viewBox": {
45
76
  "type": "array",
@@ -83,6 +114,9 @@
83
114
  },
84
115
  "sublabel": {
85
116
  "type": "string"
117
+ },
118
+ "brand": {
119
+ "$ref": "common.schema.json#/$defs/brandMark"
86
120
  }
87
121
  }
88
122
  }
@@ -124,6 +158,9 @@
124
158
  "label"
125
159
  ],
126
160
  "properties": {
161
+ "id": {
162
+ "$ref": "common.schema.json#/$defs/id"
163
+ },
127
164
  "from": {
128
165
  "$ref": "common.schema.json#/$defs/id"
129
166
  },
@@ -14,7 +14,10 @@
14
14
  ],
15
15
  "properties": {
16
16
  "schema_version": {
17
- "const": 1
17
+ "enum": [
18
+ 1,
19
+ 2
20
+ ]
18
21
  },
19
22
  "diagram_type": {
20
23
  "const": "workflow"
@@ -30,6 +33,9 @@
30
33
  "type": "string",
31
34
  "minLength": 1
32
35
  },
36
+ "locale": {
37
+ "$ref": "common.schema.json#/$defs/locale"
38
+ },
33
39
  "subtitle": {
34
40
  "type": "string"
35
41
  },
@@ -42,6 +48,43 @@
42
48
  "none"
43
49
  ]
44
50
  },
51
+ "visual_preset": {
52
+ "enum": [
53
+ "classic",
54
+ "signal-flow",
55
+ "blueprint",
56
+ "editorial"
57
+ ]
58
+ },
59
+ "quality_profile": {
60
+ "enum": [
61
+ "standard",
62
+ "showcase"
63
+ ]
64
+ },
65
+ "views": {
66
+ "$ref": "common.schema.json#/$defs/guidedViews"
67
+ },
68
+ "legend": {
69
+ "type": "object",
70
+ "additionalProperties": false,
71
+ "properties": {
72
+ "mode": { "$ref": "common.schema.json#/$defs/legendMode" },
73
+ "entries": {
74
+ "type": "object",
75
+ "additionalProperties": false,
76
+ "properties": {
77
+ "frontend": { "$ref": "common.schema.json#/$defs/legendEntry" },
78
+ "backend": { "$ref": "common.schema.json#/$defs/legendEntry" },
79
+ "database": { "$ref": "common.schema.json#/$defs/legendEntry" },
80
+ "cloud": { "$ref": "common.schema.json#/$defs/legendEntry" },
81
+ "security": { "$ref": "common.schema.json#/$defs/legendEntry" },
82
+ "messagebus": { "$ref": "common.schema.json#/$defs/legendEntry" },
83
+ "external": { "$ref": "common.schema.json#/$defs/legendEntry" }
84
+ }
85
+ }
86
+ }
87
+ },
45
88
  "viewBox": {
46
89
  "type": "array",
47
90
  "prefixItems": [
@@ -178,6 +221,37 @@
178
221
  "$ref": "common.schema.json#/$defs/id"
179
222
  }
180
223
  },
224
+ "semanticChecks": {
225
+ "type": "object",
226
+ "additionalProperties": false,
227
+ "minProperties": 1,
228
+ "properties": {
229
+ "allowedRoots": {
230
+ "type": "array",
231
+ "items": {
232
+ "$ref": "common.schema.json#/$defs/id"
233
+ }
234
+ },
235
+ "allowedTerminals": {
236
+ "type": "array",
237
+ "items": {
238
+ "$ref": "common.schema.json#/$defs/id"
239
+ }
240
+ },
241
+ "requiredEdges": {
242
+ "type": "array",
243
+ "items": {
244
+ "$ref": "#/$defs/semanticRelation"
245
+ }
246
+ },
247
+ "requiredPaths": {
248
+ "type": "array",
249
+ "items": {
250
+ "$ref": "#/$defs/semanticRelation"
251
+ }
252
+ }
253
+ }
254
+ },
181
255
  "nodes": {
182
256
  "type": "array",
183
257
  "minItems": 1,
@@ -216,6 +290,9 @@
216
290
  "tag": {
217
291
  "type": "string"
218
292
  },
293
+ "brand": {
294
+ "$ref": "common.schema.json#/$defs/brandMark"
295
+ },
219
296
  "width": {
220
297
  "type": "number",
221
298
  "minimum": 32
@@ -240,6 +317,9 @@
240
317
  "to"
241
318
  ],
242
319
  "properties": {
320
+ "id": {
321
+ "$ref": "common.schema.json#/$defs/id"
322
+ },
243
323
  "from": {
244
324
  "$ref": "common.schema.json#/$defs/id"
245
325
  },
@@ -320,6 +400,22 @@
320
400
  }
321
401
  },
322
402
  "$defs": {
403
+ "semanticRelation": {
404
+ "type": "object",
405
+ "additionalProperties": false,
406
+ "required": [
407
+ "from",
408
+ "to"
409
+ ],
410
+ "properties": {
411
+ "from": {
412
+ "$ref": "common.schema.json#/$defs/id"
413
+ },
414
+ "to": {
415
+ "$ref": "common.schema.json#/$defs/id"
416
+ }
417
+ }
418
+ },
323
419
  "side": {
324
420
  "enum": [
325
421
  "left",