@orkestrel/scaffold 0.0.64 → 0.0.66

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.
@@ -263,8 +263,8 @@ export declare const BIN_ENTRY_PATH = "src/bin/main.ts";
263
263
  *
264
264
  * `service` says the workspace runs a live-service Vitest project over
265
265
  * `tests/service`, and it alone registers that project. `vendors` names each
266
- * external service the workspace drives and emits the provisioner skeleton that
267
- * starts them. Neither is derivable from the other: a workspace may declare
266
+ * external service the workspace drives and emits an inventory skeleton that
267
+ * starts nothing. Neither is derivable from the other: a workspace may declare
268
268
  * vendors before it writes a suite, and a suite may drive a service the skeleton
269
269
  * does not start.
270
270
  */
@@ -1284,7 +1284,7 @@ export declare class Compiler implements CompilerInterface {
1284
1284
  setup: "export const setup = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'setup', color: 'white' },\n\t\tinclude: ['tests/setup*.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t},\n})\n";
1285
1285
  guides: "export const guides = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'guides', color: 'green' },\n\t\tinclude: ['tests/guides.test.ts'],\n\t\texclude: ['tests/src/**/*.test.ts', 'tests/app/**/*.test.ts', 'tests/setup.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t},\n})\n";
1286
1286
  conformance: "// Where this package drifts from the official tooling it stays compatible with.\n// The subject is this package, so the proof is hermetic and stays in `npm test`.\nexport const conformance = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'conformance', color: 'magenta' },\n\t\tinclude: ['tests/conformance.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t},\n})\n";
1287
- service: "// The live external services this package drives. It starts nothing itself:\n// `scripts/service.sh` provisions, `tests/setupService.ts` proves readiness, and\n// the project stays out of `npm test` because a real service answers it.\nexport const service = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'service', color: 'red' },\n\t\tinclude: ['tests/service/**/*.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts', './tests/setupService.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t\ttestTimeout: 120_000,\n\t\thookTimeout: 120_000,\n\t\tfileParallelism: false,\n\t},\n})\n";
1287
+ service: "// The caller prepares the live external services before this project.\n// `tests/setupService.ts` verifies readiness, and the project stays out of `npm test`\n// because a real service answers it.\nexport const service = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'service', color: 'red' },\n\t\tinclude: ['tests/service/**/*.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts', './tests/setupService.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t\ttestTimeout: 120_000,\n\t\thookTimeout: 120_000,\n\t\tfileParallelism: false,\n\t},\n})\n";
1288
1288
  distribution: "export const distribution = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'distribution', color: 'cyan' },\n\t\tinclude: ['tests/distribution.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n\t\tenvironment: 'node',\n\t\ttestTimeout: 120_000,\n\t\thookTimeout: 120_000,\n\t\tfileParallelism: false,\n\t},\n})\n";
1289
1289
  probe: "// A workbench, not a proof. No gate selects this project. Run in test mode by the\n// `test:probe` script, it collects `tmp/probe/**/*.test.ts`. Run in benchmark mode by the\n// `test:bench` script, the same workbench also collects `tests/**/*.test.ts` for a `bench` block,\n// so a suite may carry a bench beside its ordinary tests without a second project. The mode\n// guard around each `bench` call keeps it out of test mode, so it never executes there.\nexport const probe = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'probe', color: 'black' },\n\t\tinclude: ['tmp/probe/**/*.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t\tfileParallelism: false,\n\t\tpool: 'threads',\n\t\tbenchmark: { include: ['tmp/probe/**/*.test.ts', 'tests/**/*.test.ts'] },\n\t},\n})\n";
1290
1290
  integration: "export const integration = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'integration', color: 'blue' },\n\t\tinclude: ['tests/integration.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n{{global}}\t\tenvironment: 'node',\n\t},\n})\n";
@@ -1396,7 +1396,7 @@ export declare class Compiler implements CompilerInterface {
1396
1396
  * })
1397
1397
  *
1398
1398
  * blueprint.version // '0.0.1'
