@specverse/engines 6.65.0 → 6.75.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.
- package/dist/ai/providers/claude-cli.d.ts +14 -0
- package/dist/ai/providers/claude-cli.d.ts.map +1 -1
- package/dist/ai/providers/claude-cli.js +167 -17
- package/dist/ai/providers/claude-cli.js.map +1 -1
- package/dist/inference/index.d.ts +1 -1
- package/dist/inference/index.d.ts.map +1 -1
- package/dist/inference/index.js +1 -1
- package/dist/inference/index.js.map +1 -1
- package/dist/inference/quint-transpiler.d.ts +18 -0
- package/dist/inference/quint-transpiler.d.ts.map +1 -1
- package/dist/inference/quint-transpiler.js +32 -0
- package/dist/inference/quint-transpiler.js.map +1 -1
- package/dist/libs/instance-factories/controllers/templates/fastify/routes-generator.js +14 -5
- package/dist/libs/instance-factories/services/mongodb-native-services.yaml +10 -0
- package/dist/libs/instance-factories/services/postgres-native-services.yaml +10 -0
- package/dist/libs/instance-factories/services/prisma-services.yaml +10 -0
- package/dist/libs/instance-factories/services/templates/_shared/guards-generator.js +209 -0
- package/dist/libs/instance-factories/services/templates/mongodb-native/controller-generator.js +110 -23
- package/dist/libs/instance-factories/services/templates/postgres-native/controller-generator.js +104 -22
- package/dist/libs/instance-factories/services/templates/prisma/controller-generator.js +133 -23
- package/dist/libs/instance-factories/services/templates/prisma/guards-generator.js +151 -0
- package/dist/parser/convention-processor.d.ts +44 -1
- package/dist/parser/convention-processor.d.ts.map +1 -1
- package/dist/parser/convention-processor.js +175 -1
- package/dist/parser/convention-processor.js.map +1 -1
- package/dist/parser/types/ast.d.ts +1 -1
- package/dist/parser/types/ast.d.ts.map +1 -1
- package/dist/parser/unified-parser.d.ts.map +1 -1
- package/dist/parser/unified-parser.js +25 -2
- package/dist/parser/unified-parser.js.map +1 -1
- package/dist/realize/index.d.ts.map +1 -1
- package/dist/realize/index.js +17 -0
- package/dist/realize/index.js.map +1 -1
- package/libs/instance-factories/controllers/templates/fastify/__tests__/actor-wiring.test.ts +80 -0
- package/libs/instance-factories/controllers/templates/fastify/routes-generator.ts +14 -5
- package/libs/instance-factories/services/mongodb-native-services.yaml +10 -0
- package/libs/instance-factories/services/postgres-native-services.yaml +10 -0
- package/libs/instance-factories/services/prisma-services.yaml +10 -0
- package/libs/instance-factories/services/templates/_shared/guards-generator.ts +296 -0
- package/libs/instance-factories/services/templates/mongodb-native/__tests__/controller-with-constraints.test.ts +192 -0
- package/libs/instance-factories/services/templates/mongodb-native/controller-generator.ts +144 -23
- package/libs/instance-factories/services/templates/postgres-native/__tests__/controller-with-constraints.test.ts +192 -0
- package/libs/instance-factories/services/templates/postgres-native/controller-generator.ts +130 -22
- package/libs/instance-factories/services/templates/prisma/__tests__/controller-with-constraints.test.ts +261 -0
- package/libs/instance-factories/services/templates/prisma/controller-generator.ts +186 -22
- package/package.json +1 -1
|
@@ -11,6 +11,10 @@ import { SpecVerseAST } from './types/ast.js';
|
|
|
11
11
|
import { ProcessorContext } from '@specverse/types';
|
|
12
12
|
export declare class ConventionProcessor implements ProcessorContext {
|
|
13
13
|
warnings: string[];
|
|
14
|
+
/** Hard errors collected during processing. The parser rolls these up
|
|
15
|
+
* into the parseResult.errors so callers (e.g. app-demo's spec-loader)
|
|
16
|
+
* can refuse to load specs with broken constraints. */
|
|
17
|
+
errors: string[];
|
|
14
18
|
private entityProcessors;
|
|
15
19
|
private behaviouralProcessor;
|
|
16
20
|
private componentEntityTypes;
|
|
@@ -20,7 +24,12 @@ export declare class ConventionProcessor implements ProcessorContext {
|
|
|
20
24
|
*/
|
|
21
25
|
getWarnings(): string[];
|
|
22
26
|
/**
|
|
23
|
-
*
|
|
27
|
+
* Get accumulated hard errors. Spec consumers should treat a non-empty
|
|
28
|
+
* list as a load-blocker (refuse to start the spec server).
|
|
29
|
+
*/
|
|
30
|
+
getErrors(): string[];
|
|
31
|
+
/**
|
|
32
|
+
* Clear accumulated warnings + errors.
|
|
24
33
|
*/
|
|
25
34
|
clearWarnings(): void;
|
|
26
35
|
/**
|
|
@@ -35,6 +44,40 @@ export declare class ConventionProcessor implements ProcessorContext {
|
|
|
35
44
|
* Process a single component
|
|
36
45
|
*/
|
|
37
46
|
private processComponent;
|
|
47
|
+
/**
|
|
48
|
+
* Phase 2 — expand a model's `constraints:` array (author form) plus any
|
|
49
|
+
* `transitions.condition` aliases into the typed `ModelConstraintSpec[]`
|
|
50
|
+
* the rest of the pipeline consumes.
|
|
51
|
+
*
|
|
52
|
+
* - `requires:` strings, arrays, and `{and|or|not}` trees are walked
|
|
53
|
+
* recursively; each leaf is expanded via BehaviouralConventionProcessor
|
|
54
|
+
* with the owning model as `currentModel`. Sub-expressions are joined
|
|
55
|
+
* with Quint `and`/`or`/`not` to produce ONE compound guard per record.
|
|
56
|
+
* - `transitions.condition` from structured lifecycles is auto-mapped to
|
|
57
|
+
* `{on: 'evolve.<transition>', requires: condition}` — author can write
|
|
58
|
+
* either form, never both for the same transition (current pipeline
|
|
59
|
+
* warns rather than errors; tightening to a parse-time conflict error
|
|
60
|
+
* is a follow-up).
|
|
61
|
+
* - Leaves that don't match any convention emit a parser warning and skip
|
|
62
|
+
* the affected record; remaining records still produce guards.
|
|
63
|
+
*/
|
|
64
|
+
private expandModelConstraints;
|
|
65
|
+
/**
|
|
66
|
+
* Expand one `{on, requires}` record into a ModelConstraintSpec.
|
|
67
|
+
*
|
|
68
|
+
* `origin` distinguishes author-written records ('authored') from records
|
|
69
|
+
* synthesised from `transitions.condition` ('transition-alias'). The
|
|
70
|
+
* distinction is preserved in `requires.source.convention` so the
|
|
71
|
+
* AST → YAML round-trip only emits author records back as `model.constraints`
|
|
72
|
+
* (aliased ones still live in `lifecycles.*.transitions.<action>` as
|
|
73
|
+
* `when=` clauses — emitting them in both places would double-validate).
|
|
74
|
+
*/
|
|
75
|
+
private expandConstraintRecord;
|
|
76
|
+
/**
|
|
77
|
+
* Recursively expand a `requires:` tree into a single Quint expression.
|
|
78
|
+
* Returns null if any leaf fails to match a convention.
|
|
79
|
+
*/
|
|
80
|
+
private expandRequiresTree;
|
|
38
81
|
/**
|
|
39
82
|
* Process a single manifest
|
|
40
83
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convention-processor.d.ts","sourceRoot":"","sources":["../../src/parser/convention-processor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAIL,YAAY,
|
|
1
|
+
{"version":3,"file":"convention-processor.d.ts","sourceRoot":"","sources":["../../src/parser/convention-processor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAIL,YAAY,EAKb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAQpD,qBAAa,mBAAoB,YAAW,gBAAgB;IACnD,QAAQ,EAAE,MAAM,EAAE,CAAM;IAC/B;;2DAEuD;IAChD,MAAM,EAAE,MAAM,EAAE,CAAM;IAE7B,OAAO,CAAC,gBAAgB,CAAyC;IACjE,OAAO,CAAC,oBAAoB,CAAiC;IAE7D,OAAO,CAAC,oBAAoB,CAAW;;IAwCvC;;OAEG;IACH,WAAW,IAAI,MAAM,EAAE;IAIvB;;;OAGG;IACH,SAAS,IAAI,MAAM,EAAE;IAIrB;;OAEG;IACH,aAAa,IAAI,IAAI;IAKrB;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,GAAG,GAAG,YAAY;IAiCpC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAwGxB;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,sBAAsB;IA8C9B;;;;;;;;;OASG;IACH,OAAO,CAAC,sBAAsB;IAkD9B;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAuC1B;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAyBzB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAwDhC;;;OAGG;IACH,OAAO,CAAC,UAAU;IA+ClB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAiBxB;;OAEG;IACH,OAAO,CAAC,eAAe;CAYxB"}
|
|
@@ -14,6 +14,10 @@ import { createRequire } from 'module';
|
|
|
14
14
|
import { existsSync } from 'fs';
|
|
15
15
|
export class ConventionProcessor {
|
|
16
16
|
warnings = [];
|
|
17
|
+
/** Hard errors collected during processing. The parser rolls these up
|
|
18
|
+
* into the parseResult.errors so callers (e.g. app-demo's spec-loader)
|
|
19
|
+
* can refuse to load specs with broken constraints. */
|
|
20
|
+
errors = [];
|
|
17
21
|
entityProcessors;
|
|
18
22
|
behaviouralProcessor;
|
|
19
23
|
// Entity type names derived from registered processors (not hardcoded)
|
|
@@ -61,10 +65,18 @@ export class ConventionProcessor {
|
|
|
61
65
|
return this.warnings;
|
|
62
66
|
}
|
|
63
67
|
/**
|
|
64
|
-
*
|
|
68
|
+
* Get accumulated hard errors. Spec consumers should treat a non-empty
|
|
69
|
+
* list as a load-blocker (refuse to start the spec server).
|
|
70
|
+
*/
|
|
71
|
+
getErrors() {
|
|
72
|
+
return this.errors;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Clear accumulated warnings + errors.
|
|
65
76
|
*/
|
|
66
77
|
clearWarnings() {
|
|
67
78
|
this.warnings = [];
|
|
79
|
+
this.errors = [];
|
|
68
80
|
}
|
|
69
81
|
/**
|
|
70
82
|
* Add a warning
|
|
@@ -159,12 +171,174 @@ export class ConventionProcessor {
|
|
|
159
171
|
}
|
|
160
172
|
processedComponent.constraints = expandedConstraints;
|
|
161
173
|
}
|
|
174
|
+
// Phase 2 — process per-model runtime-data constraints.
|
|
175
|
+
// Both author-written `model.constraints[]` AND `transitions.condition`
|
|
176
|
+
// (from `when=` clauses in structured lifecycles) flow through the same
|
|
177
|
+
// expansion pipeline, producing one ExpandedConstraint per record.
|
|
178
|
+
if (Array.isArray(processedComponent.models) && processedComponent.models.length > 0) {
|
|
179
|
+
// Slice 9 (Option D) — assemble a name→processedModel map so
|
|
180
|
+
// validators can look up cross-model state (e.g. "Poll is open"
|
|
181
|
+
// on a Vote model needs Poll's lifecycle definition). Uses the
|
|
182
|
+
// PROCESSED form (relationships parsed into {name, type, target}
|
|
183
|
+
// objects, lifecycles parsed into structured arrays) — the
|
|
184
|
+
// string-shorthand author form would defeat the validators.
|
|
185
|
+
const processedModelMap = {};
|
|
186
|
+
for (const m of processedComponent.models) {
|
|
187
|
+
processedModelMap[m.name] = m;
|
|
188
|
+
}
|
|
189
|
+
for (const model of processedComponent.models) {
|
|
190
|
+
const rawModel = componentData.models?.[model.name];
|
|
191
|
+
if (!rawModel)
|
|
192
|
+
continue;
|
|
193
|
+
const modelConstraints = this.expandModelConstraints(rawModel.constraints, model.lifecycles, model.name, componentName, processedModelMap);
|
|
194
|
+
if (modelConstraints.length > 0) {
|
|
195
|
+
model.constraints = modelConstraints;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
162
199
|
// Add any unknown properties to be caught by schema validation
|
|
163
200
|
unknownProperties.forEach(prop => {
|
|
164
201
|
processedComponent[prop] = componentData[prop];
|
|
165
202
|
});
|
|
166
203
|
return processedComponent;
|
|
167
204
|
}
|
|
205
|
+
/**
|
|
206
|
+
* Phase 2 — expand a model's `constraints:` array (author form) plus any
|
|
207
|
+
* `transitions.condition` aliases into the typed `ModelConstraintSpec[]`
|
|
208
|
+
* the rest of the pipeline consumes.
|
|
209
|
+
*
|
|
210
|
+
* - `requires:` strings, arrays, and `{and|or|not}` trees are walked
|
|
211
|
+
* recursively; each leaf is expanded via BehaviouralConventionProcessor
|
|
212
|
+
* with the owning model as `currentModel`. Sub-expressions are joined
|
|
213
|
+
* with Quint `and`/`or`/`not` to produce ONE compound guard per record.
|
|
214
|
+
* - `transitions.condition` from structured lifecycles is auto-mapped to
|
|
215
|
+
* `{on: 'evolve.<transition>', requires: condition}` — author can write
|
|
216
|
+
* either form, never both for the same transition (current pipeline
|
|
217
|
+
* warns rather than errors; tightening to a parse-time conflict error
|
|
218
|
+
* is a follow-up).
|
|
219
|
+
* - Leaves that don't match any convention emit a parser warning and skip
|
|
220
|
+
* the affected record; remaining records still produce guards.
|
|
221
|
+
*/
|
|
222
|
+
expandModelConstraints(rawConstraints, lifecycles, modelName, componentName, specModels = {}) {
|
|
223
|
+
// Slice 9 — full validatorContext: currentModel + actorType (unchanged)
|
|
224
|
+
// plus spec.models for cross-model validator lookups (Model existence,
|
|
225
|
+
// state-of resolution) and actors default ['User'].
|
|
226
|
+
const ctx = {
|
|
227
|
+
currentModel: { name: modelName },
|
|
228
|
+
actorType: 'User',
|
|
229
|
+
spec: { models: specModels },
|
|
230
|
+
actors: ['User'],
|
|
231
|
+
};
|
|
232
|
+
const out = [];
|
|
233
|
+
// 1. Author-written model.constraints[]
|
|
234
|
+
if (Array.isArray(rawConstraints)) {
|
|
235
|
+
for (const rec of rawConstraints) {
|
|
236
|
+
const spec = this.expandConstraintRecord(rec, ctx, modelName, componentName, 'authored');
|
|
237
|
+
if (spec)
|
|
238
|
+
out.push(spec);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
// 2. transitions.condition aliasing (from `when=` clauses).
|
|
242
|
+
for (const lc of lifecycles ?? []) {
|
|
243
|
+
if (lc.type !== 'structured' || !lc.transitions)
|
|
244
|
+
continue;
|
|
245
|
+
for (const [actionName, transition] of Object.entries(lc.transitions)) {
|
|
246
|
+
const condition = transition?.condition;
|
|
247
|
+
if (!condition)
|
|
248
|
+
continue;
|
|
249
|
+
const spec = this.expandConstraintRecord({ on: `evolve.${actionName}`, requires: condition }, ctx, modelName, componentName, 'transition-alias');
|
|
250
|
+
if (spec)
|
|
251
|
+
out.push(spec);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
return out;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Expand one `{on, requires}` record into a ModelConstraintSpec.
|
|
258
|
+
*
|
|
259
|
+
* `origin` distinguishes author-written records ('authored') from records
|
|
260
|
+
* synthesised from `transitions.condition` ('transition-alias'). The
|
|
261
|
+
* distinction is preserved in `requires.source.convention` so the
|
|
262
|
+
* AST → YAML round-trip only emits author records back as `model.constraints`
|
|
263
|
+
* (aliased ones still live in `lifecycles.*.transitions.<action>` as
|
|
264
|
+
* `when=` clauses — emitting them in both places would double-validate).
|
|
265
|
+
*/
|
|
266
|
+
expandConstraintRecord(rec, ctx, modelName, componentName, origin = 'authored') {
|
|
267
|
+
const onArray = Array.isArray(rec.on) ? rec.on : [rec.on];
|
|
268
|
+
const body = this.expandRequiresTree(rec.requires, ctx);
|
|
269
|
+
if (body === null) {
|
|
270
|
+
// Hard error — the constraint references something that doesn't
|
|
271
|
+
// resolve (unknown convention, missing field, broken path). Better
|
|
272
|
+
// to refuse the spec at load than to silently drop the constraint
|
|
273
|
+
// and ship with weaker enforcement than the author intended.
|
|
274
|
+
this.errors.push(`Component '${componentName}', model '${modelName}': could not expand constraint requires=${JSON.stringify(rec.requires)} — no matching convention or invalid path (check that all referenced models/attributes/relationships exist).`);
|
|
275
|
+
return null;
|
|
276
|
+
}
|
|
277
|
+
// Synthetic identifier: <model>_<op-tokens>_requires. The op-tokens are
|
|
278
|
+
// sanitised the same way derived placeholders sanitise captures.
|
|
279
|
+
const opSlug = onArray
|
|
280
|
+
.map((o) => o.replace(/[^a-zA-Z0-9]+/g, '_').replace(/^_+|_+$/g, ''))
|
|
281
|
+
.join('_or_');
|
|
282
|
+
const name = `${modelName}_${opSlug}_requires`;
|
|
283
|
+
const compound = {
|
|
284
|
+
type: 'guard',
|
|
285
|
+
name,
|
|
286
|
+
body,
|
|
287
|
+
params: `self: ${modelName}, actor: ${ctx.actorType}`,
|
|
288
|
+
source: {
|
|
289
|
+
convention: origin === 'transition-alias' ? 'transition-alias' : 'compound',
|
|
290
|
+
entity: 'constraints',
|
|
291
|
+
input: typeof rec.requires === 'string'
|
|
292
|
+
? rec.requires
|
|
293
|
+
: JSON.stringify(rec.requires),
|
|
294
|
+
},
|
|
295
|
+
};
|
|
296
|
+
return {
|
|
297
|
+
on: onArray,
|
|
298
|
+
requires: compound,
|
|
299
|
+
source: { authorOn: rec.on, authorRequires: rec.requires },
|
|
300
|
+
};
|
|
301
|
+
}
|
|
302
|
+
/**
|
|
303
|
+
* Recursively expand a `requires:` tree into a single Quint expression.
|
|
304
|
+
* Returns null if any leaf fails to match a convention.
|
|
305
|
+
*/
|
|
306
|
+
expandRequiresTree(node, ctx) {
|
|
307
|
+
// Leaf: natural-language predicate, expand via BehaviouralConventionProcessor.
|
|
308
|
+
if (typeof node === 'string') {
|
|
309
|
+
const out = this.behaviouralProcessor.expand(node, ctx);
|
|
310
|
+
return out ? `(${out.body})` : null;
|
|
311
|
+
}
|
|
312
|
+
// Array: implicit AND (matches the proposal's Shape 2).
|
|
313
|
+
if (Array.isArray(node)) {
|
|
314
|
+
if (node.length === 0)
|
|
315
|
+
return null;
|
|
316
|
+
const parts = node.map((n) => this.expandRequiresTree(n, ctx));
|
|
317
|
+
if (parts.some((p) => p === null))
|
|
318
|
+
return null;
|
|
319
|
+
return `(${parts.join(' and ')})`;
|
|
320
|
+
}
|
|
321
|
+
// Object: compound `{and | or | not}` (schema guarantees exactly-one key).
|
|
322
|
+
if (node && typeof node === 'object') {
|
|
323
|
+
if (Array.isArray(node.and)) {
|
|
324
|
+
const parts = node.and.map((n) => this.expandRequiresTree(n, ctx));
|
|
325
|
+
if (parts.some((p) => p === null))
|
|
326
|
+
return null;
|
|
327
|
+
return `(${parts.join(' and ')})`;
|
|
328
|
+
}
|
|
329
|
+
if (Array.isArray(node.or)) {
|
|
330
|
+
const parts = node.or.map((n) => this.expandRequiresTree(n, ctx));
|
|
331
|
+
if (parts.some((p) => p === null))
|
|
332
|
+
return null;
|
|
333
|
+
return `(${parts.join(' or ')})`;
|
|
334
|
+
}
|
|
335
|
+
if (node.not !== undefined) {
|
|
336
|
+
const inner = this.expandRequiresTree(node.not, ctx);
|
|
337
|
+
return inner === null ? null : `not (${inner})`;
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
return null;
|
|
341
|
+
}
|
|
168
342
|
/**
|
|
169
343
|
* Process a single manifest
|
|
170
344
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convention-processor.js","sourceRoot":"","sources":["../../src/parser/convention-processor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"convention-processor.js","sourceRoot":"","sources":["../../src/parser/convention-processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Previously a duplicate copy. Now imports from the canonical source.
|
|
5
5
|
*/
|
|
6
|
-
export { type AttributeCategory, type AttributeSpec, type AutoscalingConfiguration, type CachePolicy, type CircuitBreakerPolicy, type CommunicationInstanceSpec, type ComponentSpec, type ConditionalCapabilityMapping, type ConditionalMapping, type ConditionalMappingCondition, type ControllerInstanceSpec, type ControllerSpec, type CuredOperationsSpec, type CurvedOperationsSpec, type DeploymentSpec, type EventPayloadSpec, type EventSpec, type ExecutablePropertiesSpec, type ExpandedConstraint, type FallbackStrategy, type IdempotencyPolicy, type InfrastructureInstanceSpec, type InstanceFactoryRef, type InstanceSpec, type InstancesSpec, type LifecycleSpec, type ManifestSpec, type ModelSpec, type MonitoringInstanceSpec, type OperationPolicies, type PreviousVersionInfo, type PrimitiveSpec, type ProfileAttachmentSpec, type RateLimitPolicy, type RelationshipSpec, type ResourceConfiguration, type RetryPolicy, type SecurityInstanceSpec, type ServiceInstanceSpec, type ServiceSpec, type SpecVerseAST, type StorageInstanceSpec, type SubscriptionSpec, type TechnologyConflict, type TransactionalPolicy, type ViewInstanceSpec, type ViewSpec, } from '@specverse/types';
|
|
6
|
+
export { type AttributeCategory, type AttributeSpec, type AutoscalingConfiguration, type CachePolicy, type CircuitBreakerPolicy, type CommunicationInstanceSpec, type ComponentSpec, type ConditionalCapabilityMapping, type ConditionalMapping, type ConditionalMappingCondition, type ControllerInstanceSpec, type ControllerSpec, type CuredOperationsSpec, type CurvedOperationsSpec, type DeploymentSpec, type EventPayloadSpec, type EventSpec, type ExecutablePropertiesSpec, type ExpandedConstraint, type FallbackStrategy, type IdempotencyPolicy, type InfrastructureInstanceSpec, type InstanceFactoryRef, type InstanceSpec, type InstancesSpec, type LifecycleSpec, type ManifestSpec, type ModelConstraintSpec, type ModelSpec, type MonitoringInstanceSpec, type OperationPolicies, type PreviousVersionInfo, type PrimitiveSpec, type ProfileAttachmentSpec, type RateLimitPolicy, type RelationshipSpec, type ResourceConfiguration, type RetryPolicy, type SecurityInstanceSpec, type ServiceInstanceSpec, type ServiceSpec, type SpecVerseAST, type StorageInstanceSpec, type SubscriptionSpec, type TechnologyConflict, type TransactionalPolicy, type ViewInstanceSpec, type ViewSpec, } from '@specverse/types';
|
|
7
7
|
//# sourceMappingURL=ast.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../../src/parser/types/ast.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,aAAa,EAClB,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,QAAQ,GACd,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../../src/parser/types/ast.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,aAAa,EAClB,KAAK,4BAA4B,EACjC,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAC3B,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,SAAS,EACd,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,QAAQ,GACd,MAAM,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unified-parser.d.ts","sourceRoot":"","sources":["../../src/parser/unified-parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,OAAO,EAAE,YAAY,EAAiC,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE7E,MAAM,WAAW,YAAY;IAE3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAGlB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,WAAW;IAC1B,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IAEpB,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,cAAc,CAAC;IACzB,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,kBAAkB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACpB,OAAO,EAAE;QAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAC;CAC3C;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAgB;gBAEpB,MAAM,EAAE,GAAG,EAAE,OAAO,GAAE,YAAiB;IAoDnD;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,WAAW;
|
|
1
|
+
{"version":3,"file":"unified-parser.d.ts","sourceRoot":"","sources":["../../src/parser/unified-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -123,8 +123,19 @@ export class UnifiedSpecVerseParser {
|
|
|
123
123
|
}
|
|
124
124
|
// 4. Process conventions (only if pre-validation passed)
|
|
125
125
|
const ast = this.conventionProcessor.process(yamlData);
|
|
126
|
-
// 5. Collect warnings from convention processor
|
|
126
|
+
// 5. Collect warnings + hard errors from convention processor.
|
|
127
|
+
// Hard errors (Phase 2 — broken constraint paths, missing fields,
|
|
128
|
+
// unresolvable conventions) are surfaced in result.errors so the
|
|
129
|
+
// spec loader can refuse to start with a broken spec.
|
|
127
130
|
this.warnings.push(...this.conventionProcessor.getWarnings());
|
|
131
|
+
const conventionErrors = this.conventionProcessor.getErrors();
|
|
132
|
+
if (conventionErrors.length > 0) {
|
|
133
|
+
return {
|
|
134
|
+
errors: conventionErrors,
|
|
135
|
+
warnings: [...this.warnings],
|
|
136
|
+
resolvedImports
|
|
137
|
+
};
|
|
138
|
+
}
|
|
128
139
|
// 6. Convert AST back to expanded YAML for post-processing validation
|
|
129
140
|
const processedYamlString = this.astToExpandedYaml(ast);
|
|
130
141
|
const processedYaml = yaml.load(processedYamlString);
|
|
@@ -843,13 +854,25 @@ export class UnifiedSpecVerseParser {
|
|
|
843
854
|
if (component.models && component.models.length > 0) {
|
|
844
855
|
result.components[component.name].models = {};
|
|
845
856
|
for (const model of component.models) {
|
|
857
|
+
// Phase 2 — only emit AUTHORED constraints back to YAML.
|
|
858
|
+
// Records synthesised from `transitions.condition` (origin
|
|
859
|
+
// 'transition-alias') already exist in `lifecycles.*.transitions`
|
|
860
|
+
// as `when=` clauses; echoing them as `constraints` too would
|
|
861
|
+
// double-validate post-conventions.
|
|
862
|
+
const authoredConstraints = (model.constraints ?? [])
|
|
863
|
+
.filter((c) => c.requires.source.convention !== 'transition-alias')
|
|
864
|
+
.map((c) => ({
|
|
865
|
+
on: c.source.authorOn,
|
|
866
|
+
requires: c.source.authorRequires,
|
|
867
|
+
}));
|
|
846
868
|
result.components[component.name].models[model.name] = {
|
|
847
869
|
...(model.description && { description: model.description }),
|
|
848
870
|
...(model.metadata && { metadata: model.metadata }), // v3.3+ metadata primitives
|
|
849
871
|
attributes: {},
|
|
850
872
|
...(model.relationships.length > 0 && { relationships: {} }),
|
|
851
873
|
...(model.lifecycles.length > 0 && { lifecycles: {} }),
|
|
852
|
-
...(Object.keys(model.behaviors).length > 0 && { behaviors: model.behaviors })
|
|
874
|
+
...(Object.keys(model.behaviors).length > 0 && { behaviors: model.behaviors }),
|
|
875
|
+
...(authoredConstraints.length > 0 && { constraints: authoredConstraints })
|
|
853
876
|
};
|
|
854
877
|
// Expand attributes
|
|
855
878
|
for (const attr of model.attributes) {
|