@specverse/engines 5.0.2 → 5.2.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 (116) hide show
  1. package/assets/prompts/core/standard/default/analyse.prompt.yaml +5 -5
  2. package/assets/prompts/core/standard/default/app-demo.prompt.yaml +21 -1
  3. package/assets/prompts/core/standard/default/behavior.prompt.yaml +150 -0
  4. package/assets/prompts/core/standard/default/create.prompt.yaml +3 -3
  5. package/assets/prompts/core/standard/default/materialise.prompt.yaml +804 -774
  6. package/assets/prompts/core/standard/default/realize.prompt.yaml +581 -544
  7. package/assets/prompts/core/standard/v9/analyse.prompt.yaml +5 -5
  8. package/assets/prompts/core/standard/v9/app-demo.prompt.yaml +233 -0
  9. package/assets/prompts/core/standard/v9/behavior.prompt.yaml +33 -9
  10. package/assets/prompts/core/standard/v9/create.prompt.yaml +3 -3
  11. package/assets/prompts/core/standard/v9/materialise.prompt.yaml +804 -774
  12. package/assets/prompts/core/standard/v9/realize.prompt.yaml +581 -544
  13. package/dist/ai/commands/fill.d.ts.map +1 -1
  14. package/dist/ai/commands/fill.js +16 -7
  15. package/dist/ai/commands/fill.js.map +1 -1
  16. package/dist/ai/commands/template.d.ts.map +1 -1
  17. package/dist/ai/commands/template.js +17 -8
  18. package/dist/ai/commands/template.js.map +1 -1
  19. package/dist/bundles/deriveCatalog.d.ts +18 -0
  20. package/dist/bundles/deriveCatalog.d.ts.map +1 -0
  21. package/dist/bundles/deriveCatalog.js +263 -0
  22. package/dist/bundles/deriveCatalog.js.map +1 -0
  23. package/dist/bundles/index.d.ts +15 -0
  24. package/dist/bundles/index.d.ts.map +1 -0
  25. package/dist/bundles/index.js +15 -0
  26. package/dist/bundles/index.js.map +1 -0
  27. package/dist/bundles/types.d.ts +53 -0
  28. package/dist/bundles/types.d.ts.map +1 -0
  29. package/dist/bundles/types.js +22 -0
  30. package/dist/bundles/types.js.map +1 -0
  31. package/dist/bundles/validate.d.ts +55 -0
  32. package/dist/bundles/validate.d.ts.map +1 -0
  33. package/dist/bundles/validate.js +471 -0
  34. package/dist/bundles/validate.js.map +1 -0
  35. package/dist/inference/quint-transpiler.js +2 -2
  36. package/dist/inference/quint-transpiler.js.map +1 -1
  37. package/dist/libs/instance-factories/applications/templates/react/runtime-package-json-generator.js +1 -1
  38. package/dist/libs/instance-factories/cli/templates/commander/command-generator.js +227 -0
  39. package/dist/libs/instance-factories/tools/templates/mcp/mcp-server-generator.js +295 -14
  40. package/libs/instance-factories/applications/templates/react/runtime-package-json-generator.ts +1 -1
  41. package/libs/instance-factories/cli/templates/commander/command-generator.ts +227 -0
  42. package/libs/instance-factories/tools/templates/mcp/mcp-server-generator.ts +328 -15
  43. package/package.json +9 -5
  44. package/assets/examples/09-api/ai-spec.yaml +0 -194
  45. package/assets/examples/09-api/converted.yaml +0 -95
  46. package/assets/examples/09-api/diagram-architecture.mmd +0 -10
  47. package/assets/examples/09-api/diagram-er.mmd +0 -10
  48. package/assets/examples/09-api/documentation.html +0 -104
  49. package/assets/examples/09-api/documentation.md +0 -95
  50. package/assets/examples/09-api/inferred-spec.yaml +0 -420
  51. package/assets/examples/09-api/openapi.json +0 -61
  52. package/assets/examples/10-api/README.md +0 -216
  53. package/assets/examples/10-api/ai-spec.yaml +0 -194
  54. package/assets/examples/10-api/converted.yaml +0 -96
  55. package/assets/examples/10-api/diagram-architecture.mmd +0 -10
  56. package/assets/examples/10-api/diagram-er.mmd +0 -10
  57. package/assets/examples/10-api/documentation.html +0 -104
  58. package/assets/examples/10-api/documentation.md +0 -95
  59. package/assets/examples/10-api/inferred-spec.yaml +0 -7
  60. package/assets/examples/10-api/metadata.yaml +0 -89
  61. package/assets/examples/10-api/openapi.json +0 -61
  62. package/assets/examples/10-api/package-integration-test.js +0 -177
  63. package/assets/examples/10-api/usage-example.js +0 -323
  64. package/assets/examples/10-api/usage-example.ts +0 -363
  65. package/assets/examples/10-api/workflow-test.js +0 -113
  66. package/assets/examples/validate-examples-with-expected-failures.cjs +0 -328
  67. package/assets/examples/validate-examples.cjs +0 -225
  68. package/assets/prompts/MOVED.md +0 -35
  69. package/assets/prompts/SUMMARY-v8-PROMOTION.md +0 -445
  70. package/assets/prompts/core/CHANGELOG.md +0 -158
  71. package/assets/prompts/core/MIGRATION-v6-to-v7.md +0 -379
  72. package/assets/prompts/core/base-terminal-prompt.md +0 -201
  73. package/assets/prompts/core/examples/example-usage.ts +0 -140
  74. package/assets/prompts/core/schemas/prompt.schema.json +0 -309
  75. package/assets/prompts/core/schemas/prompt.schema.yaml +0 -229
  76. package/assets/prompts/core/standard/archive/v1/analyse.prompt.yaml +0 -259
  77. package/assets/prompts/core/standard/archive/v1/create.prompt.yaml +0 -302
  78. package/assets/prompts/core/standard/archive/v1/materialise.prompt.yaml +0 -328
  79. package/assets/prompts/core/standard/archive/v1/realize.prompt.yaml +0 -606
  80. package/assets/prompts/core/standard/archive/v2/README.md +0 -110
  81. package/assets/prompts/core/standard/archive/v2/analyse.prompt.yaml +0 -151
  82. package/assets/prompts/core/standard/archive/v2/create.prompt.yaml +0 -151
  83. package/assets/prompts/core/standard/archive/v2/materialise.prompt.yaml +0 -132
  84. package/assets/prompts/core/standard/archive/v2/realize.prompt.yaml +0 -147
  85. package/assets/prompts/core/standard/archive/v3/README.md +0 -279
  86. package/assets/prompts/core/standard/archive/v3/analyse.prompt.yaml +0 -309
  87. package/assets/prompts/core/standard/archive/v3/create.prompt.yaml +0 -351
  88. package/assets/prompts/core/standard/archive/v3/materialise.prompt.yaml +0 -247
  89. package/assets/prompts/core/standard/archive/v3/realize.prompt.yaml +0 -344
  90. package/assets/prompts/core/standard/archive/v4/README.md +0 -79
  91. package/assets/prompts/core/standard/archive/v4/analyse.prompt.yaml +0 -204
  92. package/assets/prompts/core/standard/archive/v4/create.prompt.yaml +0 -185
  93. package/assets/prompts/core/standard/archive/v5/README.md +0 -224
  94. package/assets/prompts/core/standard/archive/v5/analyse.prompt.yaml +0 -209
  95. package/assets/prompts/core/standard/archive/v5/create.prompt.yaml +0 -225
  96. package/assets/prompts/core/standard/archive/v5/materialise.prompt.yaml +0 -242
  97. package/assets/prompts/core/standard/archive/v5/realize.prompt.yaml +0 -336
  98. package/assets/prompts/core/standard/archive/v6/README.md +0 -187
  99. package/assets/prompts/core/standard/archive/v6/analyse.prompt.yaml +0 -219
  100. package/assets/prompts/core/standard/archive/v6/create.prompt.yaml +0 -180
  101. package/assets/prompts/core/standard/archive/v6/materialise.prompt.yaml +0 -203
  102. package/assets/prompts/core/standard/archive/v6/realize.prompt.yaml +0 -215
  103. package/assets/prompts/core/standard/archive/v7/analyse.prompt.nick.yaml +0 -144
  104. package/assets/prompts/core/standard/archive/v7/analyse.prompt.old.yaml +0 -146
  105. package/assets/prompts/core/standard/archive/v7/analyse.prompt.yaml +0 -129
  106. package/assets/prompts/core/standard/archive/v7/create.prompt.yaml +0 -146
  107. package/assets/prompts/core/standard/archive/v7/materialise.prompt.yaml +0 -297
  108. package/assets/prompts/core/standard/archive/v7/realize.prompt.yaml +0 -294
  109. package/assets/prompts/core/standard/archive/v8/README.md +0 -400
  110. package/assets/prompts/core/standard/archive/v8/analyse.prompt.yaml +0 -185
  111. package/assets/prompts/core/standard/archive/v8/create.prompt.yaml +0 -203
  112. package/assets/prompts/core/standard/archive/v8/materialise.prompt.yaml +0 -297
  113. package/assets/prompts/core/standard/archive/v8/realize.prompt.yaml +0 -294
  114. package/assets/prompts/templates/api-orchestrator-template.yaml +0 -188
  115. package/assets/prompts/templates/claude-integration-template.md +0 -121
  116. package/assets/prompts/templates/terminal-prompt-template.md +0 -97
