@lannguyensi/harness 0.56.0 → 0.58.0
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/CHANGELOG.md +186 -0
- package/README.md +1 -1
- package/dist/cli/apply/apply.js +4 -3
- package/dist/cli/apply/apply.js.map +1 -1
- package/dist/cli/apply/generate-codex-config.js +3 -3
- package/dist/cli/apply/generate-codex-config.js.map +1 -1
- package/dist/cli/apply/generate-memory-index.js +20 -10
- package/dist/cli/apply/generate-memory-index.js.map +1 -1
- package/dist/cli/apply/generate-settings.d.ts +7 -0
- package/dist/cli/apply/generate-settings.js +10 -1
- package/dist/cli/apply/generate-settings.js.map +1 -1
- package/dist/cli/approve/understanding.d.ts +4 -4
- package/dist/cli/doctor/format.js +68 -2
- package/dist/cli/doctor/format.js.map +1 -1
- package/dist/cli/doctor/index.d.ts +6 -0
- package/dist/cli/doctor/index.js +214 -28
- package/dist/cli/doctor/index.js.map +1 -1
- package/dist/cli/doctor/session-start-preflight-setup-version.d.ts +83 -0
- package/dist/cli/doctor/session-start-preflight-setup-version.js +114 -0
- package/dist/cli/doctor/session-start-preflight-setup-version.js.map +1 -0
- package/dist/cli/doctor/types.d.ts +35 -4
- package/dist/cli/doctor/types.js +2 -1
- package/dist/cli/doctor/types.js.map +1 -1
- package/dist/cli/doctor/ug-delegations.js +9 -0
- package/dist/cli/doctor/ug-delegations.js.map +1 -1
- package/dist/cli/explain-policy.d.ts +67 -0
- package/dist/cli/explain-policy.js +140 -3
- package/dist/cli/explain-policy.js.map +1 -1
- package/dist/cli/gc/index.js +28 -14
- package/dist/cli/gc/index.js.map +1 -1
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.js +10 -7
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init/composer.js +4 -3
- package/dist/cli/init/composer.js.map +1 -1
- package/dist/cli/init/dependencies.js +15 -9
- package/dist/cli/init/dependencies.js.map +1 -1
- package/dist/cli/init/templates.d.ts +1 -0
- package/dist/cli/init/templates.js +30 -4
- package/dist/cli/init/templates.js.map +1 -1
- package/dist/cli/list.js +19 -0
- package/dist/cli/list.js.map +1 -1
- package/dist/cli/loader.js +16 -1
- package/dist/cli/loader.js.map +1 -1
- package/dist/cli/pack/hook-bootstrap.js +2 -1
- package/dist/cli/pack/hook-bootstrap.js.map +1 -1
- package/dist/cli/pack/hook-codex-user-prompt-submit.d.ts +0 -32
- package/dist/cli/pack/hook-codex-user-prompt-submit.js +11 -118
- package/dist/cli/pack/hook-codex-user-prompt-submit.js.map +1 -1
- package/dist/cli/pack/hook-pre-tool-use.js +34 -7
- package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
- package/dist/cli/pack/hook-solution-acceptance.d.ts +55 -0
- package/dist/cli/pack/hook-solution-acceptance.js +222 -16
- package/dist/cli/pack/hook-solution-acceptance.js.map +1 -1
- package/dist/cli/pack/hook-stay-in-scope.d.ts +5 -26
- package/dist/cli/pack/hook-stay-in-scope.js +62 -274
- package/dist/cli/pack/hook-stay-in-scope.js.map +1 -1
- package/dist/cli/pack/hook-track-active-claim.d.ts +1 -0
- package/dist/cli/pack/hook-track-active-claim.js +107 -43
- package/dist/cli/pack/hook-track-active-claim.js.map +1 -1
- package/dist/cli/session-start/index.d.ts +32 -1
- package/dist/cli/session-start/index.js +142 -12
- package/dist/cli/session-start/index.js.map +1 -1
- package/dist/cli/validate/checks.d.ts +0 -2
- package/dist/cli/validate/checks.js +30 -30
- package/dist/cli/validate/checks.js.map +1 -1
- package/dist/io/harness-lock.js +11 -1
- package/dist/io/harness-lock.js.map +1 -1
- package/dist/io/lock.d.ts +26 -0
- package/dist/io/lock.js +25 -0
- package/dist/io/lock.js.map +1 -1
- package/dist/io/project-name.d.ts +115 -0
- package/dist/io/project-name.js +158 -0
- package/dist/io/project-name.js.map +1 -0
- package/dist/io/read-json-dir-entries.js +10 -0
- package/dist/io/read-json-dir-entries.js.map +1 -1
- package/dist/io/version-compare.d.ts +59 -0
- package/dist/io/version-compare.js +67 -0
- package/dist/io/version-compare.js.map +1 -1
- package/dist/policy-packs/builtin/solution-acceptance-reconnect.d.ts +50 -0
- package/dist/policy-packs/builtin/solution-acceptance-reconnect.js +151 -0
- package/dist/policy-packs/builtin/solution-acceptance-reconnect.js.map +1 -0
- package/dist/policy-packs/builtin/solution-acceptance-runtime.d.ts +43 -4
- package/dist/policy-packs/builtin/solution-acceptance-runtime.js +43 -39
- package/dist/policy-packs/builtin/solution-acceptance-runtime.js.map +1 -1
- package/dist/policy-packs/builtin/solution-acceptance.js +4 -2
- package/dist/policy-packs/builtin/solution-acceptance.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js +15 -0
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js +5 -7
- package/dist/policy-packs/builtin/understanding-before-execution/inflight-records.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/markers.js +23 -0
- package/dist/policy-packs/builtin/understanding-before-execution/markers.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js +8 -17
- package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.d.ts +129 -0
- package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js +166 -0
- package/dist/policy-packs/builtin/understanding-before-execution/stay-in-scope-config.js.map +1 -0
- package/dist/policy-packs/builtin/understanding-before-execution.d.ts +129 -0
- package/dist/policy-packs/builtin/understanding-before-execution.js +44 -57
- package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -1
- package/dist/policy-packs/version-check.d.ts +8 -1
- package/dist/policy-packs/version-check.js +10 -6
- package/dist/policy-packs/version-check.js.map +1 -1
- package/dist/probes/memory.d.ts +34 -0
- package/dist/probes/memory.js +87 -14
- package/dist/probes/memory.js.map +1 -1
- package/dist/runtime/git-context.d.ts +125 -0
- package/dist/runtime/git-context.js +164 -1
- package/dist/runtime/git-context.js.map +1 -1
- package/dist/runtime/index.d.ts +1 -1
- package/dist/runtime/index.js +1 -1
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/task-providers/agent-tasks.d.ts +90 -0
- package/dist/runtime/task-providers/agent-tasks.js +231 -0
- package/dist/runtime/task-providers/agent-tasks.js.map +1 -0
- package/dist/runtime/workflow-policies.d.ts +1 -0
- package/dist/runtime/workflow-policies.js +8 -8
- package/dist/runtime/workflow-policies.js.map +1 -1
- package/dist/schema/index.d.ts +19 -0
- package/dist/schema/index.js +5 -0
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/session-start-preflight.d.ts +10 -0
- package/dist/schema/session-start-preflight.js +106 -0
- package/dist/schema/session-start-preflight.js.map +1 -0
- package/package.json +7 -2
|
@@ -4,6 +4,7 @@ import * as os from "node:os";
|
|
|
4
4
|
import * as path from "node:path";
|
|
5
5
|
import { checkPolicyPackConfigs, checkPolicyPackSources, KNOWN_RUNTIMES, resolveBuiltin, } from "../../policy-packs/index.js";
|
|
6
6
|
import { expandHome } from "../../io/expand-home.js";
|
|
7
|
+
import { parseProbedVersion, compareVersionFloor } from "../../io/version-compare.js";
|
|
7
8
|
import { extractBashMatchBoundary, shippedBashMatchBoundaries, shippedOperatorOnlyPolicyNames, } from "../init/templates.js";
|
|
8
9
|
import { isPolicyInterceptCommand, requiredHookBudgetMs } from "../policy/intercept.js";
|
|
9
10
|
import { PACK_NAME as UNDERSTANDING_BEFORE_EXECUTION_PACK_NAME } from "../../policy-packs/builtin/understanding-before-execution.js";
|
|
@@ -56,23 +57,6 @@ function resolveOnPath(binary, pathEnv) {
|
|
|
56
57
|
}
|
|
57
58
|
return null;
|
|
58
59
|
}
|
|
59
|
-
const SEMVER_RE = /(\d+(?:\.\d+){0,3})/;
|
|
60
|
-
function compareVersions(actual, required) {
|
|
61
|
-
const a = actual.split(".").map((n) => Number.parseInt(n, 10));
|
|
62
|
-
const r = required.split(".").map((n) => Number.parseInt(n, 10));
|
|
63
|
-
const len = Math.max(a.length, r.length);
|
|
64
|
-
for (let i = 0; i < len; i++) {
|
|
65
|
-
const ai = a[i] ?? 0;
|
|
66
|
-
const ri = r[i] ?? 0;
|
|
67
|
-
if (Number.isNaN(ai) || Number.isNaN(ri))
|
|
68
|
-
return 0;
|
|
69
|
-
if (ai > ri)
|
|
70
|
-
return 1;
|
|
71
|
-
if (ai < ri)
|
|
72
|
-
return -1;
|
|
73
|
-
}
|
|
74
|
-
return 0;
|
|
75
|
-
}
|
|
76
60
|
function checkMcp(manifest, home) {
|
|
77
61
|
const diags = [];
|
|
78
62
|
manifest.tools.mcp.forEach((mcp) => {
|
|
@@ -95,7 +79,7 @@ function checkMcp(manifest, home) {
|
|
|
95
79
|
function checkCli(manifest, opts) {
|
|
96
80
|
const diags = [];
|
|
97
81
|
const pathEnv = opts.pathEnv ?? process.env.PATH ?? "";
|
|
98
|
-
const versionProbe = opts.versionProbe
|
|
82
|
+
const versionProbe = opts.versionProbe;
|
|
99
83
|
manifest.tools.cli.forEach((cli) => {
|
|
100
84
|
let resolved;
|
|
101
85
|
if (path.isAbsolute(cli.binary)) {
|
|
@@ -116,6 +100,16 @@ function checkCli(manifest, opts) {
|
|
|
116
100
|
}
|
|
117
101
|
if (!cli.min_version)
|
|
118
102
|
return;
|
|
103
|
+
// The CLI deliberately supplies no probe: only callers opting into one
|
|
104
|
+
// may execute manifest-named version programs through this check.
|
|
105
|
+
if (!versionProbe) {
|
|
106
|
+
diags.push({
|
|
107
|
+
severity: "warning",
|
|
108
|
+
path: `tools.cli[${cli.name}].min_version`,
|
|
109
|
+
message: "version floor not checked without a version probe; run `harness doctor` to check installed versions",
|
|
110
|
+
});
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
119
113
|
const versionCommand = cli.version_command ?? [resolved, "--version"];
|
|
120
114
|
const stdout = versionProbe(versionCommand);
|
|
121
115
|
if (stdout === null) {
|
|
@@ -126,8 +120,13 @@ function checkCli(manifest, opts) {
|
|
|
126
120
|
});
|
|
127
121
|
return;
|
|
128
122
|
}
|
|
129
|
-
|
|
130
|
-
|
|
123
|
+
// parseProbedVersion + compareVersionFloor (task db44ab46, extending
|
|
124
|
+
// the hooks[] prerelease rule to validate's tools.cli[] check): a
|
|
125
|
+
// release candidate of the required binary (e.g. "1.2.3-rc.1") must
|
|
126
|
+
// not satisfy an equal-numeric min_version floor. See
|
|
127
|
+
// docs/decisions/2026-09-08-preflight-floors.md.
|
|
128
|
+
const parsed = parseProbedVersion(stdout);
|
|
129
|
+
if (!parsed) {
|
|
131
130
|
diags.push({
|
|
132
131
|
severity: "warning",
|
|
133
132
|
path: `tools.cli[${cli.name}].min_version`,
|
|
@@ -135,11 +134,12 @@ function checkCli(manifest, opts) {
|
|
|
135
134
|
});
|
|
136
135
|
return;
|
|
137
136
|
}
|
|
138
|
-
|
|
137
|
+
const { version: actual, isPrerelease, token } = parsed;
|
|
138
|
+
if (compareVersionFloor(actual, isPrerelease, cli.min_version) < 0) {
|
|
139
139
|
diags.push({
|
|
140
140
|
severity: "error",
|
|
141
141
|
path: `tools.cli[${cli.name}].min_version`,
|
|
142
|
-
message: `installed version ${
|
|
142
|
+
message: `installed version ${token} is less than required ${cli.min_version}`,
|
|
143
143
|
});
|
|
144
144
|
}
|
|
145
145
|
});
|
|
@@ -221,22 +221,23 @@ function checkBuiltinDrift(manifest, opts) {
|
|
|
221
221
|
return diags;
|
|
222
222
|
}
|
|
223
223
|
export function checkPolicyGroundingMcp(manifest) {
|
|
224
|
-
if (manifest.policies.
|
|
224
|
+
if (!manifest.policies.some((policy) => policy.requires !== undefined))
|
|
225
225
|
return [];
|
|
226
226
|
const wired = manifest.tools.mcp.some((m) => m.name === "grounding-mcp");
|
|
227
227
|
if (wired)
|
|
228
228
|
return [];
|
|
229
|
+
// This only applies to policies that consume `requires:` evidence.
|
|
229
230
|
// Tier-aware wording since task f1aea826: this is the LAST surface
|
|
230
|
-
// before an operator ships a manifest whose
|
|
231
|
-
// policies will hard-deny every matching event
|
|
232
|
-
// inverse of the pre-0.45 silent non-blocking
|
|
233
|
-
// used to describe.
|
|
234
|
-
//
|
|
231
|
+
// before an operator ships a manifest whose evidence-consuming
|
|
232
|
+
// block/require_approval policies will hard-deny every matching event
|
|
233
|
+
// (deny-degraded), the inverse of the pre-0.45 silent non-blocking
|
|
234
|
+
// fallback this message used to describe. operator_only policies deny
|
|
235
|
+
// without a ledger query and need no grounding-mcp provider.
|
|
235
236
|
return [
|
|
236
237
|
{
|
|
237
238
|
severity: "warning",
|
|
238
239
|
path: "policies",
|
|
239
|
-
message: "policies declared but grounding-mcp not wired: warn policies degrade non-blocking (warn-degraded), but block/require_approval policies will DENY every matching event (deny-degraded) until the producer is wired; risk.degraded_fail_posture: fail_open restores the availability-first behaviour — see docs/okf/gate-fail-posture-matrix.md",
|
|
240
|
+
message: "evidence-consuming policies declared but grounding-mcp not wired: warn policies degrade non-blocking (warn-degraded), but block/require_approval policies will DENY every matching event (deny-degraded) until the producer is wired; risk.degraded_fail_posture: fail_open restores the availability-first behaviour — see docs/okf/gate-fail-posture-matrix.md",
|
|
240
241
|
},
|
|
241
242
|
];
|
|
242
243
|
}
|
|
@@ -1306,7 +1307,6 @@ export const __testables = {
|
|
|
1306
1307
|
expandHome,
|
|
1307
1308
|
isRootedPath,
|
|
1308
1309
|
firstToken,
|
|
1309
|
-
compareVersions,
|
|
1310
1310
|
resolveOnPath,
|
|
1311
1311
|
DEFAULT_RUNTIME_BUILTINS,
|
|
1312
1312
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checks.js","sourceRoot":"","sources":["../../../src/cli/validate/checks.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"checks.js","sourceRoot":"","sources":["../../../src/cli/validate/checks.ts"],"names":[],"mappings":"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"}
|
package/dist/io/harness-lock.js
CHANGED
|
@@ -29,6 +29,7 @@ import * as fs from "node:fs";
|
|
|
29
29
|
import * as path from "node:path";
|
|
30
30
|
import { expandHome } from "./expand-home.js";
|
|
31
31
|
import { atomicWriteFile } from "./atomic-write.js";
|
|
32
|
+
import { isValidProjectName } from "./project-name.js";
|
|
32
33
|
export const LOCK_BASENAME = "harness.lock";
|
|
33
34
|
function sha256Hex(input) {
|
|
34
35
|
return crypto.createHash("sha256").update(input).digest("hex");
|
|
@@ -232,7 +233,16 @@ export function buildLockEntries(manifest, opts = {}) {
|
|
|
232
233
|
for (const dir of manifest.memory.directories) {
|
|
233
234
|
let resolved = expandHome(dir.path, opts.homeDir);
|
|
234
235
|
if (resolved.includes("{project}")) {
|
|
235
|
-
|
|
236
|
+
// Same guard `resolvePaths` (`src/cli/loader.ts`) and
|
|
237
|
+
// `substituteProject` (`src/probes/memory.ts`) apply at their own
|
|
238
|
+
// `{project}` sinks (task e904f25a): an `opts.projectName` that
|
|
239
|
+
// fails `isValidProjectName` (`..`, a path separator, a control
|
|
240
|
+
// character) is treated exactly like no project name at all. The
|
|
241
|
+
// templated directory's entry is skipped rather than the raw,
|
|
242
|
+
// unvalidated value being interpolated into the path this
|
|
243
|
+
// function stats and locks; `harness.lock` and `harness diff
|
|
244
|
+
// --since-apply`'s drift list never carry it (task b5e6ccb0).
|
|
245
|
+
if (!opts.projectName || !isValidProjectName(opts.projectName))
|
|
236
246
|
continue;
|
|
237
247
|
resolved = resolved.split("{project}").join(opts.projectName);
|
|
238
248
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"harness-lock.js","sourceRoot":"","sources":["../../src/io/harness-lock.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,uEAAuE;AACvE,EAAE;AACF,oEAAoE;AACpE,6CAA6C;AAC7C,iEAAiE;AACjE,EAAE;AACF,0EAA0E;AAC1E,kEAAkE;AAClE,4EAA4E;AAC5E,4EAA4E;AAC5E,2EAA2E;AAC3E,mDAAmD;AACnD,2EAA2E;AAC3E,sBAAsB;AACtB,EAAE;AACF,8EAA8E;AAC9E,0EAA0E;AAC1E,6EAA6E;AAC7E,wEAAwE;AACxE,kCAAkC;AAClC,EAAE;AACF,6EAA6E;AAC7E,uEAAuE;AACvE,4EAA4E;AAC5E,kDAAkD;AAElD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"harness-lock.js","sourceRoot":"","sources":["../../src/io/harness-lock.ts"],"names":[],"mappings":"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"}
|
package/dist/io/lock.d.ts
CHANGED
|
@@ -4,8 +4,34 @@ export interface LockOptions {
|
|
|
4
4
|
maxTimeoutMs?: number;
|
|
5
5
|
staleMs?: number;
|
|
6
6
|
}
|
|
7
|
+
export interface CheckLockOptions {
|
|
8
|
+
staleMs?: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Three-valued read of a lock's liveness, never a boolean: `"live"` (the
|
|
12
|
+
* `proper-lockfile` `.lock` directory exists and is not yet stale under
|
|
13
|
+
* the given `staleMs`), `"not-live"` (no lock directory at all, or a stale
|
|
14
|
+
* one: `checkSync` answers `false` for both and swallows the absent-lock
|
|
15
|
+
* `ENOENT` inside the library), or `"unknown"` (`checkSync` threw: an
|
|
16
|
+
* unreadable parent directory, a symlink loop, ...). A
|
|
17
|
+
* caller must not collapse `"unknown"` into `"not-live"`: that would
|
|
18
|
+
* assert the lock is free when the check simply could not tell.
|
|
19
|
+
*/
|
|
20
|
+
export type LockCheckResult = "live" | "not-live" | "unknown";
|
|
7
21
|
export declare const DEFAULT_LOCK_RETRIES = 50;
|
|
8
22
|
export declare const DEFAULT_LOCK_MIN_TIMEOUT_MS = 50;
|
|
9
23
|
export declare const DEFAULT_LOCK_MAX_TIMEOUT_MS = 500;
|
|
10
24
|
export declare const DEFAULT_LOCK_STALE_MS = 10000;
|
|
11
25
|
export declare function withFileLock<T>(lockPath: string, fn: () => Promise<T> | T, options?: LockOptions): Promise<T>;
|
|
26
|
+
/**
|
|
27
|
+
* Read-only liveness check for a lock at `lockPath`, the designated
|
|
28
|
+
* wrapper around `proper-lockfile`'s own read-only `checkSync` (the SAME
|
|
29
|
+
* library `withFileLock` above acquires locks with), so the live/stale
|
|
30
|
+
* split is decided by the producer's own mtime arithmetic, not a
|
|
31
|
+
* reimplementation of it. `realpath: false` mirrors `withFileLock`'s own
|
|
32
|
+
* acquisition options above: `lockPath` is checked at its own literal
|
|
33
|
+
* path, not its resolved target, so a symlinked lock path is checked at
|
|
34
|
+
* itself. Never acquires or mutates the lock; a check-only read has
|
|
35
|
+
* nothing to release.
|
|
36
|
+
*/
|
|
37
|
+
export declare function checkFileLock(lockPath: string, options?: CheckLockOptions): LockCheckResult;
|
package/dist/io/lock.js
CHANGED
|
@@ -23,6 +23,31 @@ export async function withFileLock(lockPath, fn, options = {}) {
|
|
|
23
23
|
await release();
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* Read-only liveness check for a lock at `lockPath`, the designated
|
|
28
|
+
* wrapper around `proper-lockfile`'s own read-only `checkSync` (the SAME
|
|
29
|
+
* library `withFileLock` above acquires locks with), so the live/stale
|
|
30
|
+
* split is decided by the producer's own mtime arithmetic, not a
|
|
31
|
+
* reimplementation of it. `realpath: false` mirrors `withFileLock`'s own
|
|
32
|
+
* acquisition options above: `lockPath` is checked at its own literal
|
|
33
|
+
* path, not its resolved target, so a symlinked lock path is checked at
|
|
34
|
+
* itself. Never acquires or mutates the lock; a check-only read has
|
|
35
|
+
* nothing to release.
|
|
36
|
+
*/
|
|
37
|
+
export function checkFileLock(lockPath, options = {}) {
|
|
38
|
+
try {
|
|
39
|
+
const live = lockfile.checkSync(lockPath, {
|
|
40
|
+
stale: options.staleMs ?? DEFAULT_LOCK_STALE_MS,
|
|
41
|
+
realpath: false,
|
|
42
|
+
});
|
|
43
|
+
return live ? "live" : "not-live";
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
// proper-lockfile's check never throws for an absent lock (it answers
|
|
47
|
+
// false); anything that does throw is an undetermined state.
|
|
48
|
+
return "unknown";
|
|
49
|
+
}
|
|
50
|
+
}
|
|
26
51
|
function ensureLockTarget(lockPath) {
|
|
27
52
|
const dir = path.dirname(lockPath);
|
|
28
53
|
fs.mkdirSync(dir, { recursive: true });
|
package/dist/io/lock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/io/lock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,QAAQ,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"lock.js","sourceRoot":"","sources":["../../src/io/lock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AAyBvC,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AACvC,MAAM,CAAC,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAC9C,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAC;AAC/C,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,QAAgB,EAChB,EAAwB,EACxB,UAAuB,EAAE;IAEzB,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC3B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC5C,OAAO,EAAE;YACP,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,oBAAoB;YAChD,UAAU,EAAE,OAAO,CAAC,YAAY,IAAI,2BAA2B;YAC/D,UAAU,EAAE,OAAO,CAAC,YAAY,IAAI,2BAA2B;SAChE;QACD,KAAK,EAAE,OAAO,CAAC,OAAO,IAAI,qBAAqB;QAC/C,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IACH,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,EAAE,CAAC;IACpB,CAAC;YAAS,CAAC;QACT,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE,UAA4B,EAAE;IAC5E,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAAE;YACxC,KAAK,EAAE,OAAO,CAAC,OAAO,IAAI,qBAAqB;YAC/C,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,sEAAsE;QACtE,6DAA6D;QAC7D,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAgB;IACxC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnC,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACjC,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Is `name` usable as a `{project}` value at all: both as an on-disk
|
|
3
|
+
* directory component (`<home>/projects/<name>/harness.overrides.yaml`,
|
|
4
|
+
* `resolvePaths`, `src/cli/loader.ts`) and as a value that will end up
|
|
5
|
+
* inside rendered CLI output? Two independent screens, both applied here
|
|
6
|
+
* at the SOURCE rather than at each consumer:
|
|
7
|
+
*
|
|
8
|
+
* - PATH ESCAPE. Rejects the empty string, `"."`, and `".."` (the two
|
|
9
|
+
* `path.join` special-cases that either no-op or climb a level,
|
|
10
|
+
* `".."` being exactly the shape a crafted, un-normalized `commondir`
|
|
11
|
+
* used to produce before the fix above), plus any name containing a
|
|
12
|
+
* forward slash or a backslash (Windows separator; POSIX permits a
|
|
13
|
+
* literal backslash IN a directory name, so this is not redundant
|
|
14
|
+
* with the platform's own path parsing).
|
|
15
|
+
* - CONTROL CHARACTERS. Rejects any name containing one of
|
|
16
|
+
* {@link PROJECT_NAME_CONTROL_CHARS}, NUL included (which is why
|
|
17
|
+
* there is no separate NUL clause). A newline would forge an extra,
|
|
18
|
+
* diagnostic-looking line of caller-chosen text wherever the value is
|
|
19
|
+
* rendered, an ESC would write raw terminal escapes into the
|
|
20
|
+
* operator's terminal, and a CR would overwrite the line it landed
|
|
21
|
+
* on. Screening here rather than at each rendering site is what makes
|
|
22
|
+
* "an accepted project name is a plain single-line string" a property
|
|
23
|
+
* of the VALUE: it also covers the surfaces that render the
|
|
24
|
+
* SUBSTITUTED memory directory path rather than the name itself
|
|
25
|
+
* (`harness doctor`'s "memory directory missing" line,
|
|
26
|
+
* `src/cli/doctor/format.ts`; `harness list memories`' `path` row
|
|
27
|
+
* field, `src/cli/list.ts`), which no per-site escaper of the name
|
|
28
|
+
* would ever have reached.
|
|
29
|
+
*
|
|
30
|
+
* A name that passes both screens may still not exist on disk
|
|
31
|
+
* (`resolvePaths` already handles that with `fs.existsSync`); this only
|
|
32
|
+
* guards against the value escaping the single path segment it is meant
|
|
33
|
+
* to occupy and against it carrying control characters anywhere
|
|
34
|
+
* downstream.
|
|
35
|
+
*
|
|
36
|
+
* WHAT A REJECTION LOOKS LIKE. `deriveProjectName` (`src/runtime/git-
|
|
37
|
+
* context.ts`) validates its own return value at every exit, so a
|
|
38
|
+
* checkout directory whose basename contains a control character now
|
|
39
|
+
* takes the same path a `".."` basename already took: the helper returns
|
|
40
|
+
* `null`, no project override layer is looked up for that repository,
|
|
41
|
+
* and the base/machine value applies unchanged. There is no error and no
|
|
42
|
+
* warning; the operator sees the host-wide value instead of a per-repo
|
|
43
|
+
* one (`harness doctor`'s setup-version finding then carries
|
|
44
|
+
* `projectName: null` and renders no `(project: X)` suffix). An explicit
|
|
45
|
+
* `--project` carrying a control character is instead reported:
|
|
46
|
+
* `resolvePaths` resolves no project layer for it, and
|
|
47
|
+
* `substituteProject` (`src/probes/memory.ts`) degrades to the "no
|
|
48
|
+
* project supplied" branch, which `harness doctor` surfaces as its
|
|
49
|
+
* rejected-`--project` warn line.
|
|
50
|
+
*
|
|
51
|
+
* Exported (task c88461c1, review round 3 residual; task `1c4eb3ea`
|
|
52
|
+
* of the batch-44 follow-up run) so `resolvePaths` (`src/cli/loader.ts`)
|
|
53
|
+
* can apply the SAME guard at its own `path.join` sink, defense in
|
|
54
|
+
* depth: this function already rejects an unsafe name at every
|
|
55
|
+
* `deriveProjectName` exit, but an `opts.project` reaching
|
|
56
|
+
* `resolvePaths`' OWN sink from anywhere else (a caller building
|
|
57
|
+
* `LoaderOptions` by hand, a future producer) had no equivalent check
|
|
58
|
+
* of its own until now. Applied a THIRD time at `substituteProject`'s
|
|
59
|
+
* own sink (`src/probes/memory.ts`, task `e904f25a`): an invalid name
|
|
60
|
+
* there degrades to the "no project supplied" branch instead of being
|
|
61
|
+
* interpolated into the `{project}` placeholder. Applied a FOURTH time
|
|
62
|
+
* at `buildLockEntries`' own sink (`src/io/harness-lock.ts`, task
|
|
63
|
+
* `b5e6ccb0`): an invalid name there skips the templated directory's
|
|
64
|
+
* lock entry instead of the raw value being interpolated into the path
|
|
65
|
+
* this function stats, hashes and writes into `harness.lock`.
|
|
66
|
+
* `resolvePaths`, `substituteProject` and `buildLockEntries` are now all
|
|
67
|
+
* guarded; one `{project}` sink is NOT: `generate-memory-index.ts`'s own
|
|
68
|
+
* substitution still interpolates an operator-supplied `--project` value
|
|
69
|
+
* into a path unvalidated, left unguarded (reached only via the explicit
|
|
70
|
+
* CLI flag, not this module's derivation; see CHANGELOG.md for the
|
|
71
|
+
* reservation/follow-up). That one call site calls this function
|
|
72
|
+
* nowhere, so it inherits NOTHING from the control-character screen
|
|
73
|
+
* above either: a caller reading this comment should not assume this
|
|
74
|
+
* function guards every `{project}`-shaped sink in the codebase, for
|
|
75
|
+
* path escapes or for control characters.
|
|
76
|
+
*/
|
|
77
|
+
export declare function isValidProjectName(name: string): boolean;
|
|
78
|
+
/**
|
|
79
|
+
* Renders a REJECTED project name safe to interpolate into one line of
|
|
80
|
+
* CLI output. The invariant this helper is half of has two parts, and
|
|
81
|
+
* they are complementary rather than overlapping (task `e904f25a`):
|
|
82
|
+
*
|
|
83
|
+
* - An ACCEPTED name cannot carry a control character at all.
|
|
84
|
+
* {@link isValidProjectName} rejects C0, DEL and C1 at the source, so
|
|
85
|
+
* every value that survives validation is already a plain
|
|
86
|
+
* single-line string wherever it, or a path it was substituted into,
|
|
87
|
+
* is rendered. Nothing downstream of the validator has to enumerate
|
|
88
|
+
* its own rendering sites to stay safe.
|
|
89
|
+
* - A REJECTED name is by definition unvalidated, and it is still
|
|
90
|
+
* echoed back so the operator can see WHICH value was refused. Every
|
|
91
|
+
* such echo goes through this helper: `harness doctor`'s
|
|
92
|
+
* rejected-`--project` warn line and its per-directory note
|
|
93
|
+
* (`src/cli/doctor/format.ts`), doctor's header `project:` clause
|
|
94
|
+
* (which renders the raw `--project` whether it was accepted or
|
|
95
|
+
* rejected), and `harness list memories`' `project_rejected` row
|
|
96
|
+
* field (`src/cli/list.ts`, and with it the text table derived from
|
|
97
|
+
* it).
|
|
98
|
+
*
|
|
99
|
+
* The `session_start_preflight.setup` finding's `(project: X)` suffix is
|
|
100
|
+
* also wrapped, as defense in depth rather than as an echo of a rejected
|
|
101
|
+
* value: `harness doctor` sets that finding's `projectName` only when
|
|
102
|
+
* `resolvePaths` actually resolved a project layer FILE, which requires
|
|
103
|
+
* the name to have passed {@link isValidProjectName} first. The wrap
|
|
104
|
+
* stays so a hand-built finding or a future producer cannot reintroduce
|
|
105
|
+
* a forged line through that one call site.
|
|
106
|
+
*
|
|
107
|
+
* Strips (rather than escapes) every character in
|
|
108
|
+
* {@link PROJECT_NAME_CONTROL_CHARS}. A name with no control character
|
|
109
|
+
* (`..`, `a/b`, every ordinary shape) passes through unchanged. Report
|
|
110
|
+
* DATA keeps the raw value (`DoctorReport.project`,
|
|
111
|
+
* `MemoryReport.projectRejected`), so a `--json` consumer still reads
|
|
112
|
+
* back exactly what the operator passed, carried by JSON's own escaping
|
|
113
|
+
* rather than by a raw control byte.
|
|
114
|
+
*/
|
|
115
|
+
export declare function sanitizeProjectForDisplay(name: string): string;
|