@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.
- package/README.md +11 -1
- package/dist/host/agents/skills/enterprise-bootstrap/SKILL.md +202 -175
- package/dist/host/agents/skills/enterprise-bootstrap/references/bootstrap-reference.md +347 -94
- package/dist/host/agents/skills/enterprise-bootstrap/references/color-modes.md +356 -0
- package/dist/host/agents/skills/enterprise-bootstrap/references/components.md +100 -45
- package/dist/host/agents/skills/enterprise-bootstrap/references/frontend-design.md +295 -101
- package/dist/host/agents/skills/enterprise-bootstrap/references/inputs.md +60 -41
- package/dist/host/agents/skills/enterprise-bootstrap/references/inspection.md +255 -132
- package/dist/host/agents/skills/enterprise-bootstrap/references/responsive-layout.md +237 -0
- package/dist/host/agents/skills/enterprise-bootstrap/references/utilities.md +111 -17
- package/dist/host/claude/agents/orkestrel.md +24 -24
- package/dist/host/claude/rules/workspace.md +2 -2
- package/dist/host/claude/settings.json +1 -1
- package/dist/host/claude/skills/enterprise-bootstrap/SKILL.md +11 -10
- package/dist/host/guides/scaffold.md +63 -22
- package/dist/host/manifest.json +26 -14
- package/dist/host/scripts/ollama.sh +322 -13
- package/dist/src/core/index.cjs +34 -13
- package/dist/src/core/index.cjs.map +1 -1
- package/dist/src/core/index.d.cts +31 -9
- package/dist/src/core/index.d.ts +31 -9
- package/dist/src/core/index.js +33 -14
- package/dist/src/core/index.js.map +1 -1
- package/package.json +5 -5
|
@@ -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
|
|
267
|
-
* starts
|
|
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
|
|
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.
|
|
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.
|
|
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.
|
|
2448
|
+
* matchesEngines('>=22.18.0') // true
|
|
2449
2449
|
* matchesEngines('>=20.0.0') // false
|
|
2450
|
-
* matchesEngines('22.
|
|
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.
|
|
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
|
|
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
|
*
|
package/dist/src/core/index.d.ts
CHANGED
|
@@ -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
|
|
267
|
-
* starts
|
|
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
|
|
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.
|
|
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.
|
|
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.
|
|
2448
|
+
* matchesEngines('>=22.18.0') // true
|
|
2449
2449
|
* matchesEngines('>=20.0.0') // false
|
|
2450
|
-
* matchesEngines('22.
|
|
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.
|
|
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
|
|
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
|
*
|
package/dist/src/core/index.js
CHANGED
|
@@ -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.
|
|
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.
|
|
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.
|
|
101
|
+
"@orkestrel/guide": "^0.0.18",
|
|
102
102
|
"@orkestrel/html": "^0.0.9",
|
|
103
|
-
"@orkestrel/probe": "^0.0.
|
|
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.
|
|
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
|
|
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.
|
|
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
|
|
939
|
-
// \`
|
|
940
|
-
//
|
|
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.
|
|
4307
|
+
* matchesEngines('>=22.18.0') // true
|
|
4290
4308
|
* matchesEngines('>=20.0.0') // false
|
|
4291
|
-
* matchesEngines('22.
|
|
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.
|
|
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
|