@@ -1,95 +0,0 @@
1
- components:
2
- SpecVerseFundamentals:
3
- version: 1.0.0
4
- description: "Example 01-01: Basic model definition with attributes"
5
- import:
6
- - from: "@specverse/primitives"
7
- select:
8
- - Money
9
- export:
10
- models:
11
- - Product
12
- models:
13
- Product:
14
- description: Simple product with basic attributes
15
- attributes:
16
- id:
17
- name: id
18
- type: UUID
19
- required: true
20
- unique: false
21
- name:
22
- name: name
23
- type: String
24
- required: true
25
- unique: false
26
- summary:
27
- name: summary
28
- type: String
29
- required: false
30
- unique: false
31
- price:
32
- name: price
33
- type: Money
34
- required: true
35
- unique: false
36
- inStock:
37
- name: inStock
38
- type: Boolean
39
- required: false
40
- unique: false
41
- default: "true"
42
- category:
43
- name: category
44
- type: String
45
- required: true
46
- unique: false
47
- values:
48
- - electronics
49
- - books
50
- - clothing
51
- - home
52
- contactEmail:
53
- name: contactEmail
54
- type: Email
55
- required: false
56
- unique: false
57
- behaviors:
58
- attachProfile:
59
- description: Attach a profile to this model instance
60
- parameters:
61
- profileName:
62
- name: profileName
63
- type: String
64
- required: true
65
- unique: false
66
- returns: Boolean
67
- requires:
68
- - Profile exists and is compatible with this model
69
- ensures:
70
- - Profile is attached
71
- - Profile attributes are available
72
- detachProfile:
73
- description: Detach a profile from this model instance
74
- parameters:
75
- profileName:
76
- name: profileName
77
- type: String
78
- required: true
79
- unique: false
80
- returns: Boolean
81
- requires:
82
- - Profile is currently attached
83
- ensures:
84
- - Profile is detached
85
- - Profile attributes are no longer available
86
- hasProfile:
87
- description: Check if a profile is attached to this model instance
88
- parameters:
89
- profileName:
90
- name: profileName
91
- type: String
92
- required: true
93
- unique: false
94
- returns: Boolean
95
- deployments: {}
@@ -1,10 +0,0 @@
1
- graph TB
2
- subgraph "Client Layer"
3
- end
4
- subgraph "Controller Layer"
5
- end
6
- subgraph "Service Layer"
7
- end
8
- subgraph "Model Layer"
9
- Product[(Product)]
10
- end
@@ -1,10 +0,0 @@
1
- erDiagram
2
- Product {
3
- uuid id "NOT NULL"
4
- string name "NOT NULL"
5
- string summary
6
- string price "NOT NULL"
7
- boolean inStock
8
- string category "NOT NULL"
9
- string contactEmail
10
- }
@@ -1,104 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>SpecVerseFundamentals Documentation</title>
7
- <style>
8
- body {
9
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
10
- line-height: 1.6;
11
- color: #333;
12
- max-width: 900px;
13
- margin: 0 auto;
14
- padding: 20px;
15
- }
16
- h1, h2, h3, h4, h5 {
17
- color: #2c3e50;
18
- margin-top: 1.5em;
19
- }
20
- h1 { border-bottom: 2px solid #3498db; padding-bottom: 0.3em; }
21
- h2 { border-bottom: 1px solid #ecf0f1; padding-bottom: 0.2em; }
22
- table {
23
- border-collapse: collapse;
24
- width: 100%;
25
- margin: 1em 0;
26
- }
27
- th, td {
28
- border: 1px solid #ddd;
29
- padding: 8px;
30
- text-align: left;
31
- }
32
- th {
33
- background-color: #f8f9fa;
34
- font-weight: bold;
35
- }
36
- code {
37
- background-color: #f4f4f4;
38
- padding: 2px 4px;
39
- border-radius: 3px;
40
- font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
41
- }
42
- pre {
43
- background-color: #f4f4f4;
44
- padding: 1em;
45
- border-radius: 5px;
46
- overflow-x: auto;
47
- }
48
- .toc {
49
- background-color: #f8f9fa;
50
- padding: 1em;
51
- border-radius: 5px;
52
- margin: 1em 0;
53
- }
54
- .toc ul {
55
- list-style-type: none;
56
- padding-left: 1em;
57
- }
58
- .toc a {
59
- text-decoration: none;
60
- color: #3498db;
61
- }
62
- .toc a:hover {
63
- text-decoration: underline;
64
- }
65
- hr {
66
- border: none;
67
- border-top: 1px solid #ecf0f1;
68
- margin: 2em 0;
69
- }
70
- </style>
71
- </head>
72
- <body>
73
- <h1>SpecVerseFundamentals</h1><p>Example 01-01: Basic model definition with attributes</p><p><strong>Version:</strong> 1.0.0
74
- <strong>Generated:</strong> 2025-09-29T17:21:55.606Z</p><h2>Table of Contents</h2><ul><li><a href="#overview">Overview</a></li>
75
- <li><a href="#models">Models</a></li>
76
- - <a href="#product">Product</a></p><h2>Overview</h2><h3>Component Statistics</h3><p><tr><td>Component Type</td><td>Count</td></tr>
77
-
78
- <tr><td>Models</td><td>1</td></tr>
79
- <tr><td>Controllers</td><td>0</td></tr>
80
- <tr><td>Services</td><td>0</td></tr>
81
- <tr><td>Views</td><td>0</td></tr>
82
- <tr><td>Events</td><td>0</td></tr></p><h3>Imports</h3><p>
83
- <h3>Exports</h3><p><strong>SpecVerseFundamentals:</strong>
84
- <li><strong>models:</strong> Product</li></ul><h2>Models</h2><h3>Product</h3><p>Simple product with basic attributes</p><h4>Attributes</h4><p><tr><td>Name</td><td>Type</td><td>Required</td><td>Unique</td><td>Description</td></tr>
85
-
86
- <tr><td>id</td><td>UUID</td><td>✓</td></tr>
87
- <tr><td>name</td><td>String</td><td>✓</td></tr>
88
- <tr><td>summary</td><td>String</td></tr>
89
- <tr><td>price</td><td>Money</td><td>✓</td></tr>
90
- <tr><td>inStock</td><td>Boolean</td><td>Default: true</td></tr>
91
- <tr><td>category</td><td>String</td><td>✓</td></tr>
92
- <tr><td>contactEmail</td><td>Email</td></tr></p><h4>Behaviors</h4><h5>attachProfile</h5><p>Attach a profile to this model instance</p><p><strong>Parameters:</strong>
93
- <li><code>profileName</code>: String (required)</li></ul><p><strong>Returns:</strong> Boolean</p><p><strong>Preconditions:</strong>
94
- <li>Profile exists and is compatible with this model</li></ul><p><strong>Postconditions:</strong>
95
- <li>Profile is attached</li>
96
- <li>Profile attributes are available</li></ul><h5>detachProfile</h5><p>Detach a profile from this model instance</p><p><strong>Parameters:</strong>
97
- <li><code>profileName</code>: String (required)</li></ul><p><strong>Returns:</strong> Boolean</p><p><strong>Preconditions:</strong>
98
- <li>Profile is currently attached</li></ul><p><strong>Postconditions:</strong>
99
- <li>Profile is detached</li>
100
- <li>Profile attributes are no longer available</li></ul><h5>hasProfile</h5><p>Check if a profile is attached to this model instance</p><p><strong>Parameters:</strong>
101
- <li><code>profileName</code>: String (required)</li></ul><p><strong>Returns:</strong> Boolean</p><p>---
102
- </p>
103
- </body>
104
- </html>
@@ -1,95 +0,0 @@
1
- # SpecVerseFundamentals
2
-
3
- Example 01-01: Basic model definition with attributes
4
-
5
- **Version:** 1.0.0
6
- **Generated:** 2025-09-29T17:21:55.605Z
7
-
8
- ## Table of Contents
9
-
10
- - [Overview](#overview)
11
- - [Models](#models)
12
- - [Product](#product)
13
-
14
- ## Overview
15
-
16
- ### Component Statistics
17
-
18
- | Component Type | Count |
19
- |----------------|-------|
20
- | Models | 1 |
21
- | Controllers | 0 |
22
- | Services | 0 |
23
- | Views | 0 |
24
- | Events | 0 |
25
-
26
- ### Imports
27
-
28
-
29
- ### Exports
30
-
31
- **SpecVerseFundamentals:**
32
- - **models:** Product
33
-
34
- ## Models
35
-
36
- ### Product
37
-
38
- Simple product with basic attributes
39
-
40
- #### Attributes
41
-
42
- | Name | Type | Required | Unique | Description |
43
- |------|------|----------|--------|-------------|
44
- | id | UUID | ✓ | | |
45
- | name | String | ✓ | | |
46
- | summary | String | | | |
47
- | price | Money | ✓ | | |
48
- | inStock | Boolean | | | Default: true |
49
- | category | String | ✓ | | |
50
- | contactEmail | Email | | | |
51
-
52
- #### Behaviors
53
-
54
- ##### attachProfile
55
-
56
- Attach a profile to this model instance
57
-
58
- **Parameters:**
59
- - `profileName`: String (required)
60
-
61
- **Returns:** Boolean
62
-
63
- **Preconditions:**
64
- - Profile exists and is compatible with this model
65
-
66
- **Postconditions:**
67
- - Profile is attached
68
- - Profile attributes are available
69
-
70
- ##### detachProfile
71
-
72
- Detach a profile from this model instance
73
-
74
- **Parameters:**
75
- - `profileName`: String (required)
76
-
77
- **Returns:** Boolean
78
-
79
- **Preconditions:**
80
- - Profile is currently attached
81
-
82
- **Postconditions:**
83
- - Profile is detached
84
- - Profile attributes are no longer available
85
-
86
- ##### hasProfile
87
-
88
- Check if a profile is attached to this model instance
89
-
90
- **Parameters:**
91
- - `profileName`: String (required)
92
-
93
- **Returns:** Boolean
94
-
95
- ---