1399
- * blueprint.engines // '>=22.12.0'
1399
+ * blueprint.engines // '>=22.18.0'
1400
1400
  * ```
1401
1401
  */
1402
1402
  export declare function createBlueprint(name: string, input?: Partial<Omit<Blueprint, 'name'>>): Blueprint;
@@ -1411,7 +1411,7 @@ export declare class Compiler implements CompilerInterface {
1411
1411
  export declare const DECLARATION_DEV_DEPENDENCIES: Readonly<Record<string, string>>;
1412
1412
 
1413
1413
  /** Names the `engines.node` range a workspace starts with. */
1414
- export declare const DEFAULT_ENGINES = ">=22.12.0";
1414
+ export declare const DEFAULT_ENGINES = ">=22.18.0";
1415
1415
 
1416
1416
  /** Names the version a workspace starts at. */
1417
1417
  export declare const DEFAULT_VERSION = "0.0.1";
@@ -2445,9 +2445,9 @@ export declare class Compiler implements CompilerInterface {
2445
2445
  * ```ts
2446
2446
  * import { matchesEngines } from '@orkestrel/scaffold'
2447
2447
  *
2448
- * matchesEngines('>=22.12.0') // true
2448
+ * matchesEngines('>=22.18.0') // true
2449
2449
  * matchesEngines('>=20.0.0') // false
