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.
Files changed (65) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/README.md +3 -0
  3. package/dist/cli/index.js +20 -1
  4. package/dist/cli/index.js.map +1 -1
  5. package/dist/runtime/clean.js +24 -3
  6. package/dist/runtime/clean.js.map +1 -1
  7. package/dist/runtime/context.js +49 -5
  8. package/dist/runtime/context.js.map +1 -1
  9. package/dist/runtime/evidence.js +63 -8
  10. package/dist/runtime/evidence.js.map +1 -1
  11. package/dist/runtime/graph.js +11 -4
  12. package/dist/runtime/graph.js.map +1 -1
  13. package/dist/runtime/knowledge/constants.d.ts +9 -0
  14. package/dist/runtime/knowledge/constants.js +24 -0
  15. package/dist/runtime/knowledge/constants.js.map +1 -0
  16. package/dist/runtime/knowledge/core.d.ts +19 -0
  17. package/dist/runtime/knowledge/core.js +1264 -0
  18. package/dist/runtime/knowledge/core.js.map +1 -0
  19. package/dist/runtime/knowledge/types.d.ts +172 -0
  20. package/dist/runtime/knowledge/types.js +2 -0
  21. package/dist/runtime/knowledge/types.js.map +1 -0
  22. package/dist/runtime/knowledge.d.ts +2 -188
  23. package/dist/runtime/knowledge.js +1 -1126
  24. package/dist/runtime/knowledge.js.map +1 -1
  25. package/dist/runtime/plan/component-resolver.js +17 -6
  26. package/dist/runtime/plan/component-resolver.js.map +1 -1
  27. package/dist/runtime/plan/proposal.js +9 -0
  28. package/dist/runtime/plan/proposal.js.map +1 -1
  29. package/dist/runtime/plan.js +6 -4
  30. package/dist/runtime/plan.js.map +1 -1
  31. package/dist/runtime/policy-provenance.js +43 -5
  32. package/dist/runtime/policy-provenance.js.map +1 -1
  33. package/dist/runtime/project-discovery.js +32 -17
  34. package/dist/runtime/project-discovery.js.map +1 -1
  35. package/dist/runtime/project-paths.js +7 -1
  36. package/dist/runtime/project-paths.js.map +1 -1
  37. package/dist/runtime/protocol-init.js +105 -19
  38. package/dist/runtime/protocol-init.js.map +1 -1
  39. package/dist/runtime/repair-decision.js +76 -16
  40. package/dist/runtime/repair-decision.js.map +1 -1
  41. package/dist/runtime/repair-packet.js +55 -16
  42. package/dist/runtime/repair-packet.js.map +1 -1
  43. package/dist/runtime/scaffold/vue-template.js +1 -1
  44. package/dist/runtime/scaffold/vue-template.js.map +1 -1
  45. package/dist/runtime/scaffold.js +44 -8
  46. package/dist/runtime/scaffold.js.map +1 -1
  47. package/dist/runtime/skills.js +120 -18
  48. package/dist/runtime/skills.js.map +1 -1
  49. package/dist/runtime/state.js +49 -8
  50. package/dist/runtime/state.js.map +1 -1
  51. package/dist/runtime/units.js +11 -4
  52. package/dist/runtime/units.js.map +1 -1
  53. package/dist/runtime/verification-commands.js +95 -21
  54. package/dist/runtime/verification-commands.js.map +1 -1
  55. package/dist/runtime/verify.js +64 -18
  56. package/dist/runtime/verify.js.map +1 -1
  57. package/dist/runtime/visual-compare.js +104 -12
  58. package/dist/runtime/visual-compare.js.map +1 -1
  59. package/dist/schemas/validation.js +222 -6
  60. package/dist/schemas/validation.js.map +1 -1
  61. package/dist/storage/json.d.ts +9 -1
  62. package/dist/storage/json.js +106 -8
  63. package/dist/storage/json.js.map +1 -1
  64. package/docs/RELEASE.md +5 -1
  65. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"policy-provenance.js","sourceRoot":"","sources":["../../src/runtime/policy-provenance.ts"],"names":[],"mappings":"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"}
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"] || fs.existsSync(path.join(projectRoot, "tsconfig.json"))
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 (!fs.existsSync(packageJsonPath)) {
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) => fs.existsSync(path.join(projectRoot, 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?.split("@", 1)[0];
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 (fs.existsSync(path.join(projectRoot, "pnpm-lock.yaml"))) {
144
+ if (isRegularFileWithoutSymlink(path.join(projectRoot, "pnpm-lock.yaml"))) {
137
145
  return "pnpm";
138
146
  }
139
- if (fs.existsSync(path.join(projectRoot, "yarn.lock"))) {
147
+ if (isRegularFileWithoutSymlink(path.join(projectRoot, "yarn.lock"))) {
140
148
  return "yarn";
141
149
  }
142
- if (fs.existsSync(path.join(projectRoot, "bun.lock")) || fs.existsSync(path.join(projectRoot, "bun.lockb"))) {
150
+ if (isRegularFileWithoutSymlink(path.join(projectRoot, "bun.lock")) || isRegularFileWithoutSymlink(path.join(projectRoot, "bun.lockb"))) {
143
151
  return "bun";
144
152
  }
145
- if (fs.existsSync(path.join(projectRoot, "package-lock.json"))) {
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 listFiles(directory, 4).length > 0;
159
+ return hasMatchingFile(directory, 4, () => true);
152
160
  }
153
161
  function hasExtensionInDirectory(directory, extension) {
154
- return listFiles(directory, 4).some((file) => file.endsWith(extension));
162
+ return hasMatchingFile(directory, 4, (file) => file.endsWith(extension));
155
163
  }
156
- function listFiles(directory, maxDepth, depth = 0) {
157
- if (!fs.existsSync(directory) || depth > maxDepth) {
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
- files.push(...listFiles(fullPath, maxDepth, depth + 1));
179
+ if (hasMatchingFile(fullPath, maxDepth, accepts, depth + 1)) {
180
+ return true;
181
+ }
169
182
  continue;
170
183
  }
171
- files.push(fullPath);
184
+ if (entry.isFile() && accepts(fullPath)) {
185
+ return true;
186
+ }
172
187
  }
173
- return files;
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":"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"}
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]:[\\/]/.test(value)) {
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":"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"}
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 = fs.existsSync(fullPath);
51
- const content = exists ? fs.readFileSync(fullPath, "utf8") : "";
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
- fs.mkdirSync(path.dirname(fullPath), { recursive: true });
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 artifactExists = fs.existsSync(fullArtifactPath);
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 existing = fs.existsSync(fullPath) ? fs.readFileSync(fullPath, "utf8") : "";
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 = !fs.existsSync(fullPath)
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
- fs.writeFileSync(fullPath, nextContent, "utf8");
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
- if (!fs.existsSync(fullPath)) {
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 managedBlock = extractManagedBlock(content);
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 (!fs.existsSync(fullPath)) {
228
+ if (!isRegularFileWithoutSymlink(fullPath)) {
229
+ const exists = pathExists(fullPath);
192
230
  return {
193
231
  name: skill.name,
194
232
  path: relativePath,
195
- exists: false,
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
- return ensureTrailingNewline(content.replace(pattern, block));
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 extractManagedBlock(content) {
375
- const pattern = new RegExp(`${escapeRegExp(blockStart)}[\\s\\S]*?${escapeRegExp(blockEnd)}`);
376
- return content.match(pattern)?.[0] ?? null;
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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"}