@orkestrel/probe 0.0.27 → 0.0.28
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/src/core/index.cjs +5 -5
- package/dist/src/core/index.cjs.map +1 -1
- package/dist/src/core/index.d.cts +5 -5
- package/dist/src/core/index.d.ts +5 -5
- package/dist/src/core/index.js +5 -5
- package/dist/src/core/index.js.map +1 -1
- package/dist/src/server/index.cjs +28 -20
- package/dist/src/server/index.cjs.map +1 -1
- package/dist/src/server/index.d.cts +25 -20
- package/dist/src/server/index.d.ts +25 -20
- package/dist/src/server/index.js +28 -20
- package/dist/src/server/index.js.map +1 -1
- package/package.json +2 -2
|
@@ -55,8 +55,12 @@ export declare function captureListeners(emitter: EventEmitter, events: readonly
|
|
|
55
55
|
* Collects every regular file a target workspace holds, skipping the trees no inspection reads.
|
|
56
56
|
*
|
|
57
57
|
* @remarks
|
|
58
|
-
* Skips a directory named `.git`, `dist`, or `node_modules` at any depth
|
|
59
|
-
*
|
|
58
|
+
* Skips a directory named `.git`, `dist`, or `node_modules` at any depth. Of the workspace-root
|
|
59
|
+
* `tmp` directory it walks only `tmp/probes`: the scaffold tmp layout holds the runtime probes there
|
|
60
|
+
* and nothing else an inspection reads, so a consumer's ignored data under `tmp/` is never read or
|
|
61
|
+
* copied. The match is the lowercase `tmp` spelling exactly, and a `tmp` directory below the root is
|
|
62
|
+
* walked like any other. The directory {@link TYPE_MIRROR} names is skipped as well, so this
|
|
63
|
+
* package's own mirror stays out of the walk if it ever moves outside `tmp`. A
|
|
60
64
|
* directory this host cannot list is skipped rather than raised, so one unreadable directory in a
|
|
61
65
|
* consumer's tree is not a reason to refuse the whole walk. A symbolic link is not carried, whether
|
|
62
66
|
* it names a file or a directory, so a file reached only through one is absent from the result; a
|
|
@@ -220,12 +224,12 @@ export declare function filterUniqueIssues(issues: readonly Issue[]): readonly I
|
|
|
220
224
|
*
|
|
221
225
|
* @remarks
|
|
222
226
|
* The published claim schema constrains `Draft.path` to a non-empty string and nothing else, while
|
|
223
|
-
* `isDraft` also refuses an absolute path and one that
|
|
224
|
-
* the whole of the difference between the advertised contract and the enforced one, so a
|
|
225
|
-
* refused after satisfying the schema is refused here and nowhere else. The whole input must
|
|
226
|
-
* satisfy that schema. Each draft is then tested with `isDraft` itself rather than with a
|
|
227
|
-
* copy of its rule. Reports nothing for a value carrying no draft member, including one
|
|
228
|
-
* a member this contract does not declare.
|
|
227
|
+
* `isDraft` also refuses an absolute path and one that resolves outside the workspace. That one
|
|
228
|
+
* member is the whole of the difference between the advertised contract and the enforced one, so a
|
|
229
|
+
* caller refused after satisfying the schema is refused here and nowhere else. The whole input must
|
|
230
|
+
* first satisfy that schema. Each draft is then tested with `isDraft` itself rather than with a
|
|
231
|
+
* second copy of its rule. Reports nothing for a value carrying no draft member, including one
|
|
232
|
+
* refused for a member this contract does not declare.
|
|
229
233
|
*
|
|
230
234
|
* This function lives in the server helpers rather than in core: core's leaf pair, `helpers.ts` and
|
|
231
235
|
* `validators.ts`, may not consume the shapes module this function reads `CLAIM_SHAPE` from, and
|
|
@@ -582,10 +586,11 @@ export declare function normalizePath(path: string): string;
|
|
|
582
586
|
* `tsc --showConfig` spells a path relative to the project file, so a printed record carries an
|
|
583
587
|
* absolute path only where a project itself declares one. Rewriting a contained absolute path to
|
|
584
588
|
* its relative form keeps one commit checked out at two roots reading to one digest. A path that
|
|
585
|
-
*
|
|
586
|
-
* tree by a relative spelling. Key order is the compiler's own and it differs between
|
|
587
|
-
* majors, so sorting removes a difference that means nothing. A `__proto__` key is
|
|
588
|
-
* the earlier assignment-built record dropped it, so a digest stays the same across
|
|
589
|
+
* resolves outside the workspace is left as it stands, because rewriting it would name a file
|
|
590
|
+
* outside the tree by a relative spelling. Key order is the compiler's own and it differs between
|
|
591
|
+
* the supported majors, so sorting removes a difference that means nothing. A `__proto__` key is
|
|
592
|
+
* dropped, as the earlier assignment-built record dropped it, so a digest stays the same across
|
|
593
|
+
* releases.
|
|
589
594
|
*
|
|
590
595
|
* @param workspace - The target workspace root
|
|
591
596
|
* @param value - The value to rewrite
|
|
@@ -1279,10 +1284,10 @@ export declare function resolveWorkspaceModule(workspace: string, specifier: str
|
|
|
1279
1284
|
* Vitest service after 64 specifications rather than deleting from each map that service owns. Any
|
|
1280
1285
|
* bound holds the retention flat, because the replacement releases everything the instance held,
|
|
1281
1286
|
* and 64 is the value chosen. The inspection that crosses the bound pays the replacement
|
|
1282
|
-
* synchronously: it closes the resident service and warms a
|
|
1283
|
-
* over this package's own workspace on the host `guides/probe.md` § Cost names, two
|
|
1284
|
-
* inspections put that one at 480 ms and 269 ms against median inspections of 156 ms and
|
|
1285
|
-
* budget one call in 64 at 110 ms to 330 ms above the rest.
|
|
1287
|
+
* synchronously: it closes the resident service and warms a fresh service before it runs. On
|
|
1288
|
+
* 2026-08-20, over this package's own workspace on the host `guides/probe.md` § Cost names, two
|
|
1289
|
+
* runs of 66 inspections put that one at 480 ms and 269 ms against median inspections of 156 ms and
|
|
1290
|
+
* 155 ms, so budget one call in 64 at 110 ms to 330 ms above the rest.
|
|
1286
1291
|
*
|
|
1287
1292
|
* Every issue this stage emits names its party, and the stage emits an issue for every party
|
|
1288
1293
|
* `Party` declares. An `origin: 'claimant'` issue is a failure Vitest reported about the candidate.
|
|
@@ -1528,8 +1533,8 @@ export declare class TypeStage implements TypeStageInterface {
|
|
|
1528
1533
|
*
|
|
1529
1534
|
* @param project - The workspace-relative TypeScript project to resolve
|
|
1530
1535
|
* @returns The resolved workspace-relative path and the digest of its compiler options
|
|
1531
|
-
* @throws When the project
|
|
1532
|
-
* stage has already been destroyed
|
|
1536
|
+
* @throws When the project resolves outside the workspace, when the compiler refuses it, or when
|
|
1537
|
+
* the stage has already been destroyed
|
|
1533
1538
|
*/
|
|
1534
1539
|
resolve(project: string): Promise<Project>;
|
|
1535
1540
|
/**
|
|
@@ -1585,8 +1590,8 @@ export declare interface TypeStageInterface extends StageInterface {
|
|
|
1585
1590
|
*
|
|
1586
1591
|
* @param project - The workspace-relative TypeScript project to resolve
|
|
1587
1592
|
* @returns The resolved workspace-relative path and the digest of its compiler options
|
|
1588
|
-
* @throws When the project
|
|
1589
|
-
* stage has already been destroyed
|
|
1593
|
+
* @throws When the project resolves outside the workspace, when the compiler refuses it, or when
|
|
1594
|
+
* the stage has already been destroyed
|
|
1590
1595
|
*
|
|
1591
1596
|
* @example
|
|
1592
1597
|
* ```ts
|
|
@@ -55,8 +55,12 @@ export declare function captureListeners(emitter: EventEmitter, events: readonly
|
|
|
55
55
|
* Collects every regular file a target workspace holds, skipping the trees no inspection reads.
|
|
56
56
|
*
|
|
57
57
|
* @remarks
|
|
58
|
-
* Skips a directory named `.git`, `dist`, or `node_modules` at any depth
|
|
59
|
-
*
|
|
58
|
+
* Skips a directory named `.git`, `dist`, or `node_modules` at any depth. Of the workspace-root
|
|
59
|
+
* `tmp` directory it walks only `tmp/probes`: the scaffold tmp layout holds the runtime probes there
|
|
60
|
+
* and nothing else an inspection reads, so a consumer's ignored data under `tmp/` is never read or
|
|
61
|
+
* copied. The match is the lowercase `tmp` spelling exactly, and a `tmp` directory below the root is
|
|
62
|
+
* walked like any other. The directory {@link TYPE_MIRROR} names is skipped as well, so this
|
|
63
|
+
* package's own mirror stays out of the walk if it ever moves outside `tmp`. A
|
|
60
64
|
* directory this host cannot list is skipped rather than raised, so one unreadable directory in a
|
|
61
65
|
* consumer's tree is not a reason to refuse the whole walk. A symbolic link is not carried, whether
|
|
62
66
|
* it names a file or a directory, so a file reached only through one is absent from the result; a
|
|
@@ -220,12 +224,12 @@ export declare function filterUniqueIssues(issues: readonly Issue[]): readonly I
|
|
|
220
224
|
*
|
|
221
225
|
* @remarks
|
|
222
226
|
* The published claim schema constrains `Draft.path` to a non-empty string and nothing else, while
|
|
223
|
-
* `isDraft` also refuses an absolute path and one that
|
|
224
|
-
* the whole of the difference between the advertised contract and the enforced one, so a
|
|
225
|
-
* refused after satisfying the schema is refused here and nowhere else. The whole input must
|
|
226
|
-
* satisfy that schema. Each draft is then tested with `isDraft` itself rather than with a
|
|
227
|
-
* copy of its rule. Reports nothing for a value carrying no draft member, including one
|
|
228
|
-
* a member this contract does not declare.
|
|
227
|
+
* `isDraft` also refuses an absolute path and one that resolves outside the workspace. That one
|
|
228
|
+
* member is the whole of the difference between the advertised contract and the enforced one, so a
|
|
229
|
+
* caller refused after satisfying the schema is refused here and nowhere else. The whole input must
|
|
230
|
+
* first satisfy that schema. Each draft is then tested with `isDraft` itself rather than with a
|
|
231
|
+
* second copy of its rule. Reports nothing for a value carrying no draft member, including one
|
|
232
|
+
* refused for a member this contract does not declare.
|
|
229
233
|
*
|
|
230
234
|
* This function lives in the server helpers rather than in core: core's leaf pair, `helpers.ts` and
|
|
231
235
|
* `validators.ts`, may not consume the shapes module this function reads `CLAIM_SHAPE` from, and
|
|
@@ -582,10 +586,11 @@ export declare function normalizePath(path: string): string;
|
|
|
582
586
|
* `tsc --showConfig` spells a path relative to the project file, so a printed record carries an
|
|
583
587
|
* absolute path only where a project itself declares one. Rewriting a contained absolute path to
|
|
584
588
|
* its relative form keeps one commit checked out at two roots reading to one digest. A path that
|
|
585
|
-
*
|
|
586
|
-
* tree by a relative spelling. Key order is the compiler's own and it differs between
|
|
587
|
-
* majors, so sorting removes a difference that means nothing. A `__proto__` key is
|
|
588
|
-
* the earlier assignment-built record dropped it, so a digest stays the same across
|
|
589
|
+
* resolves outside the workspace is left as it stands, because rewriting it would name a file
|
|
590
|
+
* outside the tree by a relative spelling. Key order is the compiler's own and it differs between
|
|
591
|
+
* the supported majors, so sorting removes a difference that means nothing. A `__proto__` key is
|
|
592
|
+
* dropped, as the earlier assignment-built record dropped it, so a digest stays the same across
|
|
593
|
+
* releases.
|
|
589
594
|
*
|
|
590
595
|
* @param workspace - The target workspace root
|
|
591
596
|
* @param value - The value to rewrite
|
|
@@ -1279,10 +1284,10 @@ export declare function resolveWorkspaceModule(workspace: string, specifier: str
|
|
|
1279
1284
|
* Vitest service after 64 specifications rather than deleting from each map that service owns. Any
|
|
1280
1285
|
* bound holds the retention flat, because the replacement releases everything the instance held,
|
|
1281
1286
|
* and 64 is the value chosen. The inspection that crosses the bound pays the replacement
|
|
1282
|
-
* synchronously: it closes the resident service and warms a
|
|
1283
|
-
* over this package's own workspace on the host `guides/probe.md` § Cost names, two
|
|
1284
|
-
* inspections put that one at 480 ms and 269 ms against median inspections of 156 ms and
|
|
1285
|
-
* budget one call in 64 at 110 ms to 330 ms above the rest.
|
|
1287
|
+
* synchronously: it closes the resident service and warms a fresh service before it runs. On
|
|
1288
|
+
* 2026-08-20, over this package's own workspace on the host `guides/probe.md` § Cost names, two
|
|
1289
|
+
* runs of 66 inspections put that one at 480 ms and 269 ms against median inspections of 156 ms and
|
|
1290
|
+
* 155 ms, so budget one call in 64 at 110 ms to 330 ms above the rest.
|
|
1286
1291
|
*
|
|
1287
1292
|
* Every issue this stage emits names its party, and the stage emits an issue for every party
|
|
1288
1293
|
* `Party` declares. An `origin: 'claimant'` issue is a failure Vitest reported about the candidate.
|
|
@@ -1528,8 +1533,8 @@ export declare class TypeStage implements TypeStageInterface {
|
|
|
1528
1533
|
*
|
|
1529
1534
|
* @param project - The workspace-relative TypeScript project to resolve
|
|
1530
1535
|
* @returns The resolved workspace-relative path and the digest of its compiler options
|
|
1531
|
-
* @throws When the project
|
|
1532
|
-
* stage has already been destroyed
|
|
1536
|
+
* @throws When the project resolves outside the workspace, when the compiler refuses it, or when
|
|
1537
|
+
* the stage has already been destroyed
|
|
1533
1538
|
*/
|
|
1534
1539
|
resolve(project: string): Promise<Project>;
|
|
1535
1540
|
/**
|
|
@@ -1585,8 +1590,8 @@ export declare interface TypeStageInterface extends StageInterface {
|
|
|
1585
1590
|
*
|
|
1586
1591
|
* @param project - The workspace-relative TypeScript project to resolve
|
|
1587
1592
|
* @returns The resolved workspace-relative path and the digest of its compiler options
|
|
1588
|
-
* @throws When the project
|
|
1589
|
-
* stage has already been destroyed
|
|
1593
|
+
* @throws When the project resolves outside the workspace, when the compiler refuses it, or when
|
|
1594
|
+
* the stage has already been destroyed
|
|
1590
1595
|
*
|
|
1591
1596
|
* @example
|
|
1592
1597
|
* ```ts
|
package/dist/src/server/index.js
CHANGED
|
@@ -729,8 +729,12 @@ function matchesLiveProcess(id) {
|
|
|
729
729
|
* Collects every regular file a target workspace holds, skipping the trees no inspection reads.
|
|
730
730
|
*
|
|
731
731
|
* @remarks
|
|
732
|
-
* Skips a directory named `.git`, `dist`, or `node_modules` at any depth
|
|
733
|
-
*
|
|
732
|
+
* Skips a directory named `.git`, `dist`, or `node_modules` at any depth. Of the workspace-root
|
|
733
|
+
* `tmp` directory it walks only `tmp/probes`: the scaffold tmp layout holds the runtime probes there
|
|
734
|
+
* and nothing else an inspection reads, so a consumer's ignored data under `tmp/` is never read or
|
|
735
|
+
* copied. The match is the lowercase `tmp` spelling exactly, and a `tmp` directory below the root is
|
|
736
|
+
* walked like any other. The directory {@link TYPE_MIRROR} names is skipped as well, so this
|
|
737
|
+
* package's own mirror stays out of the walk if it ever moves outside `tmp`. A
|
|
734
738
|
* directory this host cannot list is skipped rather than raised, so one unreadable directory in a
|
|
735
739
|
* consumer's tree is not a reason to refuse the whole walk. A symbolic link is not carried, whether
|
|
736
740
|
* it names a file or a directory, so a file reached only through one is absent from the result; a
|
|
@@ -747,7 +751,9 @@ function matchesLiveProcess(id) {
|
|
|
747
751
|
function collectWorkspaceFiles(workspace) {
|
|
748
752
|
const excluded = normalizePath(resolveWorkspaceFile(workspace, TYPE_MIRROR));
|
|
749
753
|
const files = [];
|
|
750
|
-
const
|
|
754
|
+
const root = resolve(workspace);
|
|
755
|
+
const scratch = join(root, "tmp");
|
|
756
|
+
const directories = [root];
|
|
751
757
|
while (directories.length > 0) {
|
|
752
758
|
const directory = directories.pop();
|
|
753
759
|
if (directory === void 0) break;
|
|
@@ -755,6 +761,7 @@ function collectWorkspaceFiles(workspace) {
|
|
|
755
761
|
const entries = reading.success ? reading.value : [];
|
|
756
762
|
for (const entry of entries) {
|
|
757
763
|
if (entry.name === ".git" || entry.name === "dist" || entry.name === "node_modules") continue;
|
|
764
|
+
if (directory === scratch && entry.name !== "probes") continue;
|
|
758
765
|
const path = join(directory, entry.name);
|
|
759
766
|
if (entry.isDirectory()) {
|
|
760
767
|
if (normalizePath(path) !== excluded) directories.push(path);
|
|
@@ -814,12 +821,12 @@ async function guardStage(stage, operation) {
|
|
|
814
821
|
*
|
|
815
822
|
* @remarks
|
|
816
823
|
* The published claim schema constrains `Draft.path` to a non-empty string and nothing else, while
|
|
817
|
-
* `isDraft` also refuses an absolute path and one that
|
|
818
|
-
* the whole of the difference between the advertised contract and the enforced one, so a
|
|
819
|
-
* refused after satisfying the schema is refused here and nowhere else. The whole input must
|
|
820
|
-
* satisfy that schema. Each draft is then tested with `isDraft` itself rather than with a
|
|
821
|
-
* copy of its rule. Reports nothing for a value carrying no draft member, including one
|
|
822
|
-
* a member this contract does not declare.
|
|
824
|
+
* `isDraft` also refuses an absolute path and one that resolves outside the workspace. That one
|
|
825
|
+
* member is the whole of the difference between the advertised contract and the enforced one, so a
|
|
826
|
+
* caller refused after satisfying the schema is refused here and nowhere else. The whole input must
|
|
827
|
+
* first satisfy that schema. Each draft is then tested with `isDraft` itself rather than with a
|
|
828
|
+
* second copy of its rule. Reports nothing for a value carrying no draft member, including one
|
|
829
|
+
* refused for a member this contract does not declare.
|
|
823
830
|
*
|
|
824
831
|
* This function lives in the server helpers rather than in core: core's leaf pair, `helpers.ts` and
|
|
825
832
|
* `validators.ts`, may not consume the shapes module this function reads `CLAIM_SHAPE` from, and
|
|
@@ -854,10 +861,11 @@ function findRefusedPaths(value) {
|
|
|
854
861
|
* `tsc --showConfig` spells a path relative to the project file, so a printed record carries an
|
|
855
862
|
* absolute path only where a project itself declares one. Rewriting a contained absolute path to
|
|
856
863
|
* its relative form keeps one commit checked out at two roots reading to one digest. A path that
|
|
857
|
-
*
|
|
858
|
-
* tree by a relative spelling. Key order is the compiler's own and it differs between
|
|
859
|
-
* majors, so sorting removes a difference that means nothing. A `__proto__` key is
|
|
860
|
-
* the earlier assignment-built record dropped it, so a digest stays the same across
|
|
864
|
+
* resolves outside the workspace is left as it stands, because rewriting it would name a file
|
|
865
|
+
* outside the tree by a relative spelling. Key order is the compiler's own and it differs between
|
|
866
|
+
* the supported majors, so sorting removes a difference that means nothing. A `__proto__` key is
|
|
867
|
+
* dropped, as the earlier assignment-built record dropped it, so a digest stays the same across
|
|
868
|
+
* releases.
|
|
861
869
|
*
|
|
862
870
|
* @param workspace - The target workspace root
|
|
863
871
|
* @param value - The value to rewrite
|
|
@@ -1093,7 +1101,7 @@ var Overlay = class {
|
|
|
1093
1101
|
}
|
|
1094
1102
|
};
|
|
1095
1103
|
// package.json
|
|
1096
|
-
var version = "0.0.
|
|
1104
|
+
var version = "0.0.28";
|
|
1097
1105
|
var peerDependencies = {
|
|
1098
1106
|
"typescript": "^6.0.3 || ^7.0.2",
|
|
1099
1107
|
"vitest": "^4.1.12 || ^5.0.5"
|
|
@@ -1345,10 +1353,10 @@ var LintStage = class {
|
|
|
1345
1353
|
* Vitest service after 64 specifications rather than deleting from each map that service owns. Any
|
|
1346
1354
|
* bound holds the retention flat, because the replacement releases everything the instance held,
|
|
1347
1355
|
* and 64 is the value chosen. The inspection that crosses the bound pays the replacement
|
|
1348
|
-
* synchronously: it closes the resident service and warms a
|
|
1349
|
-
* over this package's own workspace on the host `guides/probe.md` § Cost names, two
|
|
1350
|
-
* inspections put that one at 480 ms and 269 ms against median inspections of 156 ms and
|
|
1351
|
-
* budget one call in 64 at 110 ms to 330 ms above the rest.
|
|
1356
|
+
* synchronously: it closes the resident service and warms a fresh service before it runs. On
|
|
1357
|
+
* 2026-08-20, over this package's own workspace on the host `guides/probe.md` § Cost names, two
|
|
1358
|
+
* runs of 66 inspections put that one at 480 ms and 269 ms against median inspections of 156 ms and
|
|
1359
|
+
* 155 ms, so budget one call in 64 at 110 ms to 330 ms above the rest.
|
|
1352
1360
|
*
|
|
1353
1361
|
* Every issue this stage emits names its party, and the stage emits an issue for every party
|
|
1354
1362
|
* `Party` declares. An `origin: 'claimant'` issue is a failure Vitest reported about the candidate.
|
|
@@ -2088,8 +2096,8 @@ var TypeStage = class {
|
|
|
2088
2096
|
*
|
|
2089
2097
|
* @param project - The workspace-relative TypeScript project to resolve
|
|
2090
2098
|
* @returns The resolved workspace-relative path and the digest of its compiler options
|
|
2091
|
-
* @throws When the project
|
|
2092
|
-
* stage has already been destroyed
|
|
2099
|
+
* @throws When the project resolves outside the workspace, when the compiler refuses it, or when
|
|
2100
|
+
* the stage has already been destroyed
|
|
2093
2101
|
*/
|
|
2094
2102
|
resolve(project) {
|
|
2095
2103
|
return guardStage(this.stage, this.#resolve(project));
|