2450
- * matchesEngines('22.12.0') // false
2450
+ * matchesEngines('22.18.0') // false
2451
2451
  * ```
2452
2452
  */
2453
2453
  export declare function matchesEngines(engines: string): boolean;
@@ -2604,7 +2604,10 @@ export declare class Compiler implements CompilerInterface {
2604
2604
  export declare const MAX_TOTAL_REGISTRY_BYTES = 100663296;
2605
2605
 
2606
2606
  /** Names the oldest Node version the generated toolchain supports. */
2607
- export declare const MINIMUM_NODE_VERSION = "22.12.0";
2607
+ export declare const MINIMUM_NODE_VERSION = "22.18.0";
2608
+
2609
+ /** Names the oldest npm version the generated toolchain supports. */
2610
+ export declare const MINIMUM_NPM_VERSION = "11.6.0";
2608
2611
 
2609
2612
  /**
2610
2613
  * Represents one dependency guide fetched from upstream, beside the local mirror it answers for.
@@ -3252,7 +3255,7 @@ export declare class Compiler implements CompilerInterface {
3252
3255
  */
3253
3256
  export declare function serializeTypeScriptString(value: string): string;
3254
3257
 
3255
- /** Names the provisioner skeleton a workspace with declared service vendors is given once. */
3258
+ /** Names the inventory skeleton a workspace with declared service vendors is given once. */
3256
3259
  export declare const SERVICE_SCRIPT_PATH = "scripts/service.sh";
3257
3260
 
3258
3261
  /** Names the live-service readiness module whose presence makes a workspace `service`. */
@@ -3408,6 +3411,25 @@ export declare class Compiler implements CompilerInterface {
3408
3411
  readonly showcase: boolean;
3409
3412
  }
3410
3413
 
3414
+ /**
3415
+ * Holds the `devEngines` record every generated manifest carries.
3416
+ *
3417
+ * @remarks
3418
+ * Every generated manifest names npm at the {@link MINIMUM_NPM_VERSION} floor with the `onFail`
3419
+ * key set to the `error` value, and no blueprint field varies that record. An npm at 10.9.0 or
3420
+ * later reads the `devEngines` record. Such an npm earlier than the floor refuses an install in a
3421
+ * generated workspace rather than resolving its dependency graph.
3422
+ * The neighbouring `DEFAULT_ENGINES` constant is the Node range, and a blueprint's `engines`
3423
+ * field does replace that one.
3424
+ */
3425
+ export declare const WORKSPACE_DEV_ENGINES: Readonly<{
3426
+ packageManager: Readonly<{
3427
+ name: "npm";
3428
+ version: ">=11.6.0";
3429
+ onFail: "error";
3430
+ }>;
3431
+ }>;
3432
+
3411
3433
  /**
3412
3434
  * Lists the vendored paths whose present bytes belong to each workspace, frozen.
3413
3435
  *
@@ -263,8 +263,8 @@ export declare const BIN_ENTRY_PATH = "src/bin/main.ts";
263
263
  *
264
264
  * `service` says the workspace runs a live-service Vitest project over
265
265
  * `tests/service`, and it alone registers that project. `vendors` names each
266
- * external service the workspace drives and emits the provisioner skeleton that
267
- * starts them. Neither is derivable from the other: a workspace may declare
266
+ * external service the workspace drives and emits an inventory skeleton that
267
+ * starts nothing. Neither is derivable from the other: a workspace may declare
268
268
  * vendors before it writes a suite, and a suite may drive a service the skeleton
269
269
  * does not start.
270
270
  */
@@ -1284,7 +1284,7 @@ export declare class Compiler implements CompilerInterface {
1284
1284
  setup: "export const setup = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'setup', color: 'white' },\n\t\tinclude: ['tests/setup*.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t},\n})\n";
1285
1285
  guides: "export const guides = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'guides', color: 'green' },\n\t\tinclude: ['tests/guides.test.ts'],\n\t\texclude: ['tests/src/**/*.test.ts', 'tests/app/**/*.test.ts', 'tests/setup.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t},\n})\n";
1286
1286
  conformance: "// Where this package drifts from the official tooling it stays compatible with.\n// The subject is this package, so the proof is hermetic and stays in `npm test`.\nexport const conformance = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'conformance', color: 'magenta' },\n\t\tinclude: ['tests/conformance.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t},\n})\n";
1287
- service: "// The live external services this package drives. It starts nothing itself:\n// `scripts/service.sh` provisions, `tests/setupService.ts` proves readiness, and\n// the project stays out of `npm test` because a real service answers it.\nexport const service = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'service', color: 'red' },\n\t\tinclude: ['tests/service/**/*.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts', './tests/setupService.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t\ttestTimeout: 120_000,\n\t\thookTimeout: 120_000,\n\t\tfileParallelism: false,\n\t},\n})\n";
1287
+ service: "// The caller prepares the live external services before this project.\n// `tests/setupService.ts` verifies readiness, and the project stays out of `npm test`\n// because a real service answers it.\nexport const service = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'service', color: 'red' },\n\t\tinclude: ['tests/service/**/*.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts', './tests/setupService.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t\ttestTimeout: 120_000,\n\t\thookTimeout: 120_000,\n\t\tfileParallelism: false,\n\t},\n})\n";
1288
1288
  distribution: "export const distribution = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'distribution', color: 'cyan' },\n\t\tinclude: ['tests/distribution.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n\t\tenvironment: 'node',\n\t\ttestTimeout: 120_000,\n\t\thookTimeout: 120_000,\n\t\tfileParallelism: false,\n\t},\n})\n";
1289
1289
  probe: "// A workbench, not a proof. No gate selects this project. Run in test mode by the\n// `test:probe` script, it collects `tmp/probe/**/*.test.ts`. Run in benchmark mode by the\n// `test:bench` script, the same workbench also collects `tests/**/*.test.ts` for a `bench` block,\n// so a suite may carry a bench beside its ordinary tests without a second project. The mode\n// guard around each `bench` call keeps it out of test mode, so it never executes there.\nexport const probe = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'probe', color: 'black' },\n\t\tinclude: ['tmp/probe/**/*.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n\t\tenvironment: 'node',\n\t\tbrowser: { enabled: false },\n\t\tfileParallelism: false,\n\t\tpool: 'threads',\n\t\tbenchmark: { include: ['tmp/probe/**/*.test.ts', 'tests/**/*.test.ts'] },\n\t},\n})\n";
1290
1290
  integration: "export const integration = (): UserConfig => ({\n\tresolve,\n\ttest: {\n\t\tname: { label: 'integration', color: 'blue' },\n\t\tinclude: ['tests/integration.test.ts'],\n\t\tsetupFiles: ['./tests/setup.ts'],\n{{global}}\t\tenvironment: 'node',\n\t},\n})\n";
@@ -1396,7 +1396,7 @@ export declare class Compiler implements CompilerInterface {
1396
1396
  * })
1397
1397
  *
1398
1398
  * blueprint.version // '0.0.1'
1399
- * blueprint.engines // '>=22.12.0'
1399
+ * blueprint.engines // '>=22.18.0'
1400
1400
  * ```
