@orkestrel/scaffold 0.0.78 → 0.0.80
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/bin/main.js +54 -4
- package/dist/bin/main.js.map +1 -1
- package/dist/host/claude/agents/orkestrel.md +4 -4
- package/dist/host/claude/rules/workspace.md +2 -0
- package/dist/host/guides/probe.md +9 -5
- package/dist/host/guides/scaffold.md +30 -12
- package/dist/host/guides/test.md +443 -149
- package/dist/host/manifest.json +7 -7
- package/dist/host/tests/config.test.ts +18 -9
- package/dist/src/core/index.cjs +16 -12
- package/dist/src/core/index.cjs.map +1 -1
- package/dist/src/core/index.d.cts +1 -1
- package/dist/src/core/index.d.ts +1 -1
- package/dist/src/core/index.js +16 -12
- package/dist/src/core/index.js.map +1 -1
- package/package.json +8 -8
package/dist/host/manifest.json
CHANGED
|
@@ -490,7 +490,7 @@
|
|
|
490
490
|
"storage": "claude/agents/orkestrel.md",
|
|
491
491
|
"destination": ".claude/agents/orkestrel.md",
|
|
492
492
|
"executable": false,
|
|
493
|
-
"digest": "
|
|
493
|
+
"digest": "b5f9da510d1d5d387c8538cb5c3e7d9ad3ae24f01008a6d91b5bc4337f8df69e"
|
|
494
494
|
},
|
|
495
495
|
{
|
|
496
496
|
"storage": "claude/agents/planner.md",
|
|
@@ -592,7 +592,7 @@
|
|
|
592
592
|
"storage": "claude/rules/workspace.md",
|
|
593
593
|
"destination": ".claude/rules/workspace.md",
|
|
594
594
|
"executable": false,
|
|
595
|
-
"digest": "
|
|
595
|
+
"digest": "c41f15b048f534ceb0e0572eed29deaee288c53c69abf1a7e3bc93cee6b90740"
|
|
596
596
|
},
|
|
597
597
|
{
|
|
598
598
|
"storage": "claude/rules/writing.md",
|
|
@@ -982,7 +982,7 @@
|
|
|
982
982
|
"storage": "guides/probe.md",
|
|
983
983
|
"destination": "guides/probe.md",
|
|
984
984
|
"executable": false,
|
|
985
|
-
"digest": "
|
|
985
|
+
"digest": "8082bfb642ba16d64e06aba0e1c5d0774ecebd77443d500821e4482bb0916cbe"
|
|
986
986
|
},
|
|
987
987
|
{
|
|
988
988
|
"storage": "guides/process.md",
|
|
@@ -1036,7 +1036,7 @@
|
|
|
1036
1036
|
"storage": "guides/scaffold.md",
|
|
1037
1037
|
"destination": "guides/scaffold.md",
|
|
1038
1038
|
"executable": false,
|
|
1039
|
-
"digest": "
|
|
1039
|
+
"digest": "32b5b6284d7e1c92e692cf2b74c77b6b8ed8e38c20d29c7b23201b6b034dc268"
|
|
1040
1040
|
},
|
|
1041
1041
|
{
|
|
1042
1042
|
"storage": "guides/sea.md",
|
|
@@ -1090,7 +1090,7 @@
|
|
|
1090
1090
|
"storage": "guides/test.md",
|
|
1091
1091
|
"destination": "guides/test.md",
|
|
1092
1092
|
"executable": false,
|
|
1093
|
-
"digest": "
|
|
1093
|
+
"digest": "1a3bea6f17d3c54fd20e4350a76e89c8f1457f2ef1bc83e0b04775a3727af4cd"
|
|
1094
1094
|
},
|
|
1095
1095
|
{
|
|
1096
1096
|
"storage": "guides/timeout.md",
|
|
@@ -1162,7 +1162,7 @@
|
|
|
1162
1162
|
"storage": "tests/config.test.ts",
|
|
1163
1163
|
"destination": "tests/config.test.ts",
|
|
1164
1164
|
"executable": false,
|
|
1165
|
-
"digest": "
|
|
1165
|
+
"digest": "9a77213f81289f8a0b55df24d6a735371ac4eabb5557a3413004ab221b7d3169"
|
|
1166
1166
|
},
|
|
1167
1167
|
{
|
|
1168
1168
|
"storage": "tests/policy.test.ts",
|
|
@@ -2138,5 +2138,5 @@
|
|
|
2138
2138
|
]
|
|
2139
2139
|
}
|
|
2140
2140
|
],
|
|
2141
|
-
"digest": "
|
|
2141
|
+
"digest": "7e9a938815aea1bb7591441767c4e31aeee9b325f71dc9245cd041243ead1805"
|
|
2142
2142
|
}
|
|
@@ -2462,12 +2462,18 @@ describe('configuration helpers', () => {
|
|
|
2462
2462
|
'rolls one face into a single declaration and rewrites its core specifier',
|
|
2463
2463
|
async () => {
|
|
2464
2464
|
const scratch = createPolicyScratch({ prefix: 'orkestrel-config-rollup-' })
|
|
2465
|
-
// The hook's temporary declaration emit is proven removed
|
|
2466
|
-
//
|
|
2467
|
-
|
|
2468
|
-
|
|
2469
|
-
|
|
2465
|
+
// The hook's temporary declaration emit is proven removed from a host temporary
|
|
2466
|
+
// directory this case alone writes to. `os.tmpdir()` reads `TMPDIR`, `TMP`, and `TEMP`
|
|
2467
|
+
// when it is called, so pointing all three into the case's own scratch places every
|
|
2468
|
+
// `orkestrel-declarations-` directory these builds make there, and a build another
|
|
2469
|
+
// process runs meanwhile makes its own elsewhere.
|
|
2470
|
+
const temporary = join(scratch.path, 'temporary')
|
|
2471
|
+
mkdirSync(temporary)
|
|
2472
|
+
const variables = ['TMPDIR', 'TMP', 'TEMP']
|
|
2473
|
+
const inherited = variables.map((name) => [name, process.env[name]] as const)
|
|
2470
2474
|
try {
|
|
2475
|
+
for (const name of variables) process.env[name] = temporary
|
|
2476
|
+
expect(tmpdir()).toBe(temporary)
|
|
2471
2477
|
const workspace = scratch.path
|
|
2472
2478
|
const project = join(workspace, 'tsconfig.json')
|
|
2473
2479
|
const source = join(workspace, 'source', 'server', 'index.ts')
|
|
@@ -2551,10 +2557,9 @@ describe('configuration helpers', () => {
|
|
|
2551
2557
|
])
|
|
2552
2558
|
await Reflect.apply(close, undefined, [])
|
|
2553
2559
|
|
|
2554
|
-
|
|
2555
|
-
entry.startsWith('orkestrel-declarations-'),
|
|
2556
|
-
)
|
|
2557
|
-
expect(after.every((entry) => before.has(entry))).toBe(true)
|
|
2560
|
+
expect(
|
|
2561
|
+
readdirSync(temporary).filter((entry) => entry.startsWith('orkestrel-declarations-')),
|
|
2562
|
+
).toStrictEqual([])
|
|
2558
2563
|
|
|
2559
2564
|
// The face ships exactly one declaration: the emit's scratch tree leaves with it.
|
|
2560
2565
|
expect(globSync('**/*.d.ts', { cwd: rewritten })).toStrictEqual(['index.d.ts'])
|
|
@@ -2573,6 +2578,10 @@ describe('configuration helpers', () => {
|
|
|
2573
2578
|
expect(control).toContain('@src/core')
|
|
2574
2579
|
expect(control).not.toContain(`from '${name}'`)
|
|
2575
2580
|
} finally {
|
|
2581
|
+
for (const [name, value] of inherited) {
|
|
2582
|
+
if (value === undefined) Reflect.deleteProperty(process.env, name)
|
|
2583
|
+
else process.env[name] = value
|
|
2584
|
+
}
|
|
2576
2585
|
scratch.destroy()
|
|
2577
2586
|
}
|
|
2578
2587
|
},
|
package/dist/src/core/index.cjs
CHANGED
|
@@ -4,7 +4,7 @@ let _orkestrel_template = require("@orkestrel/template");
|
|
|
4
4
|
let _orkestrel_emitter = require("@orkestrel/emitter");
|
|
5
5
|
var package_default = {
|
|
6
6
|
name: "@orkestrel/scaffold",
|
|
7
|
-
version: "0.0.
|
|
7
|
+
version: "0.0.80",
|
|
8
8
|
description: "Scaffold workspaces with commands: new, audit, repair, catalog, and overwrite.",
|
|
9
9
|
keywords: [
|
|
10
10
|
"audit",
|
|
@@ -94,18 +94,18 @@ var package_default = {
|
|
|
94
94
|
"prepublishOnly": "npm run format:check && npm run lint:check && npm run check && npm run build && npm test && npm run test:distribution -- --mode release"
|
|
95
95
|
},
|
|
96
96
|
dependencies: {
|
|
97
|
-
"@orkestrel/console": "^0.0.
|
|
97
|
+
"@orkestrel/console": "^0.0.15",
|
|
98
98
|
"@orkestrel/contract": "^0.0.18",
|
|
99
|
-
"@orkestrel/emitter": "^0.0.
|
|
100
|
-
"@orkestrel/markdown": "^0.0.
|
|
101
|
-
"@orkestrel/process": "^0.0.
|
|
102
|
-
"@orkestrel/template": "^0.0.
|
|
99
|
+
"@orkestrel/emitter": "^0.0.11",
|
|
100
|
+
"@orkestrel/markdown": "^0.0.16",
|
|
101
|
+
"@orkestrel/process": "^0.0.14",
|
|
102
|
+
"@orkestrel/template": "^0.0.9"
|
|
103
103
|
},
|
|
104
104
|
devDependencies: {
|
|
105
105
|
"@microsoft/api-extractor": "^7.59.3",
|
|
106
106
|
"@orkestrel/guide": "^0.0.20",
|
|
107
|
-
"@orkestrel/html": "^0.0.
|
|
108
|
-
"@orkestrel/probe": "^0.0.
|
|
107
|
+
"@orkestrel/html": "^0.0.11",
|
|
108
|
+
"@orkestrel/probe": "^0.0.18",
|
|
109
109
|
"@orkestrel/test": "^0.0.24",
|
|
110
110
|
"@types/node": "^26.6.3",
|
|
111
111
|
"@vitest/browser-playwright": "^4.1.11",
|
|
@@ -1151,7 +1151,7 @@ export function appShowcase(override?: UserConfig): UserConfig {
|
|
|
1151
1151
|
name: { label: 'setup:browser', color: 'blue' },
|
|
1152
1152
|
include: ['tests/setupBrowser.test.ts'],
|
|
1153
1153
|
setupFiles: ['./tests/setup.ts', './tests/setupBrowser.ts'],
|
|
1154
|
-
browser: {
|
|
1154
|
+
{{global}} browser: {
|
|
1155
1155
|
enabled: true,
|
|
1156
1156
|
provider: playwright(browserOptions),
|
|
1157
1157
|
instances: [{ browser: 'chromium', headless: true }],
|
|
@@ -5332,6 +5332,7 @@ function blueprintToRootTsconfig(blueprint) {
|
|
|
5332
5332
|
function blueprintToRootVite(blueprint) {
|
|
5333
5333
|
const machinery = blueprintToMachinery(blueprint);
|
|
5334
5334
|
const publishes = blueprint.src.length > 0;
|
|
5335
|
+
const global = blueprint.global ? " globalSetup: ['./tests/setupGlobal.ts'],\n" : "";
|
|
5335
5336
|
const imports = [];
|
|
5336
5337
|
if (machinery.browser) imports.push("import { playwright } from '@vitest/browser-playwright'");
|
|
5337
5338
|
if (machinery.vue) imports.push("import vue from '@vitejs/plugin-vue'");
|
|
@@ -5353,7 +5354,7 @@ function blueprintToRootVite(blueprint) {
|
|
|
5353
5354
|
peers.some((peer) => id === peer || id.startsWith(peer + '/')),`,
|
|
5354
5355
|
output: core ? " output: { paths: { '@src/core': '../core/index.js' } }," : " output: {},",
|
|
5355
5356
|
exclude: core ? " exclude: ['tests/src/core/**/*.test.ts'],\n" : "",
|
|
5356
|
-
global
|
|
5357
|
+
global
|
|
5357
5358
|
}));
|
|
5358
5359
|
projects.push("srcBrowser");
|
|
5359
5360
|
}
|
|
@@ -5414,7 +5415,10 @@ function blueprintToRootVite(blueprint) {
|
|
|
5414
5415
|
projects.push("setup");
|
|
5415
5416
|
}
|
|
5416
5417
|
if (blueprint.setup.includes("browser")) {
|
|
5417
|
-
factories.push((0, _orkestrel_template.fillTemplate)(CONFIG_TEMPLATES.factories.browser, {
|
|
5418
|
+
factories.push((0, _orkestrel_template.fillTemplate)(CONFIG_TEMPLATES.factories.browser, {
|
|
5419
|
+
plugins: machinery.vue ? " plugins: [vue()],\n" : "",
|
|
5420
|
+
global
|
|
5421
|
+
}));
|
|
5418
5422
|
projects.push("setupBrowser");
|
|
5419
5423
|
}
|
|
5420
5424
|
if (blueprint.guides) {
|
|
@@ -5438,7 +5442,7 @@ function blueprintToRootVite(blueprint) {
|
|
|
5438
5442
|
projects.push("distribution");
|
|
5439
5443
|
}
|
|
5440
5444
|
if (blueprint.integration) {
|
|
5441
|
-
factories.push((0, _orkestrel_template.fillTemplate)(CONFIG_TEMPLATES.factories.integration, { global
|
|
5445
|
+
factories.push((0, _orkestrel_template.fillTemplate)(CONFIG_TEMPLATES.factories.integration, { global }));
|
|
5442
5446
|
projects.push("integration");
|
|
5443
5447
|
}
|
|
5444
5448
|
factories.push(CONFIG_TEMPLATES.factories.probe);
|