@prisma-next/framework-components 0.4.0-dev.9 → 0.5.0-dev.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/codec-types-B58nCJiu.d.mts.map +1 -1
- package/dist/control.d.mts +43 -103
- package/dist/control.d.mts.map +1 -1
- package/dist/execution.d.mts +35 -28
- package/dist/execution.d.mts.map +1 -1
- package/dist/execution.mjs +1 -1
- package/dist/execution.mjs.map +1 -1
- package/package.json +4 -4
- package/src/control-descriptors.ts +8 -1
- package/src/control-migration-types.ts +39 -120
- package/src/execution-descriptors.ts +9 -1
- package/src/execution-stack.ts +1 -1
- package/src/exports/control.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codec-types-B58nCJiu.d.mts","names":[],"sources":["../src/codec-types.ts"],"sourcesContent":[],"mappings":";;;KAEY,UAAA;;AAAZ;AAaA;;;;;;;;;AAiBoB,UAjBH,KAiBG,CAAA,WAAA,MAAA,GAAA,MAAA,EAAA,gBAAA,SAfO,UAeP,EAAA,GAAA,SAf+B,UAe/B,EAAA,EAAA,QAAA,OAAA,EAAA,MAAA,OAAA,CAAA,CAAA;EAAM;EAEP,SAAA,EAAA,EAZJ,EAYI;EAAY;EAEC,SAAA,WAAA,EAAA,SAAA,MAAA,EAAA;EAAM;EAGrB,SAAA,MAAW,CAAA,EAbR,
|
|
1
|
+
{"version":3,"file":"codec-types-B58nCJiu.d.mts","names":[],"sources":["../src/codec-types.ts"],"sourcesContent":[],"mappings":";;;KAEY,UAAA;;AAAZ;AAaA;;;;;;;;;AAiBoB,UAjBH,KAiBG,CAAA,WAAA,MAAA,GAAA,MAAA,EAAA,gBAAA,SAfO,UAeP,EAAA,GAAA,SAf+B,UAe/B,EAAA,EAAA,QAAA,OAAA,EAAA,MAAA,OAAA,CAAA,CAAA;EAAM;EAEP,SAAA,EAAA,EAZJ,EAYI;EAAY;EAEC,SAAA,WAAA,EAAA,SAAA,MAAA,EAAA;EAAM;EAGrB,SAAA,MAAW,CAAA,EAbR,OAcD;EAGN;iBAfI,MAAM;;eAER,QAAQ;;oBAEH,MAAM;;mBAEP,YAAY;;gCAEC;;UAGf,WAAA;mBACE;;cAGN,kBAAkB"}
|
package/dist/control.d.mts
CHANGED
|
@@ -265,7 +265,14 @@ interface ControlTargetDescriptor<TFamilyId extends string, TTargetId extends st
|
|
|
265
265
|
create(): TTargetInstance;
|
|
266
266
|
}
|
|
267
267
|
interface ControlAdapterDescriptor<TFamilyId extends string, TTargetId extends string, TAdapterInstance extends ControlAdapterInstance<TFamilyId, TTargetId> = ControlAdapterInstance<TFamilyId, TTargetId>> extends AdapterDescriptor<TFamilyId, TTargetId> {
|
|
268
|
-
|
|
268
|
+
/**
|
|
269
|
+
* Construct a control adapter instance for this stack.
|
|
270
|
+
*
|
|
271
|
+
* The `stack` argument mirrors `ControlFamilyDescriptor.create(stack)`:
|
|
272
|
+
* adapter implementations may inspect `stack.codecLookup`, extension packs,
|
|
273
|
+
* or other assembled metadata when constructing the instance.
|
|
274
|
+
*/
|
|
275
|
+
create(stack: ControlStack<TFamilyId, TTargetId>): TAdapterInstance;
|
|
269
276
|
}
|
|
270
277
|
interface ControlDriverDescriptor<TFamilyId extends string, TTargetId extends string, TDriverInstance extends ControlDriverInstance<TFamilyId, TTargetId> = ControlDriverInstance<TFamilyId, TTargetId>, TConnection = string> extends DriverDescriptor<TFamilyId, TTargetId> {
|
|
271
278
|
create(connection: TConnection): Promise<TDriverInstance>;
|
|
@@ -339,15 +346,6 @@ interface DataTransformOperation extends MigrationPlanOperation {
|
|
|
339
346
|
interface MigrationOperationPolicy {
|
|
340
347
|
readonly allowedOperationClasses: readonly MigrationOperationClass[];
|
|
341
348
|
}
|
|
342
|
-
/**
|
|
343
|
-
* Minimal shape for operation descriptors at the framework level.
|
|
344
|
-
* Targets produce richer types; this captures just enough for the
|
|
345
|
-
* framework to scaffold migration.ts files and pass descriptors through.
|
|
346
|
-
*/
|
|
347
|
-
interface OperationDescriptor {
|
|
348
|
-
readonly kind: string;
|
|
349
|
-
readonly [key: string]: unknown;
|
|
350
|
-
}
|
|
351
349
|
/**
|
|
352
350
|
* A single migration operation for display purposes.
|
|
353
351
|
* Contains only the fields needed for CLI output (tree view, JSON envelope).
|
|
@@ -360,6 +358,19 @@ interface MigrationPlanOperation {
|
|
|
360
358
|
/** The class of operation (additive, widening, destructive). */
|
|
361
359
|
readonly operationClass: MigrationOperationClass;
|
|
362
360
|
}
|
|
361
|
+
/**
|
|
362
|
+
* Framework-level contract for a single factory call in a target's planner IR.
|
|
363
|
+
*
|
|
364
|
+
* @see ADR 195
|
|
365
|
+
*/
|
|
366
|
+
interface OpFactoryCall {
|
|
367
|
+
/** The name of the factory that would produce this call's runtime op. */
|
|
368
|
+
readonly factoryName: string;
|
|
369
|
+
/** The operation's safety class (additive, widening, destructive, data). */
|
|
370
|
+
readonly operationClass: MigrationOperationClass;
|
|
371
|
+
/** Human-readable label for CLI output and diagnostics. */
|
|
372
|
+
readonly label: string;
|
|
373
|
+
}
|
|
363
374
|
/**
|
|
364
375
|
* A migration plan for display purposes.
|
|
365
376
|
* Contains only the fields needed for CLI output (summary, JSON envelope).
|
|
@@ -391,14 +402,8 @@ interface MigrationPlan {
|
|
|
391
402
|
* - hand the plan to the runner for execution (via `MigrationPlan`), and
|
|
392
403
|
* - materialize the plan as an editable source file via `renderTypeScript()`.
|
|
393
404
|
*
|
|
394
|
-
* User-authored migrations (
|
|
395
|
-
*
|
|
396
|
-
*
|
|
397
|
-
* Descriptor-flow targets (e.g. Postgres) that do not materialize their
|
|
398
|
-
* planner plans back to TypeScript provide a throwing stub so that
|
|
399
|
-
* `MigrationPlannerSuccessResult.plan` has a uniform type at the framework
|
|
400
|
-
* level. In practice the CLI only calls `renderTypeScript()` in the
|
|
401
|
-
* class-flow branch of `migration plan`.
|
|
405
|
+
* User-authored migrations (`Migration` subclasses) satisfy `MigrationPlan`
|
|
406
|
+
* but not this interface: they are already the source.
|
|
402
407
|
*/
|
|
403
408
|
interface MigrationPlanWithAuthoringSurface extends MigrationPlan {
|
|
404
409
|
/**
|
|
@@ -423,10 +428,7 @@ interface MigrationPlannerConflict {
|
|
|
423
428
|
* Successful planner result with the migration plan.
|
|
424
429
|
*
|
|
425
430
|
* The plan is typed as `MigrationPlanWithAuthoringSurface` so the CLI can
|
|
426
|
-
* uniformly ask any plan to render itself to TypeScript.
|
|
427
|
-
* planners do not support that (descriptor-flow targets like Postgres)
|
|
428
|
-
* supply a throwing `renderTypeScript()` stub — the CLI only calls it in
|
|
429
|
-
* the class-flow branch of `migration plan`.
|
|
431
|
+
* uniformly ask any plan to render itself to TypeScript.
|
|
430
432
|
*/
|
|
431
433
|
interface MigrationPlannerSuccessResult {
|
|
432
434
|
readonly kind: 'success';
|
|
@@ -502,11 +504,19 @@ interface MigrationPlanner<TFamilyId extends string = string, TTargetId extends
|
|
|
502
504
|
readonly policy: MigrationOperationPolicy;
|
|
503
505
|
/**
|
|
504
506
|
* Storage hash of the "from" contract (the state the planner assumes the
|
|
505
|
-
* database starts at).
|
|
506
|
-
*
|
|
507
|
-
*
|
|
507
|
+
* database starts at). Planners use this to populate `describe()` on the
|
|
508
|
+
* produced plan so the rendered `migration.ts` has correct `from`/`to`
|
|
509
|
+
* metadata.
|
|
508
510
|
*/
|
|
509
511
|
readonly fromHash: string;
|
|
512
|
+
/**
|
|
513
|
+
* The "from" contract (the state the planner assumes the database starts
|
|
514
|
+
* at). Planners pass this to data-safety strategies so they can compare
|
|
515
|
+
* `from` and `to` column shapes (e.g. to detect unsafe type changes).
|
|
516
|
+
* `db update` / `db init` reconcile against the live schema and have no
|
|
517
|
+
* "from" contract; only `migration plan` provides one.
|
|
518
|
+
*/
|
|
519
|
+
readonly fromContract?: unknown;
|
|
510
520
|
/**
|
|
511
521
|
* Active framework components participating in this composition.
|
|
512
522
|
* Families/targets can interpret this list to derive family-specific metadata.
|
|
@@ -517,10 +527,9 @@ interface MigrationPlanner<TFamilyId extends string = string, TTargetId extends
|
|
|
517
527
|
/**
|
|
518
528
|
* Produce an empty migration with the target's authoring conventions.
|
|
519
529
|
*
|
|
520
|
-
* Used by `migration new` to scaffold a fresh `migration.ts
|
|
521
|
-
*
|
|
522
|
-
*
|
|
523
|
-
* yields a stub the user can edit.
|
|
530
|
+
* Used by `migration new` to scaffold a fresh `migration.ts`. The
|
|
531
|
+
* returned plan has no operations; its `renderTypeScript()` yields a
|
|
532
|
+
* stub the user can edit.
|
|
524
533
|
*/
|
|
525
534
|
emptyMigration(context: MigrationScaffoldContext): MigrationPlanWithAuthoringSurface;
|
|
526
535
|
}
|
|
@@ -575,82 +584,13 @@ interface TargetMigrationsCapability<TFamilyId extends string = string, TTargetI
|
|
|
575
584
|
* @returns Family-specific schema IR (e.g., `SqlSchemaIR` for SQL targets).
|
|
576
585
|
*/
|
|
577
586
|
contractToSchema(contract: Contract | null, frameworkComponents?: ReadonlyArray<TargetBoundComponentDescriptor<TFamilyId, TTargetId>>): unknown;
|
|
578
|
-
/**
|
|
579
|
-
* Plans a migration using the descriptor-based planner.
|
|
580
|
-
* Returns operation descriptors that the caller scaffolds into a
|
|
581
|
-
* `migration.ts` file. Whether the resulting migration can be emitted
|
|
582
|
-
* end-to-end is determined at emit time (via `placeholder()` errors
|
|
583
|
-
* thrown for unfilled slots), not by the planner.
|
|
584
|
-
*/
|
|
585
|
-
planWithDescriptors?(context: {
|
|
586
|
-
readonly fromContract: Contract | null;
|
|
587
|
-
readonly toContract: Contract;
|
|
588
|
-
readonly frameworkComponents?: ReadonlyArray<TargetBoundComponentDescriptor<TFamilyId, TTargetId>>;
|
|
589
|
-
}): {
|
|
590
|
-
readonly ok: true;
|
|
591
|
-
readonly descriptors: readonly OperationDescriptor[];
|
|
592
|
-
} | {
|
|
593
|
-
readonly ok: false;
|
|
594
|
-
readonly conflicts: readonly MigrationPlannerConflict[];
|
|
595
|
-
};
|
|
596
|
-
/**
|
|
597
|
-
* Resolves operation descriptors into target-specific migration plan operations
|
|
598
|
-
* with SQL/DDL, prechecks, and postchecks. Called by `migration emit` to
|
|
599
|
-
* serialize migration.ts into ops.json.
|
|
600
|
-
*/
|
|
601
|
-
resolveDescriptors?(descriptors: readonly OperationDescriptor[], context: {
|
|
602
|
-
readonly fromContract: Contract | null;
|
|
603
|
-
readonly toContract: Contract;
|
|
604
|
-
readonly schemaName?: string;
|
|
605
|
-
readonly frameworkComponents?: ReadonlyArray<TargetBoundComponentDescriptor<TFamilyId, TTargetId>>;
|
|
606
|
-
}): readonly MigrationPlanOperation[];
|
|
607
|
-
/**
|
|
608
|
-
* Optional: render a descriptor list back to a populated `migration.ts`
|
|
609
|
-
* source string.
|
|
610
|
-
*
|
|
611
|
-
* Descriptor-flow targets (e.g. Postgres) implement this so that
|
|
612
|
-
* `migration plan` can hand the user an editable authoring surface that
|
|
613
|
-
* already captures the planner's decisions. Class-flow targets do not
|
|
614
|
-
* implement it — their planner already returns a renderable plan via
|
|
615
|
-
* `MigrationPlannerSuccessResult.plan.renderTypeScript()`.
|
|
616
|
-
*/
|
|
617
|
-
renderDescriptorTypeScript?(descriptors: readonly OperationDescriptor[], context: MigrationScaffoldContext): string;
|
|
618
|
-
/**
|
|
619
|
-
* Optional: in-process emit capability for class-flow migration files.
|
|
620
|
-
*
|
|
621
|
-
* Targets that author `migration.ts` as an executable class (rather than
|
|
622
|
-
* an array of descriptors) implement `emit` to produce `ops.json` from
|
|
623
|
-
* the source file directly. The framework dispatches to `emit` whenever
|
|
624
|
-
* `resolveDescriptors` is not present on the target.
|
|
625
|
-
*
|
|
626
|
-
* The capability runs in the same Node process as the CLI:
|
|
627
|
-
* - The target dynamically imports `<dir>/migration.ts`, locates the
|
|
628
|
-
* authored class on the module's default export, and invokes whatever
|
|
629
|
-
* runtime machinery it needs to obtain the operations list.
|
|
630
|
-
* - Structured errors thrown during evaluation (notably
|
|
631
|
-
* `errorUnfilledPlaceholder` with code `PN-MIG-2001`) propagate as
|
|
632
|
-
* real JS exceptions so the CLI's normal error envelope can render
|
|
633
|
-
* them with full structured metadata. No subprocess is spawned.
|
|
634
|
-
* - The target is responsible for calling `writeMigrationOps(dir, ops)`
|
|
635
|
-
* so that `ops.json` ends up on disk before `emit` returns. The
|
|
636
|
-
* framework's `emitMigration` helper is the single owner of
|
|
637
|
-
* `attestMigration(dir)` — the target MUST NOT call
|
|
638
|
-
* `attestMigration` itself.
|
|
639
|
-
* - The returned `MigrationPlanOperation[]` is the display-oriented
|
|
640
|
-
* shape the CLI uses for output (id, label, operationClass).
|
|
641
|
-
*/
|
|
642
|
-
emit?(options: {
|
|
643
|
-
readonly dir: string;
|
|
644
|
-
readonly frameworkComponents: ReadonlyArray<TargetBoundComponentDescriptor<TFamilyId, TTargetId>>;
|
|
645
|
-
}): Promise<readonly MigrationPlanOperation[]>;
|
|
646
587
|
}
|
|
647
588
|
/**
|
|
648
589
|
* Context for rendering migration source files.
|
|
649
590
|
*
|
|
650
591
|
* Kept minimal: only the paths a target might need to compute relative imports
|
|
651
592
|
* (e.g. the contract `.d.ts` import for typed-contract builders). Passed to
|
|
652
|
-
* `MigrationPlanner.emptyMigration(context)
|
|
653
|
-
* `TargetMigrationsCapability.renderDescriptorTypeScript(descriptors, context)`.
|
|
593
|
+
* `MigrationPlanner.emptyMigration(context)`.
|
|
654
594
|
*/
|
|
655
595
|
interface MigrationScaffoldContext {
|
|
656
596
|
/** Absolute path to the migration package directory. Used by targets to compute relative imports. */
|
|
@@ -658,9 +598,9 @@ interface MigrationScaffoldContext {
|
|
|
658
598
|
/** Absolute path to the contract.json file, if one exists. Used by targets that emit typed-contract imports. */
|
|
659
599
|
readonly contractJsonPath?: string;
|
|
660
600
|
/**
|
|
661
|
-
* Storage hash of the "from" contract.
|
|
662
|
-
*
|
|
663
|
-
*
|
|
601
|
+
* Storage hash of the "from" contract. Targets use this to populate
|
|
602
|
+
* `describe()` on the rendered empty migration so that identity metadata
|
|
603
|
+
* is correctly populated.
|
|
664
604
|
*/
|
|
665
605
|
readonly fromHash: string;
|
|
666
606
|
/**
|
|
@@ -719,5 +659,5 @@ interface SchemaViewCapable<TSchemaIR = unknown> {
|
|
|
719
659
|
}
|
|
720
660
|
declare function hasSchemaView<TFamilyId extends string, TSchemaIR>(instance: ControlFamilyInstance<TFamilyId, TSchemaIR>): instance is ControlFamilyInstance<TFamilyId, TSchemaIR> & SchemaViewCapable<TSchemaIR>;
|
|
721
661
|
//#endregion
|
|
722
|
-
export { type AssembledAuthoringContributions, type BaseSchemaIssue, type ControlAdapterDescriptor, type ControlAdapterInstance, type ControlDriverDescriptor, type ControlDriverInstance, type ControlExtensionDescriptor, type ControlExtensionInstance, type ControlFamilyDescriptor, type ControlFamilyInstance, type ControlMutationDefaultEntry, type ControlMutationDefaultRegistry, type ControlMutationDefaults, type ControlStack, type ControlTargetDescriptor, type ControlTargetInstance, type CoreSchemaView, type CreateControlStackInput, type DataTransformOperation, type DefaultFunctionLoweringContext, type DefaultFunctionLoweringHandler, type DefaultFunctionRegistry, type DefaultFunctionRegistryEntry, type EmitContractResult, type EnumValuesChangedIssue, type IntrospectSchemaResult, type LoweredDefaultResult, type LoweredDefaultValue, type MigratableTargetDescriptor, type MigrationOperationClass, type MigrationOperationPolicy, type MigrationPlan, type MigrationPlanOperation, type MigrationPlanWithAuthoringSurface, type MigrationPlanner, type MigrationPlannerConflict, type MigrationPlannerFailureResult, type MigrationPlannerResult, type MigrationPlannerSuccessResult, type MigrationRunner, type MigrationRunnerExecutionChecks, type MigrationRunnerFailure, type MigrationRunnerResult, type MigrationRunnerSuccessValue, type MigrationScaffoldContext, type MutationDefaultGeneratorDescriptor, type
|
|
662
|
+
export { type AssembledAuthoringContributions, type BaseSchemaIssue, type ControlAdapterDescriptor, type ControlAdapterInstance, type ControlDriverDescriptor, type ControlDriverInstance, type ControlExtensionDescriptor, type ControlExtensionInstance, type ControlFamilyDescriptor, type ControlFamilyInstance, type ControlMutationDefaultEntry, type ControlMutationDefaultRegistry, type ControlMutationDefaults, type ControlStack, type ControlTargetDescriptor, type ControlTargetInstance, type CoreSchemaView, type CreateControlStackInput, type DataTransformOperation, type DefaultFunctionLoweringContext, type DefaultFunctionLoweringHandler, type DefaultFunctionRegistry, type DefaultFunctionRegistryEntry, type EmitContractResult, type EnumValuesChangedIssue, type IntrospectSchemaResult, type LoweredDefaultResult, type LoweredDefaultValue, type MigratableTargetDescriptor, type MigrationOperationClass, type MigrationOperationPolicy, type MigrationPlan, type MigrationPlanOperation, type MigrationPlanWithAuthoringSurface, type MigrationPlanner, type MigrationPlannerConflict, type MigrationPlannerFailureResult, type MigrationPlannerResult, type MigrationPlannerSuccessResult, type MigrationRunner, type MigrationRunnerExecutionChecks, type MigrationRunnerFailure, type MigrationRunnerResult, type MigrationRunnerSuccessValue, type MigrationScaffoldContext, type MutationDefaultGeneratorDescriptor, type OpFactoryCall, type OperationContext, type ParsedDefaultFunctionCall, type SchemaIssue, type SchemaNodeKind, SchemaTreeNode, type SchemaTreeNodeOptions, type SchemaTreeVisitor, type SchemaVerificationNode, type SchemaViewCapable, type SerializedQueryPlan, type SignDatabaseResult, type SourceDiagnostic, type SourceSpan, type TargetMigrationsCapability, VERIFY_CODE_HASH_MISMATCH, VERIFY_CODE_MARKER_MISSING, VERIFY_CODE_SCHEMA_FAILURE, VERIFY_CODE_TARGET_MISMATCH, type VerifyDatabaseResult, type VerifyDatabaseSchemaResult, assembleAuthoringContributions, assembleControlMutationDefaults, assembleScalarTypeDescriptors, assertUniqueCodecOwner, createControlStack, extractCodecLookup, extractCodecTypeImports, extractComponentIds, extractOperationTypeImports, extractQueryOperationTypeImports, hasMigrations, hasSchemaView };
|
|
723
663
|
//# sourceMappingURL=control.d.mts.map
|
package/dist/control.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"control.d.mts","names":[],"sources":["../src/control-result-types.ts","../src/control-instances.ts","../src/control-stack.ts","../src/control-descriptors.ts","../src/control-migration-types.ts","../src/control-schema-view.ts","../src/control-capabilities.ts"],"sourcesContent":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"control.d.mts","names":[],"sources":["../src/control-result-types.ts","../src/control-instances.ts","../src/control-stack.ts","../src/control-descriptors.ts","../src/control-migration-types.ts","../src/control-schema-view.ts","../src/control-capabilities.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/execution.d.mts
CHANGED
|
@@ -7,6 +7,33 @@ interface RuntimeAdapterInstance<TFamilyId extends string, TTargetId extends str
|
|
|
7
7
|
interface RuntimeDriverInstance<TFamilyId extends string, TTargetId extends string> extends DriverInstance<TFamilyId, TTargetId> {}
|
|
8
8
|
interface RuntimeExtensionInstance<TFamilyId extends string, TTargetId extends string> extends ExtensionInstance<TFamilyId, TTargetId> {}
|
|
9
9
|
//#endregion
|
|
10
|
+
//#region src/execution-stack.d.ts
|
|
11
|
+
interface ExecutionStack<TFamilyId extends string, TTargetId extends string, TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId> = RuntimeAdapterInstance<TFamilyId, TTargetId>, TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<TFamilyId, TTargetId>, TExtensionInstance extends RuntimeExtensionInstance<TFamilyId, TTargetId> = RuntimeExtensionInstance<TFamilyId, TTargetId>> {
|
|
12
|
+
readonly target: RuntimeTargetDescriptor<TFamilyId, TTargetId>;
|
|
13
|
+
readonly adapter: RuntimeAdapterDescriptor<TFamilyId, TTargetId, TAdapterInstance>;
|
|
14
|
+
readonly driver: RuntimeDriverDescriptor<TFamilyId, TTargetId, unknown, TDriverInstance> | undefined;
|
|
15
|
+
readonly extensionPacks: readonly RuntimeExtensionDescriptor<TFamilyId, TTargetId, TExtensionInstance>[];
|
|
16
|
+
}
|
|
17
|
+
interface ExecutionStackInstance<TFamilyId extends string, TTargetId extends string, TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId> = RuntimeAdapterInstance<TFamilyId, TTargetId>, TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<TFamilyId, TTargetId>, TExtensionInstance extends RuntimeExtensionInstance<TFamilyId, TTargetId> = RuntimeExtensionInstance<TFamilyId, TTargetId>> {
|
|
18
|
+
readonly stack: ExecutionStack<TFamilyId, TTargetId, TAdapterInstance, TDriverInstance, TExtensionInstance>;
|
|
19
|
+
readonly target: RuntimeTargetInstance<TFamilyId, TTargetId>;
|
|
20
|
+
readonly adapter: TAdapterInstance;
|
|
21
|
+
readonly driver: TDriverInstance | undefined;
|
|
22
|
+
readonly extensionPacks: readonly TExtensionInstance[];
|
|
23
|
+
}
|
|
24
|
+
declare function createExecutionStack<TFamilyId extends string, TTargetId extends string, TTargetInstance extends RuntimeTargetInstance<TFamilyId, TTargetId>, TTargetDescriptor extends RuntimeTargetDescriptor<TFamilyId, TTargetId, TTargetInstance>, TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId>, TAdapterDescriptor extends RuntimeAdapterDescriptor<TFamilyId, TTargetId, TAdapterInstance>, TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<TFamilyId, TTargetId>, TDriverDescriptor extends RuntimeDriverDescriptor<TFamilyId, TTargetId, unknown, TDriverInstance> | undefined = undefined, TExtensionInstance extends RuntimeExtensionInstance<TFamilyId, TTargetId> = RuntimeExtensionInstance<TFamilyId, TTargetId>, TExtensionDescriptor extends RuntimeExtensionDescriptor<TFamilyId, TTargetId, TExtensionInstance> = never>(input: {
|
|
25
|
+
readonly target: TTargetDescriptor;
|
|
26
|
+
readonly adapter: TAdapterDescriptor;
|
|
27
|
+
readonly driver?: TDriverDescriptor | undefined;
|
|
28
|
+
readonly extensionPacks?: readonly TExtensionDescriptor[] | undefined;
|
|
29
|
+
}): ExecutionStack<TFamilyId, TTargetId, TAdapterInstance, TDriverInstance, TExtensionInstance> & {
|
|
30
|
+
readonly target: TTargetDescriptor;
|
|
31
|
+
readonly adapter: TAdapterDescriptor;
|
|
32
|
+
readonly driver: TDriverDescriptor | undefined;
|
|
33
|
+
readonly extensionPacks: readonly TExtensionDescriptor[];
|
|
34
|
+
};
|
|
35
|
+
declare function instantiateExecutionStack<TFamilyId extends string, TTargetId extends string, TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId>, TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId>, TExtensionInstance extends RuntimeExtensionInstance<TFamilyId, TTargetId>>(stack: ExecutionStack<TFamilyId, TTargetId, TAdapterInstance, TDriverInstance, TExtensionInstance>): ExecutionStackInstance<TFamilyId, TTargetId, TAdapterInstance, TDriverInstance, TExtensionInstance>;
|
|
36
|
+
//#endregion
|
|
10
37
|
//#region src/execution-descriptors.d.ts
|
|
11
38
|
interface RuntimeFamilyDescriptor<TFamilyId extends string, TFamilyInstance extends RuntimeFamilyInstance<TFamilyId> = RuntimeFamilyInstance<TFamilyId>> extends FamilyDescriptor<TFamilyId> {
|
|
12
39
|
create<TTargetId extends string>(options: {
|
|
@@ -20,7 +47,14 @@ interface RuntimeTargetDescriptor<TFamilyId extends string, TTargetId extends st
|
|
|
20
47
|
create(): TTargetInstance;
|
|
21
48
|
}
|
|
22
49
|
interface RuntimeAdapterDescriptor<TFamilyId extends string, TTargetId extends string, TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId> = RuntimeAdapterInstance<TFamilyId, TTargetId>> extends AdapterDescriptor<TFamilyId, TTargetId> {
|
|
23
|
-
|
|
50
|
+
/**
|
|
51
|
+
* Construct a runtime adapter instance for this execution stack.
|
|
52
|
+
*
|
|
53
|
+
* Mirrors `ControlAdapterDescriptor.create(stack)` so that adapter
|
|
54
|
+
* implementations may inspect stack-assembled metadata (e.g. codecs
|
|
55
|
+
* contributed by extension packs) when constructing the instance.
|
|
56
|
+
*/
|
|
57
|
+
create(stack: ExecutionStack<TFamilyId, TTargetId>): TAdapterInstance;
|
|
24
58
|
}
|
|
25
59
|
interface RuntimeDriverDescriptor<TFamilyId extends string, TTargetId extends string, TCreateOptions = void, TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<TFamilyId, TTargetId>> extends DriverDescriptor<TFamilyId, TTargetId> {
|
|
26
60
|
create(options?: TCreateOptions): TDriverInstance;
|
|
@@ -47,32 +81,5 @@ declare function assertRuntimeContractRequirementsSatisfied<TFamilyId extends st
|
|
|
47
81
|
readonly extensionPacks: readonly RuntimeExtensionDescriptor<TFamilyId, TTargetId>[];
|
|
48
82
|
}): void;
|
|
49
83
|
//#endregion
|
|
50
|
-
//#region src/execution-stack.d.ts
|
|
51
|
-
interface ExecutionStack<TFamilyId extends string, TTargetId extends string, TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId> = RuntimeAdapterInstance<TFamilyId, TTargetId>, TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<TFamilyId, TTargetId>, TExtensionInstance extends RuntimeExtensionInstance<TFamilyId, TTargetId> = RuntimeExtensionInstance<TFamilyId, TTargetId>> {
|
|
52
|
-
readonly target: RuntimeTargetDescriptor<TFamilyId, TTargetId>;
|
|
53
|
-
readonly adapter: RuntimeAdapterDescriptor<TFamilyId, TTargetId, TAdapterInstance>;
|
|
54
|
-
readonly driver: RuntimeDriverDescriptor<TFamilyId, TTargetId, unknown, TDriverInstance> | undefined;
|
|
55
|
-
readonly extensionPacks: readonly RuntimeExtensionDescriptor<TFamilyId, TTargetId, TExtensionInstance>[];
|
|
56
|
-
}
|
|
57
|
-
interface ExecutionStackInstance<TFamilyId extends string, TTargetId extends string, TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId> = RuntimeAdapterInstance<TFamilyId, TTargetId>, TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<TFamilyId, TTargetId>, TExtensionInstance extends RuntimeExtensionInstance<TFamilyId, TTargetId> = RuntimeExtensionInstance<TFamilyId, TTargetId>> {
|
|
58
|
-
readonly stack: ExecutionStack<TFamilyId, TTargetId, TAdapterInstance, TDriverInstance, TExtensionInstance>;
|
|
59
|
-
readonly target: RuntimeTargetInstance<TFamilyId, TTargetId>;
|
|
60
|
-
readonly adapter: TAdapterInstance;
|
|
61
|
-
readonly driver: TDriverInstance | undefined;
|
|
62
|
-
readonly extensionPacks: readonly TExtensionInstance[];
|
|
63
|
-
}
|
|
64
|
-
declare function createExecutionStack<TFamilyId extends string, TTargetId extends string, TTargetInstance extends RuntimeTargetInstance<TFamilyId, TTargetId>, TTargetDescriptor extends RuntimeTargetDescriptor<TFamilyId, TTargetId, TTargetInstance>, TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId>, TAdapterDescriptor extends RuntimeAdapterDescriptor<TFamilyId, TTargetId, TAdapterInstance>, TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<TFamilyId, TTargetId>, TDriverDescriptor extends RuntimeDriverDescriptor<TFamilyId, TTargetId, unknown, TDriverInstance> | undefined = undefined, TExtensionInstance extends RuntimeExtensionInstance<TFamilyId, TTargetId> = RuntimeExtensionInstance<TFamilyId, TTargetId>, TExtensionDescriptor extends RuntimeExtensionDescriptor<TFamilyId, TTargetId, TExtensionInstance> = never>(input: {
|
|
65
|
-
readonly target: TTargetDescriptor;
|
|
66
|
-
readonly adapter: TAdapterDescriptor;
|
|
67
|
-
readonly driver?: TDriverDescriptor | undefined;
|
|
68
|
-
readonly extensionPacks?: readonly TExtensionDescriptor[] | undefined;
|
|
69
|
-
}): ExecutionStack<TFamilyId, TTargetId, TAdapterInstance, TDriverInstance, TExtensionInstance> & {
|
|
70
|
-
readonly target: TTargetDescriptor;
|
|
71
|
-
readonly adapter: TAdapterDescriptor;
|
|
72
|
-
readonly driver: TDriverDescriptor | undefined;
|
|
73
|
-
readonly extensionPacks: readonly TExtensionDescriptor[];
|
|
74
|
-
};
|
|
75
|
-
declare function instantiateExecutionStack<TFamilyId extends string, TTargetId extends string, TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId>, TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId>, TExtensionInstance extends RuntimeExtensionInstance<TFamilyId, TTargetId>>(stack: ExecutionStack<TFamilyId, TTargetId, TAdapterInstance, TDriverInstance, TExtensionInstance>): ExecutionStackInstance<TFamilyId, TTargetId, TAdapterInstance, TDriverInstance, TExtensionInstance>;
|
|
76
|
-
//#endregion
|
|
77
84
|
export { type ExecutionStack, type ExecutionStackInstance, type RuntimeAdapterDescriptor, type RuntimeAdapterInstance, type RuntimeDriverDescriptor, type RuntimeDriverInstance, type RuntimeExtensionDescriptor, type RuntimeExtensionInstance, type RuntimeFamilyDescriptor, type RuntimeFamilyInstance, type RuntimeTargetDescriptor, type RuntimeTargetInstance, assertRuntimeContractRequirementsSatisfied, createExecutionStack, instantiateExecutionStack };
|
|
78
85
|
//# sourceMappingURL=execution.d.mts.map
|
package/dist/execution.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.d.mts","names":[],"sources":["../src/execution-instances.ts","../src/execution-
|
|
1
|
+
{"version":3,"file":"execution.d.mts","names":[],"sources":["../src/execution-instances.ts","../src/execution-stack.ts","../src/execution-descriptors.ts","../src/execution-requirements.ts"],"sourcesContent":[],"mappings":";;;UAQiB,wDACP,eAAe;AADR,UAGA,qBAHqB,CAAA,kBACb,MAAf,EAAA,kBAAc,MAAA,CAAA,SAGd,cAHc,CAGC,SAHD,EAGY,SAHZ,CAAA,CAAA,CAExB;AACyB,UAER,sBAFQ,CAAA,kBAAA,MAAA,EAAA,kBAAA,MAAA,CAAA,SAGf,eAHe,CAGC,SAHD,EAGY,SAHZ,CAAA,CAAA;AAAf,UAKO,qBALP,CAAA,kBAAA,MAAA,EAAA,kBAAA,MAAA,CAAA,SAMA,cANA,CAMe,SANf,EAM0B,SAN1B,CAAA,CAAA;AAEO,UAMA,wBANsB,CAAA,kBAAA,MAAA,EAAA,kBAAA,MAAA,CAAA,SAO7B,iBAP6B,CAOX,SAPW,EAOA,SAPA,CAAA,CAAA;;;UCDtB,4FAGU,uBAAuB,WAAW,aAAa,uBACtE,WACA,oCAEsB,sBAAsB,WAAW,aAAa,sBACpE,WACA,uCAEyB,yBACzB,WACA,aACE,yBAAyB,WAAW;EDnBzB,SAAA,MAAA,ECqBE,uBDrBmB,CCqBK,SDpBlB,ECoB6B,SDpB5C,CAAA;EAEO,SAAA,OAAA,ECmBG,wBDnBkB,CCmBO,SDnBP,ECmBkB,SDnBlB,ECmB6B,gBDnB7B,CAAA;EACb,SAAA,MAAA,ECoBnB,uBDpBmB,CCoBK,SDpBL,ECoBgB,SDpBhB,EAAA,OAAA,ECoBoC,eDpBpC,CAAA,GAAA,SAAA;EAAW,SAAA,cAAA,EAAA,SCsBA,0BDtBA,CCuBhC,SDvBgC,ECwBhC,SDxBgC,ECyBhC,kBDzBgC,CAAA,EAAA;;AAAZ,UC6BP,sBD7BO,CAAA,kBAAA,MAAA,EAAA,kBAAA,MAAA,EAAA,yBCgCG,sBDhCH,CCgC0B,SDhC1B,ECgCqC,SDhCrC,CAAA,GCgCkD,sBDhClD,CCiCpB,SDjCoB,ECkCpB,SDlCoB,CAAA,EAAA,wBCoCE,qBDpCF,CCoCwB,SDpCxB,ECoCmC,SDpCnC,CAAA,GCoCgD,qBDpChD,CCqCpB,SDrCoB,ECsCpB,SDtCoB,CAAA,EAAA,2BCwCK,wBDxCL,CCyCpB,SDzCoB,EC0CpB,SD1CoB,CAAA,GC2ClB,wBD3CkB,CC2CO,SD3CP,EC2CkB,SD3ClB,CAAA,CAAA,CAAA;EAEP,SAAA,KAAA,EC2CC,cD3CqB,CC4CnC,SD5CmC,EC6CnC,SD7CmC,EC8CnC,gBD9CmC,EC+CnC,eD/CmC,ECgDnC,kBDhDmC,CAAA;EACb,SAAA,MAAA,ECiDP,qBDjDO,CCiDe,SDjDf,ECiD0B,SDjD1B,CAAA;EAAW,SAAA,OAAA,ECkDjB,gBDlDiB;EAA3B,SAAA,MAAA,ECmDS,eDnDT,GAAA,SAAA;EAAe,SAAA,cAAA,EAAA,SCoDW,kBDpDX,EAAA;AAEzB;AACyB,iBCoDT,oBDpDS,CAAA,kBAAA,MAAA,EAAA,kBAAA,MAAA,EAAA,wBCuDC,qBDvDD,CCuDuB,SDvDvB,ECuDkC,SDvDlC,CAAA,EAAA,0BCwDG,uBDxDH,CCwD2B,SDxD3B,ECwDsC,SDxDtC,ECwDiD,eDxDjD,CAAA,EAAA,yBCyDE,sBDzDF,CCyDyB,SDzDzB,ECyDoC,SDzDpC,CAAA,EAAA,2BC0DI,wBD1DJ,CC0D6B,SD1D7B,EC0DwC,SD1DxC,EC0DmD,gBD1DnD,CAAA,EAAA,wBC2DC,qBD3DD,CC2DuB,SD3DvB,EC2DkC,SD3DlC,CAAA,GC2D+C,qBD3D/C,CC4DrB,SD5DqB,EC6DrB,SD7DqB,CAAA,EAAA,0BCgEnB,uBDhEmB,CCgEK,SDhEL,ECgEgB,SDhEhB,EAAA,OAAA,ECgEoC,eDhEpC,CAAA,GAAA,SAAA,GAAA,SAAA,EAAA,2BCkEI,wBDlEJ,CCmErB,SDnEqB,ECoErB,SDpEqB,CAAA,GCqEnB,wBDrEmB,CCqEM,SDrEN,ECqEiB,SDrEjB,CAAA,EAAA,6BCsEM,0BDtEN,CCuErB,SDvEqB,ECwErB,SDxEqB,ECyErB,kBDzEqB,CAAA,GAAA,KAAA,CAAA,CAAA,KAAA,EAAA;EAAW,SAAA,MAAA,EC4EjB,iBD5EiB;EAA1B,SAAA,OAAA,EC6EU,kBD7EV;EAAc,SAAA,MAAA,CAAA,EC8EJ,iBD9EI,GAAA,SAAA;EAEP,SAAA,cAAA,CAAA,EAAA,SC6EoB,oBD7EI,EAAA,GAAA,SAAA;CACb,CAAA,EC6ExB,cD7EwB,CC6ET,SD7ES,EC6EE,SD7EF,EC6Ea,gBD7Eb,EC6E+B,eD7E/B,EC6EgD,kBD7EhD,CAAA,GAAA;EAAW,SAAA,MAAA,EC8EpB,iBD9EoB;EAA7B,SAAA,OAAA,EC+EU,kBD/EV;EAAiB,SAAA,MAAA,ECgFR,iBDhFQ,GAAA,SAAA;oCCiFS;;iBAUpB,uGAGW,uBAAuB,WAAW,oCACnC,sBAAsB,WAAW,uCAC9B,yBAAyB,WAAW,mBAExD,eACL,WACA,WACA,kBACA,iBACA,sBAED,uBACD,WACA,WACA,kBACA,iBACA;;;AD3He,UEQA,uBFRqB,CAAA,kBACb,MAAf,EAAA,wBESgB,qBFTF,CESwB,SFTxB,CAAA,GESqC,qBFTrC,CES2D,SFT3D,CAAA,CAAA,SEUd,gBFVc,CEUG,SFVH,CAAA,CAAA;EAEP,MAAA,CAAA,kBAAqB,MAAA,CAAA,CAAA,OAAA,EAAA;IACb,SAAA,MAAA,EESJ,uBFTI,CESoB,SFTpB,EES+B,SFT/B,CAAA;IAAW,SAAA,OAAA,EEUd,wBFVc,CEUW,SFVX,EEUsB,SFVtB,CAAA;IAA1B,SAAA,MAAA,EEWW,uBFXX,CEWmC,SFXnC,EEW8C,SFX9C,CAAA;IAAc,SAAA,cAAA,EAAA,SEYc,0BFZd,CEYyC,SFZzC,EEYoD,SFZpD,CAAA,EAAA;EAEP,CAAA,CAAA,EEWX,eFXW;;AACoB,UEapB,uBFboB,CAAA,kBAAA,MAAA,EAAA,kBAAA,MAAA,EAAA,wBEgBX,qBFhBW,CEgBW,SFhBX,EEgBsB,SFhBtB,CAAA,GEgBmC,qBFhBnC,CEiBjC,SFjBiC,EEkBjC,SFlBiC,CAAA,CAAA,SEoB3B,gBFpB2B,CEoBV,SFpBU,EEoBC,SFpBD,CAAA,CAAA;EAA3B,MAAA,EAAA,EEqBE,eFrBF;;AAEO,UEsBA,wBFtBqB,CAAA,kBAAA,MAAA,EAAA,kBAAA,MAAA,EAAA,yBEyBX,sBFzBW,CEyBY,SFzBZ,EEyBuB,SFzBvB,CAAA,GEyBoC,sBFzBpC,CE0BlC,SF1BkC,EE2BlC,SF3BkC,CAAA,CAAA,SE6B5B,iBF7B4B,CE6BV,SF7BU,EE6BC,SF7BD,CAAA,CAAA;EACb;;;;AAEzB;;;EACU,MAAA,CAAA,KAAA,EEiCM,cFjCN,CEiCqB,SFjCrB,EEiCgC,SFjChC,CAAA,CAAA,EEiC6C,gBFjC7C;;UEoCO,2HAIS,sBAAsB,WAAW,aAAa,sBACpE,WACA,oBAEM,iBAAiB,WAAW;mBACnB,iBAAiB;;ADrDnB,UCwDA,0BDxDc,CAAA,kBAAA,MAAA,EAAA,kBAAA,MAAA,EAAA,2BC2DF,wBD3DE,CC4D3B,SD5D2B,EC6D3B,SD7D2B,CAAA,GC8DzB,wBD9DyB,CC8DA,SD9DA,EC8DW,SD9DX,CAAA,CAAA,SC+DrB,mBD/DqB,CC+DD,SD/DC,EC+DU,SD/DV,CAAA,CAAA;EAGmB,MAAA,EAAA,EC6DtC,kBD7DsC;;;;iBERlC;;;;;;;;IHAC,SAAA,MAAA,EAAA,MAAqB;IAGrB,SAAA,cAAqB,CAAA,EGOoC,MHPpC,CAAA,MAAA,EAAA,OAAA,CAAA;EACb,CAAA;EAAW,SAAA,MAAA,EGOjB,uBHPiB,CGOO,SHPP,CAAA;EAA1B,SAAA,MAAA,EGQS,uBHRT,CGQiC,SHRjC,EGQ4C,SHR5C,CAAA;EAAc,SAAA,OAAA,EGSJ,wBHTI,CGSqB,SHTrB,EGSgC,SHThC,CAAA;EAEP,SAAA,cAAA,EAAsB,SGQH,0BHRG,CGQwB,SHRxB,EGQmC,SHRnC,CAAA,EAAA;CACb,CAAA,EAAA,IAAA"}
|
package/dist/execution.mjs
CHANGED
|
@@ -32,7 +32,7 @@ function instantiateExecutionStack(stack) {
|
|
|
32
32
|
return {
|
|
33
33
|
stack,
|
|
34
34
|
target: stack.target.create(),
|
|
35
|
-
adapter: stack.adapter.create(),
|
|
35
|
+
adapter: stack.adapter.create(stack),
|
|
36
36
|
driver,
|
|
37
37
|
extensionPacks: stack.extensionPacks.map((descriptor) => descriptor.create())
|
|
38
38
|
};
|
package/dist/execution.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution.mjs","names":[],"sources":["../src/execution-requirements.ts","../src/execution-stack.ts"],"sourcesContent":["import type {\n RuntimeAdapterDescriptor,\n RuntimeExtensionDescriptor,\n RuntimeFamilyDescriptor,\n RuntimeTargetDescriptor,\n} from './execution-descriptors';\nimport { checkContractComponentRequirements } from './framework-components';\n\nexport function assertRuntimeContractRequirementsSatisfied<\n TFamilyId extends string,\n TTargetId extends string,\n>({\n contract,\n family,\n target,\n adapter,\n extensionPacks,\n}: {\n readonly contract: { readonly target: string; readonly extensionPacks?: Record<string, unknown> };\n readonly family: RuntimeFamilyDescriptor<TFamilyId>;\n readonly target: RuntimeTargetDescriptor<TFamilyId, TTargetId>;\n readonly adapter: RuntimeAdapterDescriptor<TFamilyId, TTargetId>;\n readonly extensionPacks: readonly RuntimeExtensionDescriptor<TFamilyId, TTargetId>[];\n}): void {\n const providedComponentIds = new Set<string>([family.id, target.id, adapter.id]);\n for (const extension of extensionPacks) {\n providedComponentIds.add(extension.id);\n }\n\n const result = checkContractComponentRequirements({\n contract,\n expectedTargetId: target.targetId,\n providedComponentIds,\n });\n\n if (result.targetMismatch) {\n throw new Error(\n `Contract target '${result.targetMismatch.actual}' does not match runtime target descriptor '${result.targetMismatch.expected}'.`,\n );\n }\n\n for (const packId of result.missingExtensionPackIds) {\n throw new Error(\n `Contract requires extension pack '${packId}', but runtime descriptors do not provide a matching component.`,\n );\n }\n}\n","import type {\n RuntimeAdapterDescriptor,\n RuntimeDriverDescriptor,\n RuntimeExtensionDescriptor,\n RuntimeTargetDescriptor,\n} from './execution-descriptors';\nimport type {\n RuntimeAdapterInstance,\n RuntimeDriverInstance,\n RuntimeExtensionInstance,\n RuntimeTargetInstance,\n} from './execution-instances';\n\nexport interface ExecutionStack<\n TFamilyId extends string,\n TTargetId extends string,\n TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId> = RuntimeAdapterInstance<\n TFamilyId,\n TTargetId\n >,\n TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<\n TFamilyId,\n TTargetId\n >,\n TExtensionInstance extends RuntimeExtensionInstance<\n TFamilyId,\n TTargetId\n > = RuntimeExtensionInstance<TFamilyId, TTargetId>,\n> {\n readonly target: RuntimeTargetDescriptor<TFamilyId, TTargetId>;\n readonly adapter: RuntimeAdapterDescriptor<TFamilyId, TTargetId, TAdapterInstance>;\n readonly driver:\n | RuntimeDriverDescriptor<TFamilyId, TTargetId, unknown, TDriverInstance>\n | undefined;\n readonly extensionPacks: readonly RuntimeExtensionDescriptor<\n TFamilyId,\n TTargetId,\n TExtensionInstance\n >[];\n}\n\nexport interface ExecutionStackInstance<\n TFamilyId extends string,\n TTargetId extends string,\n TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId> = RuntimeAdapterInstance<\n TFamilyId,\n TTargetId\n >,\n TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<\n TFamilyId,\n TTargetId\n >,\n TExtensionInstance extends RuntimeExtensionInstance<\n TFamilyId,\n TTargetId\n > = RuntimeExtensionInstance<TFamilyId, TTargetId>,\n> {\n readonly stack: ExecutionStack<\n TFamilyId,\n TTargetId,\n TAdapterInstance,\n TDriverInstance,\n TExtensionInstance\n >;\n readonly target: RuntimeTargetInstance<TFamilyId, TTargetId>;\n readonly adapter: TAdapterInstance;\n readonly driver: TDriverInstance | undefined;\n readonly extensionPacks: readonly TExtensionInstance[];\n}\n\nexport function createExecutionStack<\n TFamilyId extends string,\n TTargetId extends string,\n TTargetInstance extends RuntimeTargetInstance<TFamilyId, TTargetId>,\n TTargetDescriptor extends RuntimeTargetDescriptor<TFamilyId, TTargetId, TTargetInstance>,\n TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId>,\n TAdapterDescriptor extends RuntimeAdapterDescriptor<TFamilyId, TTargetId, TAdapterInstance>,\n TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<\n TFamilyId,\n TTargetId\n >,\n TDriverDescriptor extends\n | RuntimeDriverDescriptor<TFamilyId, TTargetId, unknown, TDriverInstance>\n | undefined = undefined,\n TExtensionInstance extends RuntimeExtensionInstance<\n TFamilyId,\n TTargetId\n > = RuntimeExtensionInstance<TFamilyId, TTargetId>,\n TExtensionDescriptor extends RuntimeExtensionDescriptor<\n TFamilyId,\n TTargetId,\n TExtensionInstance\n > = never,\n>(input: {\n readonly target: TTargetDescriptor;\n readonly adapter: TAdapterDescriptor;\n readonly driver?: TDriverDescriptor | undefined;\n readonly extensionPacks?: readonly TExtensionDescriptor[] | undefined;\n}): ExecutionStack<TFamilyId, TTargetId, TAdapterInstance, TDriverInstance, TExtensionInstance> & {\n readonly target: TTargetDescriptor;\n readonly adapter: TAdapterDescriptor;\n readonly driver: TDriverDescriptor | undefined;\n readonly extensionPacks: readonly TExtensionDescriptor[];\n} {\n return {\n target: input.target,\n adapter: input.adapter,\n driver: input.driver,\n extensionPacks: input.extensionPacks ?? [],\n };\n}\n\nexport function instantiateExecutionStack<\n TFamilyId extends string,\n TTargetId extends string,\n TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId>,\n TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId>,\n TExtensionInstance extends RuntimeExtensionInstance<TFamilyId, TTargetId>,\n>(\n stack: ExecutionStack<\n TFamilyId,\n TTargetId,\n TAdapterInstance,\n TDriverInstance,\n TExtensionInstance\n >,\n): ExecutionStackInstance<\n TFamilyId,\n TTargetId,\n TAdapterInstance,\n TDriverInstance,\n TExtensionInstance\n> {\n const driver = stack.driver ? stack.driver.create() : undefined;\n\n return {\n stack,\n target: stack.target.create(),\n adapter: stack.adapter.create(),\n driver,\n extensionPacks: stack.extensionPacks.map((descriptor) => descriptor.create()),\n };\n}\n"],"mappings":";;;AAQA,SAAgB,2CAGd,EACA,UACA,QACA,QACA,SACA,kBAOO;CACP,MAAM,uBAAuB,IAAI,IAAY;EAAC,OAAO;EAAI,OAAO;EAAI,QAAQ;EAAG,CAAC;AAChF,MAAK,MAAM,aAAa,eACtB,sBAAqB,IAAI,UAAU,GAAG;CAGxC,MAAM,SAAS,mCAAmC;EAChD;EACA,kBAAkB,OAAO;EACzB;EACD,CAAC;AAEF,KAAI,OAAO,eACT,OAAM,IAAI,MACR,oBAAoB,OAAO,eAAe,OAAO,8CAA8C,OAAO,eAAe,SAAS,IAC/H;AAGH,MAAK,MAAM,UAAU,OAAO,wBAC1B,OAAM,IAAI,MACR,qCAAqC,OAAO,iEAC7C;;;;;AC0BL,SAAgB,qBAuBd,OAUA;AACA,QAAO;EACL,QAAQ,MAAM;EACd,SAAS,MAAM;EACf,QAAQ,MAAM;EACd,gBAAgB,MAAM,kBAAkB,EAAE;EAC3C;;AAGH,SAAgB,0BAOd,OAaA;CACA,MAAM,SAAS,MAAM,SAAS,MAAM,OAAO,QAAQ,GAAG;AAEtD,QAAO;EACL;EACA,QAAQ,MAAM,OAAO,QAAQ;EAC7B,SAAS,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"execution.mjs","names":[],"sources":["../src/execution-requirements.ts","../src/execution-stack.ts"],"sourcesContent":["import type {\n RuntimeAdapterDescriptor,\n RuntimeExtensionDescriptor,\n RuntimeFamilyDescriptor,\n RuntimeTargetDescriptor,\n} from './execution-descriptors';\nimport { checkContractComponentRequirements } from './framework-components';\n\nexport function assertRuntimeContractRequirementsSatisfied<\n TFamilyId extends string,\n TTargetId extends string,\n>({\n contract,\n family,\n target,\n adapter,\n extensionPacks,\n}: {\n readonly contract: { readonly target: string; readonly extensionPacks?: Record<string, unknown> };\n readonly family: RuntimeFamilyDescriptor<TFamilyId>;\n readonly target: RuntimeTargetDescriptor<TFamilyId, TTargetId>;\n readonly adapter: RuntimeAdapterDescriptor<TFamilyId, TTargetId>;\n readonly extensionPacks: readonly RuntimeExtensionDescriptor<TFamilyId, TTargetId>[];\n}): void {\n const providedComponentIds = new Set<string>([family.id, target.id, adapter.id]);\n for (const extension of extensionPacks) {\n providedComponentIds.add(extension.id);\n }\n\n const result = checkContractComponentRequirements({\n contract,\n expectedTargetId: target.targetId,\n providedComponentIds,\n });\n\n if (result.targetMismatch) {\n throw new Error(\n `Contract target '${result.targetMismatch.actual}' does not match runtime target descriptor '${result.targetMismatch.expected}'.`,\n );\n }\n\n for (const packId of result.missingExtensionPackIds) {\n throw new Error(\n `Contract requires extension pack '${packId}', but runtime descriptors do not provide a matching component.`,\n );\n }\n}\n","import type {\n RuntimeAdapterDescriptor,\n RuntimeDriverDescriptor,\n RuntimeExtensionDescriptor,\n RuntimeTargetDescriptor,\n} from './execution-descriptors';\nimport type {\n RuntimeAdapterInstance,\n RuntimeDriverInstance,\n RuntimeExtensionInstance,\n RuntimeTargetInstance,\n} from './execution-instances';\n\nexport interface ExecutionStack<\n TFamilyId extends string,\n TTargetId extends string,\n TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId> = RuntimeAdapterInstance<\n TFamilyId,\n TTargetId\n >,\n TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<\n TFamilyId,\n TTargetId\n >,\n TExtensionInstance extends RuntimeExtensionInstance<\n TFamilyId,\n TTargetId\n > = RuntimeExtensionInstance<TFamilyId, TTargetId>,\n> {\n readonly target: RuntimeTargetDescriptor<TFamilyId, TTargetId>;\n readonly adapter: RuntimeAdapterDescriptor<TFamilyId, TTargetId, TAdapterInstance>;\n readonly driver:\n | RuntimeDriverDescriptor<TFamilyId, TTargetId, unknown, TDriverInstance>\n | undefined;\n readonly extensionPacks: readonly RuntimeExtensionDescriptor<\n TFamilyId,\n TTargetId,\n TExtensionInstance\n >[];\n}\n\nexport interface ExecutionStackInstance<\n TFamilyId extends string,\n TTargetId extends string,\n TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId> = RuntimeAdapterInstance<\n TFamilyId,\n TTargetId\n >,\n TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<\n TFamilyId,\n TTargetId\n >,\n TExtensionInstance extends RuntimeExtensionInstance<\n TFamilyId,\n TTargetId\n > = RuntimeExtensionInstance<TFamilyId, TTargetId>,\n> {\n readonly stack: ExecutionStack<\n TFamilyId,\n TTargetId,\n TAdapterInstance,\n TDriverInstance,\n TExtensionInstance\n >;\n readonly target: RuntimeTargetInstance<TFamilyId, TTargetId>;\n readonly adapter: TAdapterInstance;\n readonly driver: TDriverInstance | undefined;\n readonly extensionPacks: readonly TExtensionInstance[];\n}\n\nexport function createExecutionStack<\n TFamilyId extends string,\n TTargetId extends string,\n TTargetInstance extends RuntimeTargetInstance<TFamilyId, TTargetId>,\n TTargetDescriptor extends RuntimeTargetDescriptor<TFamilyId, TTargetId, TTargetInstance>,\n TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId>,\n TAdapterDescriptor extends RuntimeAdapterDescriptor<TFamilyId, TTargetId, TAdapterInstance>,\n TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId> = RuntimeDriverInstance<\n TFamilyId,\n TTargetId\n >,\n TDriverDescriptor extends\n | RuntimeDriverDescriptor<TFamilyId, TTargetId, unknown, TDriverInstance>\n | undefined = undefined,\n TExtensionInstance extends RuntimeExtensionInstance<\n TFamilyId,\n TTargetId\n > = RuntimeExtensionInstance<TFamilyId, TTargetId>,\n TExtensionDescriptor extends RuntimeExtensionDescriptor<\n TFamilyId,\n TTargetId,\n TExtensionInstance\n > = never,\n>(input: {\n readonly target: TTargetDescriptor;\n readonly adapter: TAdapterDescriptor;\n readonly driver?: TDriverDescriptor | undefined;\n readonly extensionPacks?: readonly TExtensionDescriptor[] | undefined;\n}): ExecutionStack<TFamilyId, TTargetId, TAdapterInstance, TDriverInstance, TExtensionInstance> & {\n readonly target: TTargetDescriptor;\n readonly adapter: TAdapterDescriptor;\n readonly driver: TDriverDescriptor | undefined;\n readonly extensionPacks: readonly TExtensionDescriptor[];\n} {\n return {\n target: input.target,\n adapter: input.adapter,\n driver: input.driver,\n extensionPacks: input.extensionPacks ?? [],\n };\n}\n\nexport function instantiateExecutionStack<\n TFamilyId extends string,\n TTargetId extends string,\n TAdapterInstance extends RuntimeAdapterInstance<TFamilyId, TTargetId>,\n TDriverInstance extends RuntimeDriverInstance<TFamilyId, TTargetId>,\n TExtensionInstance extends RuntimeExtensionInstance<TFamilyId, TTargetId>,\n>(\n stack: ExecutionStack<\n TFamilyId,\n TTargetId,\n TAdapterInstance,\n TDriverInstance,\n TExtensionInstance\n >,\n): ExecutionStackInstance<\n TFamilyId,\n TTargetId,\n TAdapterInstance,\n TDriverInstance,\n TExtensionInstance\n> {\n const driver = stack.driver ? stack.driver.create() : undefined;\n\n return {\n stack,\n target: stack.target.create(),\n adapter: stack.adapter.create(stack),\n driver,\n extensionPacks: stack.extensionPacks.map((descriptor) => descriptor.create()),\n };\n}\n"],"mappings":";;;AAQA,SAAgB,2CAGd,EACA,UACA,QACA,QACA,SACA,kBAOO;CACP,MAAM,uBAAuB,IAAI,IAAY;EAAC,OAAO;EAAI,OAAO;EAAI,QAAQ;EAAG,CAAC;AAChF,MAAK,MAAM,aAAa,eACtB,sBAAqB,IAAI,UAAU,GAAG;CAGxC,MAAM,SAAS,mCAAmC;EAChD;EACA,kBAAkB,OAAO;EACzB;EACD,CAAC;AAEF,KAAI,OAAO,eACT,OAAM,IAAI,MACR,oBAAoB,OAAO,eAAe,OAAO,8CAA8C,OAAO,eAAe,SAAS,IAC/H;AAGH,MAAK,MAAM,UAAU,OAAO,wBAC1B,OAAM,IAAI,MACR,qCAAqC,OAAO,iEAC7C;;;;;AC0BL,SAAgB,qBAuBd,OAUA;AACA,QAAO;EACL,QAAQ,MAAM;EACd,SAAS,MAAM;EACf,QAAQ,MAAM;EACd,gBAAgB,MAAM,kBAAkB,EAAE;EAC3C;;AAGH,SAAgB,0BAOd,OAaA;CACA,MAAM,SAAS,MAAM,SAAS,MAAM,OAAO,QAAQ,GAAG;AAEtD,QAAO;EACL;EACA,QAAQ,MAAM,OAAO,QAAQ;EAC7B,SAAS,MAAM,QAAQ,OAAO,MAAM;EACpC;EACA,gBAAgB,MAAM,eAAe,KAAK,eAAe,WAAW,QAAQ,CAAC;EAC9E"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prisma-next/framework-components",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0-dev.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"description": "Framework component types, assembly logic, and stack creation for Prisma Next",
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@prisma-next/
|
|
9
|
-
"@prisma-next/
|
|
10
|
-
"@prisma-next/utils": "0.
|
|
8
|
+
"@prisma-next/contract": "0.5.0-dev.1",
|
|
9
|
+
"@prisma-next/operations": "0.5.0-dev.1",
|
|
10
|
+
"@prisma-next/utils": "0.5.0-dev.1"
|
|
11
11
|
},
|
|
12
12
|
"devDependencies": {
|
|
13
13
|
"tsdown": "0.18.4",
|
|
@@ -45,7 +45,14 @@ export interface ControlAdapterDescriptor<
|
|
|
45
45
|
TTargetId
|
|
46
46
|
>,
|
|
47
47
|
> extends AdapterDescriptor<TFamilyId, TTargetId> {
|
|
48
|
-
|
|
48
|
+
/**
|
|
49
|
+
* Construct a control adapter instance for this stack.
|
|
50
|
+
*
|
|
51
|
+
* The `stack` argument mirrors `ControlFamilyDescriptor.create(stack)`:
|
|
52
|
+
* adapter implementations may inspect `stack.codecLookup`, extension packs,
|
|
53
|
+
* or other assembled metadata when constructing the instance.
|
|
54
|
+
*/
|
|
55
|
+
create(stack: ControlStack<TFamilyId, TTargetId>): TAdapterInstance;
|
|
49
56
|
}
|
|
50
57
|
|
|
51
58
|
export interface ControlDriverDescriptor<
|
|
@@ -94,16 +94,6 @@ export interface MigrationOperationPolicy {
|
|
|
94
94
|
// Plan Types (Display-Oriented)
|
|
95
95
|
// ============================================================================
|
|
96
96
|
|
|
97
|
-
/**
|
|
98
|
-
* Minimal shape for operation descriptors at the framework level.
|
|
99
|
-
* Targets produce richer types; this captures just enough for the
|
|
100
|
-
* framework to scaffold migration.ts files and pass descriptors through.
|
|
101
|
-
*/
|
|
102
|
-
export interface OperationDescriptor {
|
|
103
|
-
readonly kind: string;
|
|
104
|
-
readonly [key: string]: unknown;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
97
|
/**
|
|
108
98
|
* A single migration operation for display purposes.
|
|
109
99
|
* Contains only the fields needed for CLI output (tree view, JSON envelope).
|
|
@@ -117,6 +107,24 @@ export interface MigrationPlanOperation {
|
|
|
117
107
|
readonly operationClass: MigrationOperationClass;
|
|
118
108
|
}
|
|
119
109
|
|
|
110
|
+
// ============================================================================
|
|
111
|
+
// Planner IR — Op Factory Calls
|
|
112
|
+
// ============================================================================
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Framework-level contract for a single factory call in a target's planner IR.
|
|
116
|
+
*
|
|
117
|
+
* @see ADR 195
|
|
118
|
+
*/
|
|
119
|
+
export interface OpFactoryCall {
|
|
120
|
+
/** The name of the factory that would produce this call's runtime op. */
|
|
121
|
+
readonly factoryName: string;
|
|
122
|
+
/** The operation's safety class (additive, widening, destructive, data). */
|
|
123
|
+
readonly operationClass: MigrationOperationClass;
|
|
124
|
+
/** Human-readable label for CLI output and diagnostics. */
|
|
125
|
+
readonly label: string;
|
|
126
|
+
}
|
|
127
|
+
|
|
120
128
|
// ============================================================================
|
|
121
129
|
// Plan Types (Display-Oriented)
|
|
122
130
|
// ============================================================================
|
|
@@ -153,14 +161,8 @@ export interface MigrationPlan {
|
|
|
153
161
|
* - hand the plan to the runner for execution (via `MigrationPlan`), and
|
|
154
162
|
* - materialize the plan as an editable source file via `renderTypeScript()`.
|
|
155
163
|
*
|
|
156
|
-
* User-authored migrations (
|
|
157
|
-
*
|
|
158
|
-
*
|
|
159
|
-
* Descriptor-flow targets (e.g. Postgres) that do not materialize their
|
|
160
|
-
* planner plans back to TypeScript provide a throwing stub so that
|
|
161
|
-
* `MigrationPlannerSuccessResult.plan` has a uniform type at the framework
|
|
162
|
-
* level. In practice the CLI only calls `renderTypeScript()` in the
|
|
163
|
-
* class-flow branch of `migration plan`.
|
|
164
|
+
* User-authored migrations (`Migration` subclasses) satisfy `MigrationPlan`
|
|
165
|
+
* but not this interface: they are already the source.
|
|
164
166
|
*/
|
|
165
167
|
export interface MigrationPlanWithAuthoringSurface extends MigrationPlan {
|
|
166
168
|
/**
|
|
@@ -191,10 +193,7 @@ export interface MigrationPlannerConflict {
|
|
|
191
193
|
* Successful planner result with the migration plan.
|
|
192
194
|
*
|
|
193
195
|
* The plan is typed as `MigrationPlanWithAuthoringSurface` so the CLI can
|
|
194
|
-
* uniformly ask any plan to render itself to TypeScript.
|
|
195
|
-
* planners do not support that (descriptor-flow targets like Postgres)
|
|
196
|
-
* supply a throwing `renderTypeScript()` stub — the CLI only calls it in
|
|
197
|
-
* the class-flow branch of `migration plan`.
|
|
196
|
+
* uniformly ask any plan to render itself to TypeScript.
|
|
198
197
|
*/
|
|
199
198
|
export interface MigrationPlannerSuccessResult {
|
|
200
199
|
readonly kind: 'success';
|
|
@@ -292,11 +291,19 @@ export interface MigrationPlanner<
|
|
|
292
291
|
readonly policy: MigrationOperationPolicy;
|
|
293
292
|
/**
|
|
294
293
|
* Storage hash of the "from" contract (the state the planner assumes the
|
|
295
|
-
* database starts at).
|
|
296
|
-
*
|
|
297
|
-
*
|
|
294
|
+
* database starts at). Planners use this to populate `describe()` on the
|
|
295
|
+
* produced plan so the rendered `migration.ts` has correct `from`/`to`
|
|
296
|
+
* metadata.
|
|
298
297
|
*/
|
|
299
298
|
readonly fromHash: string;
|
|
299
|
+
/**
|
|
300
|
+
* The "from" contract (the state the planner assumes the database starts
|
|
301
|
+
* at). Planners pass this to data-safety strategies so they can compare
|
|
302
|
+
* `from` and `to` column shapes (e.g. to detect unsafe type changes).
|
|
303
|
+
* `db update` / `db init` reconcile against the live schema and have no
|
|
304
|
+
* "from" contract; only `migration plan` provides one.
|
|
305
|
+
*/
|
|
306
|
+
readonly fromContract?: unknown;
|
|
300
307
|
/**
|
|
301
308
|
* Active framework components participating in this composition.
|
|
302
309
|
* Families/targets can interpret this list to derive family-specific metadata.
|
|
@@ -310,10 +317,9 @@ export interface MigrationPlanner<
|
|
|
310
317
|
/**
|
|
311
318
|
* Produce an empty migration with the target's authoring conventions.
|
|
312
319
|
*
|
|
313
|
-
* Used by `migration new` to scaffold a fresh `migration.ts
|
|
314
|
-
*
|
|
315
|
-
*
|
|
316
|
-
* yields a stub the user can edit.
|
|
320
|
+
* Used by `migration new` to scaffold a fresh `migration.ts`. The
|
|
321
|
+
* returned plan has no operations; its `renderTypeScript()` yields a
|
|
322
|
+
* stub the user can edit.
|
|
317
323
|
*/
|
|
318
324
|
emptyMigration(context: MigrationScaffoldContext): MigrationPlanWithAuthoringSurface;
|
|
319
325
|
}
|
|
@@ -389,92 +395,6 @@ export interface TargetMigrationsCapability<
|
|
|
389
395
|
contract: Contract | null,
|
|
390
396
|
frameworkComponents?: ReadonlyArray<TargetBoundComponentDescriptor<TFamilyId, TTargetId>>,
|
|
391
397
|
): unknown;
|
|
392
|
-
|
|
393
|
-
/**
|
|
394
|
-
* Plans a migration using the descriptor-based planner.
|
|
395
|
-
* Returns operation descriptors that the caller scaffolds into a
|
|
396
|
-
* `migration.ts` file. Whether the resulting migration can be emitted
|
|
397
|
-
* end-to-end is determined at emit time (via `placeholder()` errors
|
|
398
|
-
* thrown for unfilled slots), not by the planner.
|
|
399
|
-
*/
|
|
400
|
-
planWithDescriptors?(context: {
|
|
401
|
-
readonly fromContract: Contract | null;
|
|
402
|
-
readonly toContract: Contract;
|
|
403
|
-
readonly frameworkComponents?: ReadonlyArray<
|
|
404
|
-
TargetBoundComponentDescriptor<TFamilyId, TTargetId>
|
|
405
|
-
>;
|
|
406
|
-
}):
|
|
407
|
-
| {
|
|
408
|
-
readonly ok: true;
|
|
409
|
-
readonly descriptors: readonly OperationDescriptor[];
|
|
410
|
-
}
|
|
411
|
-
| {
|
|
412
|
-
readonly ok: false;
|
|
413
|
-
readonly conflicts: readonly MigrationPlannerConflict[];
|
|
414
|
-
};
|
|
415
|
-
|
|
416
|
-
/**
|
|
417
|
-
* Resolves operation descriptors into target-specific migration plan operations
|
|
418
|
-
* with SQL/DDL, prechecks, and postchecks. Called by `migration emit` to
|
|
419
|
-
* serialize migration.ts into ops.json.
|
|
420
|
-
*/
|
|
421
|
-
resolveDescriptors?(
|
|
422
|
-
descriptors: readonly OperationDescriptor[],
|
|
423
|
-
context: {
|
|
424
|
-
readonly fromContract: Contract | null;
|
|
425
|
-
readonly toContract: Contract;
|
|
426
|
-
readonly schemaName?: string;
|
|
427
|
-
readonly frameworkComponents?: ReadonlyArray<
|
|
428
|
-
TargetBoundComponentDescriptor<TFamilyId, TTargetId>
|
|
429
|
-
>;
|
|
430
|
-
},
|
|
431
|
-
): readonly MigrationPlanOperation[];
|
|
432
|
-
|
|
433
|
-
/**
|
|
434
|
-
* Optional: render a descriptor list back to a populated `migration.ts`
|
|
435
|
-
* source string.
|
|
436
|
-
*
|
|
437
|
-
* Descriptor-flow targets (e.g. Postgres) implement this so that
|
|
438
|
-
* `migration plan` can hand the user an editable authoring surface that
|
|
439
|
-
* already captures the planner's decisions. Class-flow targets do not
|
|
440
|
-
* implement it — their planner already returns a renderable plan via
|
|
441
|
-
* `MigrationPlannerSuccessResult.plan.renderTypeScript()`.
|
|
442
|
-
*/
|
|
443
|
-
renderDescriptorTypeScript?(
|
|
444
|
-
descriptors: readonly OperationDescriptor[],
|
|
445
|
-
context: MigrationScaffoldContext,
|
|
446
|
-
): string;
|
|
447
|
-
|
|
448
|
-
/**
|
|
449
|
-
* Optional: in-process emit capability for class-flow migration files.
|
|
450
|
-
*
|
|
451
|
-
* Targets that author `migration.ts` as an executable class (rather than
|
|
452
|
-
* an array of descriptors) implement `emit` to produce `ops.json` from
|
|
453
|
-
* the source file directly. The framework dispatches to `emit` whenever
|
|
454
|
-
* `resolveDescriptors` is not present on the target.
|
|
455
|
-
*
|
|
456
|
-
* The capability runs in the same Node process as the CLI:
|
|
457
|
-
* - The target dynamically imports `<dir>/migration.ts`, locates the
|
|
458
|
-
* authored class on the module's default export, and invokes whatever
|
|
459
|
-
* runtime machinery it needs to obtain the operations list.
|
|
460
|
-
* - Structured errors thrown during evaluation (notably
|
|
461
|
-
* `errorUnfilledPlaceholder` with code `PN-MIG-2001`) propagate as
|
|
462
|
-
* real JS exceptions so the CLI's normal error envelope can render
|
|
463
|
-
* them with full structured metadata. No subprocess is spawned.
|
|
464
|
-
* - The target is responsible for calling `writeMigrationOps(dir, ops)`
|
|
465
|
-
* so that `ops.json` ends up on disk before `emit` returns. The
|
|
466
|
-
* framework's `emitMigration` helper is the single owner of
|
|
467
|
-
* `attestMigration(dir)` — the target MUST NOT call
|
|
468
|
-
* `attestMigration` itself.
|
|
469
|
-
* - The returned `MigrationPlanOperation[]` is the display-oriented
|
|
470
|
-
* shape the CLI uses for output (id, label, operationClass).
|
|
471
|
-
*/
|
|
472
|
-
emit?(options: {
|
|
473
|
-
readonly dir: string;
|
|
474
|
-
readonly frameworkComponents: ReadonlyArray<
|
|
475
|
-
TargetBoundComponentDescriptor<TFamilyId, TTargetId>
|
|
476
|
-
>;
|
|
477
|
-
}): Promise<readonly MigrationPlanOperation[]>;
|
|
478
398
|
}
|
|
479
399
|
|
|
480
400
|
// ============================================================================
|
|
@@ -486,8 +406,7 @@ export interface TargetMigrationsCapability<
|
|
|
486
406
|
*
|
|
487
407
|
* Kept minimal: only the paths a target might need to compute relative imports
|
|
488
408
|
* (e.g. the contract `.d.ts` import for typed-contract builders). Passed to
|
|
489
|
-
* `MigrationPlanner.emptyMigration(context)
|
|
490
|
-
* `TargetMigrationsCapability.renderDescriptorTypeScript(descriptors, context)`.
|
|
409
|
+
* `MigrationPlanner.emptyMigration(context)`.
|
|
491
410
|
*/
|
|
492
411
|
export interface MigrationScaffoldContext {
|
|
493
412
|
/** Absolute path to the migration package directory. Used by targets to compute relative imports. */
|
|
@@ -495,9 +414,9 @@ export interface MigrationScaffoldContext {
|
|
|
495
414
|
/** Absolute path to the contract.json file, if one exists. Used by targets that emit typed-contract imports. */
|
|
496
415
|
readonly contractJsonPath?: string;
|
|
497
416
|
/**
|
|
498
|
-
* Storage hash of the "from" contract.
|
|
499
|
-
*
|
|
500
|
-
*
|
|
417
|
+
* Storage hash of the "from" contract. Targets use this to populate
|
|
418
|
+
* `describe()` on the rendered empty migration so that identity metadata
|
|
419
|
+
* is correctly populated.
|
|
501
420
|
*/
|
|
502
421
|
readonly fromHash: string;
|
|
503
422
|
/**
|
|
@@ -5,6 +5,7 @@ import type {
|
|
|
5
5
|
RuntimeFamilyInstance,
|
|
6
6
|
RuntimeTargetInstance,
|
|
7
7
|
} from './execution-instances';
|
|
8
|
+
import type { ExecutionStack } from './execution-stack';
|
|
8
9
|
import type {
|
|
9
10
|
AdapterDescriptor,
|
|
10
11
|
DriverDescriptor,
|
|
@@ -44,7 +45,14 @@ export interface RuntimeAdapterDescriptor<
|
|
|
44
45
|
TTargetId
|
|
45
46
|
>,
|
|
46
47
|
> extends AdapterDescriptor<TFamilyId, TTargetId> {
|
|
47
|
-
|
|
48
|
+
/**
|
|
49
|
+
* Construct a runtime adapter instance for this execution stack.
|
|
50
|
+
*
|
|
51
|
+
* Mirrors `ControlAdapterDescriptor.create(stack)` so that adapter
|
|
52
|
+
* implementations may inspect stack-assembled metadata (e.g. codecs
|
|
53
|
+
* contributed by extension packs) when constructing the instance.
|
|
54
|
+
*/
|
|
55
|
+
create(stack: ExecutionStack<TFamilyId, TTargetId>): TAdapterInstance;
|
|
48
56
|
}
|
|
49
57
|
|
|
50
58
|
export interface RuntimeDriverDescriptor<
|
package/src/execution-stack.ts
CHANGED
|
@@ -136,7 +136,7 @@ export function instantiateExecutionStack<
|
|
|
136
136
|
return {
|
|
137
137
|
stack,
|
|
138
138
|
target: stack.target.create(),
|
|
139
|
-
adapter: stack.adapter.create(),
|
|
139
|
+
adapter: stack.adapter.create(stack),
|
|
140
140
|
driver,
|
|
141
141
|
extensionPacks: stack.extensionPacks.map((descriptor) => descriptor.create()),
|
|
142
142
|
};
|
package/src/exports/control.ts
CHANGED