1401
1401
  */
1402
1402
  export declare function createBlueprint(name: string, input?: Partial<Omit<Blueprint, 'name'>>): Blueprint;
@@ -1411,7 +1411,7 @@ export declare class Compiler implements CompilerInterface {
1411
1411
  export declare const DECLARATION_DEV_DEPENDENCIES: Readonly<Record<string, string>>;
1412
1412
 
1413
1413
  /** Names the `engines.node` range a workspace starts with. */
1414
- export declare const DEFAULT_ENGINES = ">=22.12.0";
1414
+ export declare const DEFAULT_ENGINES = ">=22.18.0";
1415
1415
 
1416
1416
  /** Names the version a workspace starts at. */
1417
1417
  export declare const DEFAULT_VERSION = "0.0.1";
@@ -2445,9 +2445,9 @@ export declare class Compiler implements CompilerInterface {
2445
2445
  * ```ts
2446
2446
  * import { matchesEngines } from '@orkestrel/scaffold'
2447
2447
  *
2448
- * matchesEngines('>=22.12.0') // true
2448
+ * matchesEngines('>=22.18.0') // true
2449
2449
  * matchesEngines('>=20.0.0') // false
2450
- * matchesEngines('22.12.0') // false
2450
+ * matchesEngines('22.18.0') // false
2451
2451
  * ```
2452
2452
  */
2453
2453
  export declare function matchesEngines(engines: string): boolean;
@@ -2604,7 +2604,10 @@ export declare class Compiler implements CompilerInterface {
2604
2604
  export declare const MAX_TOTAL_REGISTRY_BYTES = 100663296;
2605
2605
 
2606
2606
  /** Names the oldest Node version the generated toolchain supports. */
2607
- export declare const MINIMUM_NODE_VERSION = "22.12.0";
2607
+ export declare const MINIMUM_NODE_VERSION = "22.18.0";
2608
+
2609
+ /** Names the oldest npm version the generated toolchain supports. */
2610
+ export declare const MINIMUM_NPM_VERSION = "11.6.0";
2608
2611
 
2609
2612
  /**
2610
2613
  * Represents one dependency guide fetched from upstream, beside the local mirror it answers for.
@@ -3252,7 +3255,7 @@ export declare class Compiler implements CompilerInterface {
3252
3255
  */
3253
3256
  export declare function serializeTypeScriptString(value: string): string;
3254
3257
 
3255
- /** Names the provisioner skeleton a workspace with declared service vendors is given once. */
3258
+ /** Names the inventory skeleton a workspace with declared service vendors is given once. */
3256
3259
  export declare const SERVICE_SCRIPT_PATH = "scripts/service.sh";
3257
3260
 
3258
3261
  /** Names the live-service readiness module whose presence makes a workspace `service`. */
@@ -3408,6 +3411,25 @@ export declare class Compiler implements CompilerInterface {
3408
3411
  readonly showcase: boolean;
3409
3412
  }
3410
3413
 
3414
+ /**
3415
+ * Holds the `devEngines` record every generated manifest carries.
3416
+ *
3417
+ * @remarks
3418
+ * Every generated manifest names npm at the {@link MINIMUM_NPM_VERSION} floor with the `onFail`
3419
+ * key set to the `error` value, and no blueprint field varies that record. An npm at 10.9.0 or
3420
+ * later reads the `devEngines` record. Such an npm earlier than the floor refuses an install in a
3421
+ * generated workspace rather than resolving its dependency graph.
3422
+ * The neighbouring `DEFAULT_ENGINES` constant is the Node range, and a blueprint's `engines`
3423
+ * field does replace that one.
3424
+ */
3425
+ export declare const WORKSPACE_DEV_ENGINES: Readonly<{
3426
+ packageManager: Readonly<{
3427
+ name: "npm";
3428
+ version: ">=11.6.0";
3429
+ onFail: "error";
3430
+ }>;
3431
+ }>;
3432
+
3411
3433
  /**
3412
3434
  * Lists the vendored paths whose present bytes belong to each workspace, frozen.
3413
3435
  *
@@ -3,7 +3,7 @@ import { fillTemplate } from "@orkestrel/template";
3
3
  import { Emitter } from "@orkestrel/emitter";
4
4
  var package_default = {
5
5
  name: "@orkestrel/scaffold",
6
- version: "0.0.64",
6
+ version: "0.0.66",
7
7
  description: "Scaffold workspaces with commands: new, audit, repair, catalog, and overwrite.",
8
8
  keywords: [
9
9
  "audit",
@@ -93,14 +93,14 @@ var package_default = {
93
93
  "@orkestrel/contract": "^0.0.17",
94
94
  "@orkestrel/emitter": "^0.0.10",
95
95
  "@orkestrel/markdown": "^0.0.14",
96
- "@orkestrel/process": "^0.0.11",
96
+ "@orkestrel/process": "^0.0.12",
97
97
  "@orkestrel/template": "^0.0.7"
98
98
  },
99
99
  devDependencies: {
100
100
  "@microsoft/api-extractor": "^7.59.0",
101
- "@orkestrel/guide": "^0.0.17",
101
+ "@orkestrel/guide": "^0.0.18",
102
102
  "@orkestrel/html": "^0.0.9",
103
- "@orkestrel/probe": "^0.0.12",
103
+ "@orkestrel/probe": "^0.0.13",
104
104
  "@orkestrel/test": "^0.0.14",
105
105
  "@types/node": "^26.5.0",
106
106
  "@vitest/browser-playwright": "^4.1.11",
@@ -111,7 +111,7 @@ var package_default = {
111
111
  "vite": "^8.2.2",
112
112
  "vitest": "^4.1.11"
113
113
  },
114
- engines: { "node": ">=22.12.0" }
114
+ engines: { "node": ">=22.18.0" }
115
115
  };
116
116
  //#endregion
117
117
  //#region src/core/constants.ts
@@ -383,7 +383,7 @@ var CATALOG_OPENING_MARKER = "<!-- orkestrel:catalog -->";
383
383
  * refused rather than rewritten.
384
384
  */
385
385
  var CATALOG_CLOSING_MARKER = "<!-- /orkestrel:catalog -->";
386
- /** Names the provisioner skeleton a workspace with declared service vendors is given once. */
386
+ /** Names the inventory skeleton a workspace with declared service vendors is given once. */
387
387
  var SERVICE_SCRIPT_PATH = "scripts/service.sh";
388
388
  /** Names the shared Vitest global-setup module whose presence makes a workspace `global`. */
389
389
  var GLOBAL_SETUP_PATH = "tests/setupGlobal.ts";
@@ -526,11 +526,29 @@ var MAX_MANIFEST_BYTES = 1048576;
526
526
  /** Caps the bytes retained across one whole plan or audit. */
527
527
  var MAX_TOTAL_ARTIFACT_BYTES = 104857600;
528
528
  /** Names the oldest Node version the generated toolchain supports. */
529
- var MINIMUM_NODE_VERSION = "22.12.0";
529
+ var MINIMUM_NODE_VERSION = "22.18.0";
530
+ /** Names the oldest npm version the generated toolchain supports. */
531
+ var MINIMUM_NPM_VERSION = "11.6.0";
530
532
  /** Names the version a workspace starts at. */
531
533
  var DEFAULT_VERSION = "0.0.1";
532
534
  /** Names the `engines.node` range a workspace starts with. */
533
535
  var DEFAULT_ENGINES = `>=${MINIMUM_NODE_VERSION}`;
536
+ /**
537
+ * Holds the `devEngines` record every generated manifest carries.
538
+ *
539
+ * @remarks
540
+ * Every generated manifest names npm at the {@link MINIMUM_NPM_VERSION} floor with the `onFail`
541
+ * key set to the `error` value, and no blueprint field varies that record. An npm at 10.9.0 or
542
+ * later reads the `devEngines` record. Such an npm earlier than the floor refuses an install in a
543
+ * generated workspace rather than resolving its dependency graph.
544
+ * The neighbouring `DEFAULT_ENGINES` constant is the Node range, and a blueprint's `engines`
545
+ * field does replace that one.
546
+ */
547
+ var WORKSPACE_DEV_ENGINES = Object.freeze({ packageManager: Object.freeze({
548
+ name: "npm",
549
+ version: `>=${MINIMUM_NPM_VERSION}`,
550
+ onFail: "error"
551
+ }) });
534
552
  /** Holds the tooling versions scaffold and every generated workspace share. */
535
553
  var BASE_DEV_DEPENDENCIES = Object.freeze({
536
554
  "@orkestrel/guide": package_default.devDependencies["@orkestrel/guide"],
@@ -935,9 +953,9 @@ export const conformance = (): UserConfig => ({
935
953
  },
936
954
  })
937
955
  `,
938
- service: `// The live external services this package drives. It starts nothing itself:
939
- // \`scripts/service.sh\` provisions, \`tests/setupService.ts\` proves readiness, and
940
- // the project stays out of \`npm test\` because a real service answers it.
956
+ service: `// The caller prepares the live external services before this project.
957
+ // \`tests/setupService.ts\` verifies readiness, and the project stays out of \`npm test\`
958
+ // because a real service answers it.
941
959
  export const service = (): UserConfig => ({
942
960
  resolve,
943
961
  test: {
@@ -4286,9 +4304,9 @@ function matchesRange(range, latest) {
4286
4304
  * ```ts
4287
4305
  * import { matchesEngines } from '@orkestrel/scaffold'
4288
4306
  *
4289
- * matchesEngines('>=22.12.0') // true
4307
+ * matchesEngines('>=22.18.0') // true
4290
4308
  * matchesEngines('>=20.0.0') // false
4291
- * matchesEngines('22.12.0') // false
4309
+ * matchesEngines('22.18.0') // false
4292
4310
  * ```
4293
4311
  */
4294
4312
  function matchesEngines(engines) {
@@ -4837,6 +4855,7 @@ function blueprintToManifest(blueprint) {
4837
4855
  devDependencies: blueprintToDevDependencies(blueprint),
4838
4856
  ...Object.keys(peerDependencies).length > 0 ? { peerDependencies } : {},
4839
4857
  ...Object.keys(peerDependenciesMeta).length > 0 ? { peerDependenciesMeta } : {},
4858
+ devEngines: WORKSPACE_DEV_ENGINES,
4840
4859
  engines: { node: blueprint.engines }
4841
4860
  };
4842
4861
  return `${JSON.stringify(manifest, void 0, " ")}\n`;
@@ -6580,7 +6599,7 @@ function overridesToQuestions(overrides, artifacts) {
6580
6599
  * })
6581
6600
  *
6582
6601
  * blueprint.version // '0.0.1'
6583
- * blueprint.engines // '>=22.12.0'
6602
+ * blueprint.engines // '>=22.18.0'
6584
6603
  * ```
6585
6604
  */
6586
6605
  function createBlueprint(name, input) {
@@ -6913,6 +6932,6 @@ var Compiler = class {
6913
6932
  }
6914
6933
  };
6915
6934
  //#endregion
6916
- export { APP_BROWSER_DEV_DEPENDENCIES, APP_DEV_DEPENDENCIES, APP_MATRIX, APP_SERVER_DEV_DEPENDENCIES, ARTIFACT_TEMPLATES, BASE_DEV_DEPENDENCIES, BIN_CONFIGS, BIN_ENTRY_PATH, CANON_PATHS, CATALOG_AGENT_PATH, CATALOG_CLOSING_MARKER, CATALOG_OPENING_MARKER, CONFIG_TEMPLATES, CONFORMANCE_TEST_PATH, CONTROL_CHARACTER_PATTERN, Compiler, DECLARATION_DEV_DEPENDENCIES, DEFAULT_ENGINES, DEFAULT_VERSION, DEPENDENCY_NAME_PATTERN, DISTRIBUTION_TEST_PATH, ENGINES_PATTERN, ENVIRONMENTS, EXECUTABLE_PATHS, EXTRA_RANGE_PATTERN, FLOOR_RANGE_PATTERN, FOREIGN_NAME_PATTERN, GLOBAL_SETUP_PATH, GROUPS, GUIDES_TEST_PATH, HEX_PATTERN, HOST_INVENTORY_PATH, HOST_PATHS, INTEGRATION_TEST_PATH, INVALID_PATH_CHARACTER_PATTERN, MANIFEST_PATH, MAX_ARTIFACT_BYTES, MAX_ARTIFACT_HEX_LENGTH, MAX_AUDIT_FINDINGS, MAX_COLLECTION_ITEMS, MAX_DEPENDENCY_NAME_LENGTH, MAX_MANIFEST_BYTES, MAX_NAME_LENGTH, MAX_PATH_LENGTH, MAX_RANGE_LENGTH, MAX_REGISTRY_BYTES, MAX_SCRIPT_LENGTH, MAX_TOTAL_ARTIFACT_BYTES, MAX_TOTAL_REGISTRY_BYTES, MINIMUM_NODE_VERSION, NAME_PATTERN, ORCHESTRATION_PATH_NAMES, ORCHESTRATION_PATH_PREFIXES, ORKESTREL_RANGE_PATTERN, PRINT_WIDTH, RELEASE_PROOF_COMMAND, SERVICE_SCRIPT_PATH, SERVICE_SETUP_PATH, SERVICE_TEST_INCLUDE, SHOWCASE_CONFIG_PATH, SHOWCASE_DEV_DEPENDENCIES, SOURCE_BROWSER_DEV_DEPENDENCIES, SRC_MATRIX, ScaffoldError, TAB_WIDTH, VERSION_PATTERN, WORKSPACE_OWNED_PATHS, applyOverrides, artifactToFinding, artifactToHex, artifactsToQuestions, blueprintToConfigArtifacts, blueprintToDevDependencies, blueprintToDocumentArtifacts, blueprintToGuideArtifacts, blueprintToHostArtifacts, blueprintToMachinery, blueprintToManifest, blueprintToOrchestrationArtifacts, blueprintToQuestions, blueprintToRootTsconfig, blueprintToRootVite, blueprintToScripts, blueprintToSourceArtifacts, blueprintToTestArtifacts, blueprintToWritableScripts, bytesToHex, catalogToLayers, cloneValue, compareVersions, computeBytes, computeHash, contentToHex, createBlueprint, dependenciesToQuestions, extractRangeMajor, extractVersion, inferDrift, inferGroup, isArtifact, isAudit, isBlueprint, isCanonPath, isCatalogEntry, isCollection, isCompilerHooks, isCompilerOptions, isContent, isDeferredPath, isDependency, isDependencyName, isEnvironment, isFinding, isFloorPath, isGroup, isGroups, isHex, isManifestScript, isMirror, isOverride, isPath, isPlan, isQuestion, isRetainedPath, isScaffoldError, isSnapshot, manifestToDependencies, manifestToName, matchesDriftReachability, matchesEngines, matchesOrchestrationPath, matchesPrintWidth, matchesRange, nameToGuide, overridesToQuestions, parseBlueprint, parseCompilerOptions, parseGroups, parseSnapshot, pathToCondition, planToFindings, planToHash, planToSummary, replaceManifestRanges, replaceManifestScripts, replacePlanRanges, selectGroups, selectHostPaths, serializeTypeScriptString, srcToEntry, srcToExports, srcToRoot };
6935
+ export { APP_BROWSER_DEV_DEPENDENCIES, APP_DEV_DEPENDENCIES, APP_MATRIX, APP_SERVER_DEV_DEPENDENCIES, ARTIFACT_TEMPLATES, BASE_DEV_DEPENDENCIES, BIN_CONFIGS, BIN_ENTRY_PATH, CANON_PATHS, CATALOG_AGENT_PATH, CATALOG_CLOSING_MARKER, CATALOG_OPENING_MARKER, CONFIG_TEMPLATES, CONFORMANCE_TEST_PATH, CONTROL_CHARACTER_PATTERN, Compiler, DECLARATION_DEV_DEPENDENCIES, DEFAULT_ENGINES, DEFAULT_VERSION, DEPENDENCY_NAME_PATTERN, DISTRIBUTION_TEST_PATH, ENGINES_PATTERN, ENVIRONMENTS, EXECUTABLE_PATHS, EXTRA_RANGE_PATTERN, FLOOR_RANGE_PATTERN, FOREIGN_NAME_PATTERN, GLOBAL_SETUP_PATH, GROUPS, GUIDES_TEST_PATH, HEX_PATTERN, HOST_INVENTORY_PATH, HOST_PATHS, INTEGRATION_TEST_PATH, INVALID_PATH_CHARACTER_PATTERN, MANIFEST_PATH, MAX_ARTIFACT_BYTES, MAX_ARTIFACT_HEX_LENGTH, MAX_AUDIT_FINDINGS, MAX_COLLECTION_ITEMS, MAX_DEPENDENCY_NAME_LENGTH, MAX_MANIFEST_BYTES, MAX_NAME_LENGTH, MAX_PATH_LENGTH, MAX_RANGE_LENGTH, MAX_REGISTRY_BYTES, MAX_SCRIPT_LENGTH, MAX_TOTAL_ARTIFACT_BYTES, MAX_TOTAL_REGISTRY_BYTES, MINIMUM_NODE_VERSION, MINIMUM_NPM_VERSION, NAME_PATTERN, ORCHESTRATION_PATH_NAMES, ORCHESTRATION_PATH_PREFIXES, ORKESTREL_RANGE_PATTERN, PRINT_WIDTH, RELEASE_PROOF_COMMAND, SERVICE_SCRIPT_PATH, SERVICE_SETUP_PATH, SERVICE_TEST_INCLUDE, SHOWCASE_CONFIG_PATH, SHOWCASE_DEV_DEPENDENCIES, SOURCE_BROWSER_DEV_DEPENDENCIES, SRC_MATRIX, ScaffoldError, TAB_WIDTH, VERSION_PATTERN, WORKSPACE_DEV_ENGINES, WORKSPACE_OWNED_PATHS, applyOverrides, artifactToFinding, artifactToHex, artifactsToQuestions, blueprintToConfigArtifacts, blueprintToDevDependencies, blueprintToDocumentArtifacts, blueprintToGuideArtifacts, blueprintToHostArtifacts, blueprintToMachinery, blueprintToManifest, blueprintToOrchestrationArtifacts, blueprintToQuestions, blueprintToRootTsconfig, blueprintToRootVite, blueprintToScripts, blueprintToSourceArtifacts, blueprintToTestArtifacts, blueprintToWritableScripts, bytesToHex, catalogToLayers, cloneValue, compareVersions, computeBytes, computeHash, contentToHex, createBlueprint, dependenciesToQuestions, extractRangeMajor, extractVersion, inferDrift, inferGroup, isArtifact, isAudit, isBlueprint, isCanonPath, isCatalogEntry, isCollection, isCompilerHooks, isCompilerOptions, isContent, isDeferredPath, isDependency, isDependencyName, isEnvironment, isFinding, isFloorPath, isGroup, isGroups, isHex, isManifestScript, isMirror, isOverride, isPath, isPlan, isQuestion, isRetainedPath, isScaffoldError, isSnapshot, manifestToDependencies, manifestToName, matchesDriftReachability, matchesEngines, matchesOrchestrationPath, matchesPrintWidth, matchesRange, nameToGuide, overridesToQuestions, parseBlueprint, parseCompilerOptions, parseGroups, parseSnapshot, pathToCondition, planToFindings, planToHash, planToSummary, replaceManifestRanges, replaceManifestScripts, replacePlanRanges, selectGroups, selectHostPaths, serializeTypeScriptString, srcToEntry, srcToExports, srcToRoot };
6917
6936
 
6918
6937
  //# sourceMappingURL=index.js.map