frontend-harness 0.7.9 → 0.7.10
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 +29 -0
- package/README.md +3 -0
- package/dist/cli/index.js +20 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/runtime/clean.js +24 -3
- package/dist/runtime/clean.js.map +1 -1
- package/dist/runtime/context.js +49 -5
- package/dist/runtime/context.js.map +1 -1
- package/dist/runtime/evidence.js +63 -8
- package/dist/runtime/evidence.js.map +1 -1
- package/dist/runtime/graph.js +11 -4
- package/dist/runtime/graph.js.map +1 -1
- package/dist/runtime/knowledge/constants.d.ts +9 -0
- package/dist/runtime/knowledge/constants.js +24 -0
- package/dist/runtime/knowledge/constants.js.map +1 -0
- package/dist/runtime/knowledge/core.d.ts +19 -0
- package/dist/runtime/knowledge/core.js +1264 -0
- package/dist/runtime/knowledge/core.js.map +1 -0
- package/dist/runtime/knowledge/types.d.ts +172 -0
- package/dist/runtime/knowledge/types.js +2 -0
- package/dist/runtime/knowledge/types.js.map +1 -0
- package/dist/runtime/knowledge.d.ts +2 -188
- package/dist/runtime/knowledge.js +1 -1126
- package/dist/runtime/knowledge.js.map +1 -1
- package/dist/runtime/plan/component-resolver.js +17 -6
- package/dist/runtime/plan/component-resolver.js.map +1 -1
- package/dist/runtime/plan/proposal.js +9 -0
- package/dist/runtime/plan/proposal.js.map +1 -1
- package/dist/runtime/plan.js +6 -4
- package/dist/runtime/plan.js.map +1 -1
- package/dist/runtime/policy-provenance.js +43 -5
- package/dist/runtime/policy-provenance.js.map +1 -1
- package/dist/runtime/project-discovery.js +32 -17
- package/dist/runtime/project-discovery.js.map +1 -1
- package/dist/runtime/project-paths.js +7 -1
- package/dist/runtime/project-paths.js.map +1 -1
- package/dist/runtime/protocol-init.js +105 -19
- package/dist/runtime/protocol-init.js.map +1 -1
- package/dist/runtime/repair-decision.js +76 -16
- package/dist/runtime/repair-decision.js.map +1 -1
- package/dist/runtime/repair-packet.js +55 -16
- package/dist/runtime/repair-packet.js.map +1 -1
- package/dist/runtime/scaffold/vue-template.js +1 -1
- package/dist/runtime/scaffold/vue-template.js.map +1 -1
- package/dist/runtime/scaffold.js +44 -8
- package/dist/runtime/scaffold.js.map +1 -1
- package/dist/runtime/skills.js +120 -18
- package/dist/runtime/skills.js.map +1 -1
- package/dist/runtime/state.js +49 -8
- package/dist/runtime/state.js.map +1 -1
- package/dist/runtime/units.js +11 -4
- package/dist/runtime/units.js.map +1 -1
- package/dist/runtime/verification-commands.js +95 -21
- package/dist/runtime/verification-commands.js.map +1 -1
- package/dist/runtime/verify.js +64 -18
- package/dist/runtime/verify.js.map +1 -1
- package/dist/runtime/visual-compare.js +104 -12
- package/dist/runtime/visual-compare.js.map +1 -1
- package/dist/schemas/validation.js +222 -6
- package/dist/schemas/validation.js.map +1 -1
- package/dist/storage/json.d.ts +9 -1
- package/dist/storage/json.js +106 -8
- package/dist/storage/json.js.map +1 -1
- package/docs/RELEASE.md +5 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policy-provenance.js","sourceRoot":"","sources":["../../src/runtime/policy-provenance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,cAAc,EAAqB,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAE,sBAAsB,EAA0C,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"policy-provenance.js","sourceRoot":"","sources":["../../src/runtime/policy-provenance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import fs from "node:fs";
|
|
2
2
|
import path from "node:path";
|
|
3
|
+
import { isRegularFileWithoutSymlink } from "../storage/json.js";
|
|
3
4
|
import { hasRoleSignal } from "./task-signals.js";
|
|
4
5
|
const SOURCE_ROOT_CANDIDATES = [
|
|
5
6
|
"src/pages",
|
|
@@ -48,6 +49,7 @@ const IGNORED_DIRECTORIES = new Set([
|
|
|
48
49
|
".turbo"
|
|
49
50
|
]);
|
|
50
51
|
const EXTENSION_PRIORITY = [".vue", ".tsx", ".jsx", ".ts", ".js", ".mjs", ".cjs"];
|
|
52
|
+
const MAX_PACKAGE_JSON_BYTES = 2 * 1024 * 1024;
|
|
51
53
|
export function detectProjectStack(projectRoot) {
|
|
52
54
|
const packageJsonPath = path.join(projectRoot, "package.json");
|
|
53
55
|
const packageJson = readPackageJson(packageJsonPath);
|
|
@@ -63,15 +65,19 @@ export function detectProjectStack(projectRoot) {
|
|
|
63
65
|
: deps["react"]
|
|
64
66
|
? "react"
|
|
65
67
|
: "unknown",
|
|
66
|
-
language: deps["typescript"] ||
|
|
68
|
+
language: deps["typescript"] || isRegularFileWithoutSymlink(path.join(projectRoot, "tsconfig.json"))
|
|
67
69
|
? "typescript"
|
|
68
70
|
: "unknown"
|
|
69
71
|
};
|
|
70
72
|
}
|
|
71
73
|
function readPackageJson(packageJsonPath) {
|
|
72
|
-
if (!
|
|
74
|
+
if (!isRegularFileWithoutSymlink(packageJsonPath)) {
|
|
73
75
|
return {};
|
|
74
76
|
}
|
|
77
|
+
const stat = fs.statSync(packageJsonPath);
|
|
78
|
+
if (stat.size > MAX_PACKAGE_JSON_BYTES) {
|
|
79
|
+
throw new Error(`${path.basename(packageJsonPath)} exceeds ${MAX_PACKAGE_JSON_BYTES} bytes.`);
|
|
80
|
+
}
|
|
75
81
|
try {
|
|
76
82
|
return JSON.parse(fs.readFileSync(packageJsonPath, "utf8"));
|
|
77
83
|
}
|
|
@@ -82,7 +88,7 @@ function readPackageJson(packageJsonPath) {
|
|
|
82
88
|
}
|
|
83
89
|
export function discoverProjectSurface(projectRoot) {
|
|
84
90
|
const sourceRoots = SOURCE_ROOT_CANDIDATES.filter((candidate) => directoryHasFiles(path.join(projectRoot, candidate)));
|
|
85
|
-
const entryFiles = ENTRY_FILE_CANDIDATES.filter((candidate) =>
|
|
91
|
+
const entryFiles = ENTRY_FILE_CANDIDATES.filter((candidate) => isRegularFileWithoutSymlink(path.join(projectRoot, candidate)));
|
|
86
92
|
const fileExtensions = EXTENSION_PRIORITY.filter((extension) => sourceRoots.some((root) => hasExtensionInDirectory(path.join(projectRoot, root), extension)));
|
|
87
93
|
return {
|
|
88
94
|
sourceRoots,
|
|
@@ -129,47 +135,56 @@ function chooseSourceRoot(sourceRoots, scope) {
|
|
|
129
135
|
return preferredRoots[0] ?? sourceRoots[0] ?? "src";
|
|
130
136
|
}
|
|
131
137
|
function detectPackageManager(projectRoot, packageJson) {
|
|
132
|
-
const declared = packageJson.packageManager
|
|
138
|
+
const declared = typeof packageJson.packageManager === "string"
|
|
139
|
+
? packageJson.packageManager.split("@", 1)[0]
|
|
140
|
+
: undefined;
|
|
133
141
|
if (declared && ["npm", "pnpm", "yarn", "bun"].includes(declared)) {
|
|
134
142
|
return declared;
|
|
135
143
|
}
|
|
136
|
-
if (
|
|
144
|
+
if (isRegularFileWithoutSymlink(path.join(projectRoot, "pnpm-lock.yaml"))) {
|
|
137
145
|
return "pnpm";
|
|
138
146
|
}
|
|
139
|
-
if (
|
|
147
|
+
if (isRegularFileWithoutSymlink(path.join(projectRoot, "yarn.lock"))) {
|
|
140
148
|
return "yarn";
|
|
141
149
|
}
|
|
142
|
-
if (
|
|
150
|
+
if (isRegularFileWithoutSymlink(path.join(projectRoot, "bun.lock")) || isRegularFileWithoutSymlink(path.join(projectRoot, "bun.lockb"))) {
|
|
143
151
|
return "bun";
|
|
144
152
|
}
|
|
145
|
-
if (
|
|
153
|
+
if (isRegularFileWithoutSymlink(path.join(projectRoot, "package-lock.json"))) {
|
|
146
154
|
return "npm";
|
|
147
155
|
}
|
|
148
156
|
return "unknown";
|
|
149
157
|
}
|
|
150
158
|
function directoryHasFiles(directory) {
|
|
151
|
-
return
|
|
159
|
+
return hasMatchingFile(directory, 4, () => true);
|
|
152
160
|
}
|
|
153
161
|
function hasExtensionInDirectory(directory, extension) {
|
|
154
|
-
return
|
|
162
|
+
return hasMatchingFile(directory, 4, (file) => file.endsWith(extension));
|
|
155
163
|
}
|
|
156
|
-
function
|
|
157
|
-
if (
|
|
158
|
-
return
|
|
164
|
+
function hasMatchingFile(directory, maxDepth, accepts, depth = 0) {
|
|
165
|
+
if (depth > maxDepth) {
|
|
166
|
+
return false;
|
|
167
|
+
}
|
|
168
|
+
const directoryStat = fs.lstatSync(directory, { throwIfNoEntry: false });
|
|
169
|
+
if (!directoryStat?.isDirectory()) {
|
|
170
|
+
return false;
|
|
159
171
|
}
|
|
160
172
|
const entries = fs.readdirSync(directory, { withFileTypes: true });
|
|
161
|
-
const files = [];
|
|
162
173
|
for (const entry of entries) {
|
|
163
174
|
const fullPath = path.join(directory, entry.name);
|
|
164
175
|
if (entry.isDirectory()) {
|
|
165
176
|
if (IGNORED_DIRECTORIES.has(entry.name)) {
|
|
166
177
|
continue;
|
|
167
178
|
}
|
|
168
|
-
|
|
179
|
+
if (hasMatchingFile(fullPath, maxDepth, accepts, depth + 1)) {
|
|
180
|
+
return true;
|
|
181
|
+
}
|
|
169
182
|
continue;
|
|
170
183
|
}
|
|
171
|
-
|
|
184
|
+
if (entry.isFile() && accepts(fullPath)) {
|
|
185
|
+
return true;
|
|
186
|
+
}
|
|
172
187
|
}
|
|
173
|
-
return
|
|
188
|
+
return false;
|
|
174
189
|
}
|
|
175
190
|
//# sourceMappingURL=project-discovery.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-discovery.js","sourceRoot":"","sources":["../../src/runtime/project-discovery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAoBlD,MAAM,sBAAsB,GAAG;IAC7B,WAAW;IACX,SAAS;IACT,gBAAgB;IAChB,WAAW;IACX,cAAc;IACd,KAAK;IACL,KAAK;IACL,OAAO;IACP,YAAY;IACZ,OAAO;IACP,UAAU;CACX,CAAC;AAEF,MAAM,qBAAqB,GAAG;IAC5B,cAAc;IACd,aAAa;IACb,cAAc;IACd,aAAa;IACb,eAAe;IACf,cAAc;IACd,eAAe;IACf,cAAc;IACd,aAAa;IACb,aAAa;IACb,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,cAAc;IACd,aAAa;IACb,cAAc;IACd,aAAa;IACb,cAAc;IACd,aAAa;IACb,cAAc;IACd,aAAa;CACd,CAAC;AAEF,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,mBAAmB;IACnB,MAAM;IACN,OAAO;IACP,UAAU;IACV,MAAM;IACN,cAAc;IACd,QAAQ;IACR,QAAQ;CACT,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"project-discovery.js","sourceRoot":"","sources":["../../src/runtime/project-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,9 @@ export function normalizeProjectRelativePath(value, label) {
|
|
|
6
6
|
if (path.isAbsolute(value)) {
|
|
7
7
|
throw new Error(`${label} must be a project-relative path`);
|
|
8
8
|
}
|
|
9
|
+
if (/^[A-Za-z]:/.test(value)) {
|
|
10
|
+
throw new Error(`${label} must be a project-relative path`);
|
|
11
|
+
}
|
|
9
12
|
if (value.includes("\\")) {
|
|
10
13
|
throw new Error(`${label} must use POSIX-style relative paths`);
|
|
11
14
|
}
|
|
@@ -38,6 +41,9 @@ export function normalizeHarnessRelativePath(value, label) {
|
|
|
38
41
|
if (path.isAbsolute(value)) {
|
|
39
42
|
throw new Error(`${label} must be a project-relative path`);
|
|
40
43
|
}
|
|
44
|
+
if (/^[A-Za-z]:/.test(value)) {
|
|
45
|
+
throw new Error(`${label} must be a project-relative path`);
|
|
46
|
+
}
|
|
41
47
|
if (value.includes("\\")) {
|
|
42
48
|
throw new Error(`${label} must use POSIX-style relative paths`);
|
|
43
49
|
}
|
|
@@ -63,7 +69,7 @@ export function isProjectRelativeSubpath(value, subtree) {
|
|
|
63
69
|
if (value.includes("\0") || value.includes("\\")) {
|
|
64
70
|
return false;
|
|
65
71
|
}
|
|
66
|
-
if (/^[A-Za-z]
|
|
72
|
+
if (/^[A-Za-z]:/.test(value)) {
|
|
67
73
|
return false;
|
|
68
74
|
}
|
|
69
75
|
if (path.isAbsolute(value)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-paths.js","sourceRoot":"","sources":["../../src/runtime/project-paths.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,UAAU,4BAA4B,CAAC,KAAa,EAAE,KAAa;IACvE,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,4BAA4B,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,kCAAkC,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,sCAAsC,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/C,IACE,UAAU,KAAK,GAAG;QAClB,UAAU,KAAK,IAAI;QACnB,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC;QAC5B,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EACxB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,uCAAuC,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,IAAI,YAAY,KAAK,mBAAmB,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,+CAA+C,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,WAAmB,EACnB,KAAa,EACb,KAAa;IAEb,MAAM,YAAY,GAAG,4BAA4B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IACzD,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC9D,IAAI,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,oCAAoC,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,KAAa,EAAE,KAAa;IACvE,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,4BAA4B,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,kCAAkC,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,sCAAsC,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/C,IACE,UAAU,KAAK,GAAG;QAClB,UAAU,KAAK,IAAI;QACnB,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC;QAC5B,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EACxB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,uCAAuC,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,WAAmB,EACnB,KAAa,EACb,KAAa;IAEb,MAAM,YAAY,GAAG,4BAA4B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IACzD,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC9D,IAAI,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,oCAAoC,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAa,EAAE,OAAe;IACrE,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACjD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,
|
|
1
|
+
{"version":3,"file":"project-paths.js","sourceRoot":"","sources":["../../src/runtime/project-paths.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import fs from "node:fs";
|
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { createHash } from "node:crypto";
|
|
4
4
|
import { harnessPath, relativeHarnessPath } from "../storage/paths.js";
|
|
5
|
-
import { writeJson } from "../storage/json.js";
|
|
5
|
+
import { isDirectoryWithoutSymlink, isRegularFileWithoutSymlink, writeJson, writeText } from "../storage/json.js";
|
|
6
6
|
import { builtinProjectSkills } from "./builtin-skills.js";
|
|
7
7
|
import { projectScriptCommand, protocolUsefulCommandLines } from "./command-taxonomy.js";
|
|
8
8
|
const blockStart = "<!-- frontend-harness:managed:start -->";
|
|
@@ -11,6 +11,8 @@ const protocolInitResultKeys = new Set(["contractVersion", "createdAt", "project
|
|
|
11
11
|
const protocolArtifactsKeys = new Set(["protocol", "skillsRoot"]);
|
|
12
12
|
const protocolFileResultKeys = new Set(["path", "action", "sha256", "managedBlockSha256", "managedBlockStart", "managedBlockEnd"]);
|
|
13
13
|
const protocolSkillResultKeys = new Set(["name", "path", "action", "sha256"]);
|
|
14
|
+
const MAX_PROTOCOL_FILE_BYTES = 2 * 1024 * 1024;
|
|
15
|
+
const MAX_PROTOCOL_ARTIFACT_BYTES = 2 * 1024 * 1024;
|
|
14
16
|
export function initializeProtocol(projectRoot, options = {}) {
|
|
15
17
|
const createdAt = new Date().toISOString();
|
|
16
18
|
const dryRun = Boolean(options.dryRun);
|
|
@@ -44,19 +46,24 @@ export function initializeProtocol(projectRoot, options = {}) {
|
|
|
44
46
|
}
|
|
45
47
|
function upsertBuiltinProjectSkills(projectRoot, options) {
|
|
46
48
|
const skillsRoot = harnessPath(projectRoot, "skills");
|
|
49
|
+
if (pathExists(skillsRoot) && !isDirectoryWithoutSymlink(skillsRoot)) {
|
|
50
|
+
throw new Error(`Refusing to update protocol skills through unsafe directory: ${relativeHarnessPath("skills")}`);
|
|
51
|
+
}
|
|
47
52
|
return builtinProjectSkills.map((skill) => {
|
|
48
53
|
const relativePath = relativeHarnessPath("skills", skill.fileName);
|
|
49
54
|
const fullPath = path.join(skillsRoot, skill.fileName);
|
|
50
|
-
const exists =
|
|
51
|
-
|
|
55
|
+
const exists = isRegularFileWithoutSymlink(fullPath);
|
|
56
|
+
if (pathExists(fullPath) && !exists) {
|
|
57
|
+
throw new Error(`Refusing to update symlinked protocol skill: ${relativePath}`);
|
|
58
|
+
}
|
|
59
|
+
const content = exists ? readProtocolTextFile(fullPath, relativePath) : "";
|
|
52
60
|
const action = !exists
|
|
53
61
|
? "created"
|
|
54
62
|
: content === skill.content
|
|
55
63
|
? "unchanged"
|
|
56
64
|
: "updated";
|
|
57
65
|
if (action !== "unchanged" && !options.dryRun) {
|
|
58
|
-
|
|
59
|
-
fs.writeFileSync(fullPath, skill.content, "utf8");
|
|
66
|
+
writeText(fullPath, skill.content);
|
|
60
67
|
}
|
|
61
68
|
return {
|
|
62
69
|
name: skill.name,
|
|
@@ -74,7 +81,8 @@ export function checkProtocol(projectRoot) {
|
|
|
74
81
|
checkProtocolFile(projectRoot, "CLAUDE.md")
|
|
75
82
|
];
|
|
76
83
|
const skills = checkProtocolSkills(projectRoot);
|
|
77
|
-
const
|
|
84
|
+
const artifactStat = safeLstat(fullArtifactPath);
|
|
85
|
+
const artifactExists = Boolean(artifactStat);
|
|
78
86
|
const initialized = artifactExists
|
|
79
87
|
|| files.some((file) => file.exists || file.hasManagedBlock)
|
|
80
88
|
|| skills.some((skill) => skill.exists);
|
|
@@ -98,6 +106,9 @@ export function checkProtocol(projectRoot) {
|
|
|
98
106
|
if (!artifactExists) {
|
|
99
107
|
errors.push(`Protocol provenance artifact is missing; rerun ${projectScriptCommand("frontend-harness init --json")}.`);
|
|
100
108
|
}
|
|
109
|
+
else if (!artifactStat?.isFile()) {
|
|
110
|
+
errors.push(`Protocol provenance artifact is not a regular file; rerun ${projectScriptCommand("frontend-harness init --json")}.`);
|
|
111
|
+
}
|
|
101
112
|
else {
|
|
102
113
|
const provenance = readProtocolArtifact(fullArtifactPath, errors);
|
|
103
114
|
provenanceCurrent = provenance !== null && checkProtocolProvenance(provenance, files, skills, errors);
|
|
@@ -139,15 +150,19 @@ export function checkProtocol(projectRoot) {
|
|
|
139
150
|
}
|
|
140
151
|
function upsertProtocolFile(projectRoot, fileName, options) {
|
|
141
152
|
const fullPath = path.join(projectRoot, fileName);
|
|
142
|
-
const
|
|
153
|
+
const exists = isRegularFileWithoutSymlink(fullPath);
|
|
154
|
+
if (pathExists(fullPath) && !exists) {
|
|
155
|
+
throw new Error(`Refusing to update symlinked protocol file: ${fileName}`);
|
|
156
|
+
}
|
|
157
|
+
const existing = exists ? readProtocolTextFile(fullPath, fileName) : "";
|
|
143
158
|
const nextContent = replaceManagedBlock(existing, renderManagedBlock(fileName));
|
|
144
|
-
const action = !
|
|
159
|
+
const action = !exists
|
|
145
160
|
? "created"
|
|
146
161
|
: existing === nextContent
|
|
147
162
|
? "unchanged"
|
|
148
163
|
: "updated";
|
|
149
164
|
if (action !== "unchanged" && !options.dryRun) {
|
|
150
|
-
|
|
165
|
+
writeText(fullPath, nextContent);
|
|
151
166
|
}
|
|
152
167
|
const persisted = action === "unchanged" ? existing : nextContent;
|
|
153
168
|
const managedBlock = renderManagedBlock(fileName);
|
|
@@ -162,7 +177,8 @@ function upsertProtocolFile(projectRoot, fileName, options) {
|
|
|
162
177
|
}
|
|
163
178
|
function checkProtocolFile(projectRoot, fileName) {
|
|
164
179
|
const fullPath = path.join(projectRoot, fileName);
|
|
165
|
-
|
|
180
|
+
const stat = safeLstat(fullPath);
|
|
181
|
+
if (!stat) {
|
|
166
182
|
return {
|
|
167
183
|
path: fileName,
|
|
168
184
|
exists: false,
|
|
@@ -172,13 +188,34 @@ function checkProtocolFile(projectRoot, fileName) {
|
|
|
172
188
|
managedBlockSha256: null
|
|
173
189
|
};
|
|
174
190
|
}
|
|
191
|
+
if (!stat.isFile()) {
|
|
192
|
+
return {
|
|
193
|
+
path: fileName,
|
|
194
|
+
exists: true,
|
|
195
|
+
hasManagedBlock: false,
|
|
196
|
+
managedBlockCurrent: false,
|
|
197
|
+
sha256: null,
|
|
198
|
+
managedBlockSha256: null
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
if (stat.size > MAX_PROTOCOL_FILE_BYTES) {
|
|
202
|
+
return {
|
|
203
|
+
path: fileName,
|
|
204
|
+
exists: true,
|
|
205
|
+
hasManagedBlock: false,
|
|
206
|
+
managedBlockCurrent: false,
|
|
207
|
+
sha256: null,
|
|
208
|
+
managedBlockSha256: null
|
|
209
|
+
};
|
|
210
|
+
}
|
|
175
211
|
const content = fs.readFileSync(fullPath, "utf8");
|
|
176
|
-
const
|
|
212
|
+
const managedBlocks = extractManagedBlocks(content);
|
|
213
|
+
const managedBlock = managedBlocks[0] ?? null;
|
|
177
214
|
return {
|
|
178
215
|
path: fileName,
|
|
179
216
|
exists: true,
|
|
180
217
|
hasManagedBlock: managedBlock !== null,
|
|
181
|
-
managedBlockCurrent: managedBlock === renderManagedBlock(fileName),
|
|
218
|
+
managedBlockCurrent: managedBlocks.length === 1 && managedBlock === renderManagedBlock(fileName),
|
|
182
219
|
sha256: sha256(content),
|
|
183
220
|
managedBlockSha256: managedBlock === null ? null : sha256(managedBlock)
|
|
184
221
|
};
|
|
@@ -188,11 +225,22 @@ function checkProtocolSkills(projectRoot) {
|
|
|
188
225
|
return builtinProjectSkills.map((skill) => {
|
|
189
226
|
const relativePath = relativeHarnessPath("skills", skill.fileName);
|
|
190
227
|
const fullPath = path.join(skillsRoot, skill.fileName);
|
|
191
|
-
if (!
|
|
228
|
+
if (!isRegularFileWithoutSymlink(fullPath)) {
|
|
229
|
+
const exists = pathExists(fullPath);
|
|
192
230
|
return {
|
|
193
231
|
name: skill.name,
|
|
194
232
|
path: relativePath,
|
|
195
|
-
exists
|
|
233
|
+
exists,
|
|
234
|
+
current: false,
|
|
235
|
+
sha256: null
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
const stat = safeLstat(fullPath);
|
|
239
|
+
if (!stat?.isFile() || stat.size > MAX_PROTOCOL_FILE_BYTES) {
|
|
240
|
+
return {
|
|
241
|
+
name: skill.name,
|
|
242
|
+
path: relativePath,
|
|
243
|
+
exists: true,
|
|
196
244
|
current: false,
|
|
197
245
|
sha256: null
|
|
198
246
|
};
|
|
@@ -210,6 +258,11 @@ function checkProtocolSkills(projectRoot) {
|
|
|
210
258
|
function readProtocolArtifact(filePath, errors) {
|
|
211
259
|
let parsed;
|
|
212
260
|
try {
|
|
261
|
+
const stat = safeLstat(filePath);
|
|
262
|
+
if (!stat || stat.size > MAX_PROTOCOL_ARTIFACT_BYTES) {
|
|
263
|
+
errors.push(`Protocol provenance artifact exceeds ${MAX_PROTOCOL_ARTIFACT_BYTES} bytes; rerun ${projectScriptCommand("frontend-harness init --json")}.`);
|
|
264
|
+
return null;
|
|
265
|
+
}
|
|
213
266
|
parsed = JSON.parse(fs.readFileSync(filePath, "utf8"));
|
|
214
267
|
}
|
|
215
268
|
catch (error) {
|
|
@@ -223,6 +276,13 @@ function readProtocolArtifact(filePath, errors) {
|
|
|
223
276
|
}
|
|
224
277
|
return parsed;
|
|
225
278
|
}
|
|
279
|
+
function readProtocolTextFile(filePath, label) {
|
|
280
|
+
const stat = safeLstat(filePath);
|
|
281
|
+
if (!stat?.isFile() || stat.size > MAX_PROTOCOL_FILE_BYTES) {
|
|
282
|
+
throw new Error(`${label} exceeds ${MAX_PROTOCOL_FILE_BYTES} bytes.`);
|
|
283
|
+
}
|
|
284
|
+
return fs.readFileSync(filePath, "utf8");
|
|
285
|
+
}
|
|
226
286
|
function isProtocolInitResult(value) {
|
|
227
287
|
return isRecord(value)
|
|
228
288
|
&& hasOnlyKeys(value, protocolInitResultKeys)
|
|
@@ -266,6 +326,14 @@ function checkProtocolProvenance(provenance, files, skills, errors) {
|
|
|
266
326
|
return false;
|
|
267
327
|
}
|
|
268
328
|
let current = true;
|
|
329
|
+
if (provenance.artifacts.protocol !== relativeHarnessPath("protocol", "latest.json")) {
|
|
330
|
+
errors.push(`Protocol provenance artifact path is stale; rerun ${projectScriptCommand("frontend-harness init --json")}.`);
|
|
331
|
+
current = false;
|
|
332
|
+
}
|
|
333
|
+
if (provenance.artifacts.skillsRoot !== relativeHarnessPath("skills")) {
|
|
334
|
+
errors.push(`Protocol skills provenance root is stale; rerun ${projectScriptCommand("frontend-harness init --json")}.`);
|
|
335
|
+
current = false;
|
|
336
|
+
}
|
|
269
337
|
for (const file of files) {
|
|
270
338
|
const record = provenance.files.find((item) => item.path === file.path);
|
|
271
339
|
if (!record) {
|
|
@@ -296,9 +364,16 @@ function replaceManagedBlock(content, block) {
|
|
|
296
364
|
if (!content.trim()) {
|
|
297
365
|
return `${block}\n`;
|
|
298
366
|
}
|
|
299
|
-
const pattern = new RegExp(`${escapeRegExp(blockStart)}[\\s\\S]*?${escapeRegExp(blockEnd)}
|
|
367
|
+
const pattern = new RegExp(`${escapeRegExp(blockStart)}[\\s\\S]*?${escapeRegExp(blockEnd)}`, "g");
|
|
300
368
|
if (pattern.test(content)) {
|
|
301
|
-
|
|
369
|
+
let replaced = false;
|
|
370
|
+
return ensureTrailingNewline(content.replace(pattern, () => {
|
|
371
|
+
if (replaced) {
|
|
372
|
+
return "";
|
|
373
|
+
}
|
|
374
|
+
replaced = true;
|
|
375
|
+
return block;
|
|
376
|
+
}));
|
|
302
377
|
}
|
|
303
378
|
return `${ensureTrailingNewline(content)}\n${block}\n`;
|
|
304
379
|
}
|
|
@@ -371,9 +446,9 @@ function renderManagedBlock(fileName) {
|
|
|
371
446
|
blockEnd
|
|
372
447
|
].join("\n");
|
|
373
448
|
}
|
|
374
|
-
function
|
|
375
|
-
const pattern = new RegExp(`${escapeRegExp(blockStart)}[\\s\\S]*?${escapeRegExp(blockEnd)}
|
|
376
|
-
return content.match(pattern)
|
|
449
|
+
function extractManagedBlocks(content) {
|
|
450
|
+
const pattern = new RegExp(`${escapeRegExp(blockStart)}[\\s\\S]*?${escapeRegExp(blockEnd)}`, "g");
|
|
451
|
+
return content.match(pattern) ?? [];
|
|
377
452
|
}
|
|
378
453
|
function ensureTrailingNewline(content) {
|
|
379
454
|
return content.endsWith("\n") ? content : `${content}\n`;
|
|
@@ -390,4 +465,15 @@ function isRecord(value) {
|
|
|
390
465
|
function hasOnlyKeys(value, allowedKeys) {
|
|
391
466
|
return Object.keys(value).every((key) => allowedKeys.has(key));
|
|
392
467
|
}
|
|
468
|
+
function pathExists(filePath) {
|
|
469
|
+
return Boolean(safeLstat(filePath));
|
|
470
|
+
}
|
|
471
|
+
function safeLstat(filePath) {
|
|
472
|
+
try {
|
|
473
|
+
return fs.lstatSync(filePath, { throwIfNoEntry: false });
|
|
474
|
+
}
|
|
475
|
+
catch {
|
|
476
|
+
return undefined;
|
|
477
|
+
}
|
|
478
|
+
}
|
|
393
479
|
//# sourceMappingURL=protocol-init.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol-init.js","sourceRoot":"","sources":["../../src/runtime/protocol-init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protocol-init.js","sourceRoot":"","sources":["../../src/runtime/protocol-init.ts"],"names":[],"mappings":"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"}
|