frontend-harness 0.1.0 → 0.2.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.
Files changed (68) hide show
  1. package/AGENTS.md +9 -5
  2. package/CLAUDE.md +9 -5
  3. package/README.md +56 -11
  4. package/dist/cli/index.js +33 -7
  5. package/dist/cli/index.js.map +1 -1
  6. package/dist/runtime/clean.js +6 -1
  7. package/dist/runtime/clean.js.map +1 -1
  8. package/dist/runtime/command-taxonomy.js +4 -1
  9. package/dist/runtime/command-taxonomy.js.map +1 -1
  10. package/dist/runtime/common/naming.d.ts +2 -0
  11. package/dist/runtime/common/naming.js +13 -0
  12. package/dist/runtime/common/naming.js.map +1 -0
  13. package/dist/runtime/common/parsing.d.ts +11 -0
  14. package/dist/runtime/common/parsing.js +30 -0
  15. package/dist/runtime/common/parsing.js.map +1 -0
  16. package/dist/runtime/context.js +3 -2
  17. package/dist/runtime/context.js.map +1 -1
  18. package/dist/runtime/knowledge.js +16 -12
  19. package/dist/runtime/knowledge.js.map +1 -1
  20. package/dist/runtime/plan/component-resolver.d.ts +8 -0
  21. package/dist/runtime/plan/component-resolver.js +344 -0
  22. package/dist/runtime/plan/component-resolver.js.map +1 -0
  23. package/dist/runtime/plan/guidance.d.ts +3 -0
  24. package/dist/runtime/plan/guidance.js +119 -0
  25. package/dist/runtime/plan/guidance.js.map +1 -0
  26. package/dist/runtime/plan/proposal.d.ts +2 -0
  27. package/dist/runtime/plan/proposal.js +251 -0
  28. package/dist/runtime/plan/proposal.js.map +1 -0
  29. package/dist/runtime/plan/workflow.d.ts +8 -0
  30. package/dist/runtime/plan/workflow.js +228 -0
  31. package/dist/runtime/plan/workflow.js.map +1 -0
  32. package/dist/runtime/plan.d.ts +4 -3
  33. package/dist/runtime/plan.js +123 -448
  34. package/dist/runtime/plan.js.map +1 -1
  35. package/dist/runtime/policy-provenance.js +30 -17
  36. package/dist/runtime/policy-provenance.js.map +1 -1
  37. package/dist/runtime/project-discovery.js +12 -3
  38. package/dist/runtime/project-discovery.js.map +1 -1
  39. package/dist/runtime/project-paths.js +3 -0
  40. package/dist/runtime/project-paths.js.map +1 -1
  41. package/dist/runtime/protocol-init.js +7 -4
  42. package/dist/runtime/protocol-init.js.map +1 -1
  43. package/dist/runtime/repair-decision.js +14 -27
  44. package/dist/runtime/repair-decision.js.map +1 -1
  45. package/dist/runtime/repair-packet.js +8 -1
  46. package/dist/runtime/repair-packet.js.map +1 -1
  47. package/dist/runtime/scaffold/vue-template.d.ts +7 -0
  48. package/dist/runtime/scaffold/vue-template.js +167 -0
  49. package/dist/runtime/scaffold/vue-template.js.map +1 -0
  50. package/dist/runtime/scaffold.d.ts +21 -0
  51. package/dist/runtime/scaffold.js +80 -0
  52. package/dist/runtime/scaffold.js.map +1 -0
  53. package/dist/runtime/skills.js +3 -3
  54. package/dist/runtime/skills.js.map +1 -1
  55. package/dist/runtime/state.js +32 -16
  56. package/dist/runtime/state.js.map +1 -1
  57. package/dist/runtime/units.js +36 -1
  58. package/dist/runtime/units.js.map +1 -1
  59. package/dist/runtime/verification-commands.js +8 -4
  60. package/dist/runtime/verification-commands.js.map +1 -1
  61. package/dist/runtime/verify.js +76 -17
  62. package/dist/runtime/verify.js.map +1 -1
  63. package/dist/schemas/types.d.ts +64 -6
  64. package/dist/schemas/validation.js +4 -0
  65. package/dist/schemas/validation.js.map +1 -1
  66. package/dist/storage/json.js +6 -1
  67. package/dist/storage/json.js.map +1 -1
  68. package/package.json +3 -4
@@ -184,16 +184,17 @@ function parseKnowledgeFrontmatter(content) {
184
184
  sourcePaths: [],
185
185
  related: []
186
186
  };
187
- if (!content.startsWith("---\n")) {
187
+ if (!content.startsWith("---\n") && !content.startsWith("---\r\n")) {
188
188
  return { hasFrontmatter: false, metadata };
189
189
  }
190
- const endIndex = content.indexOf("\n---", 4);
190
+ const endIndex = content.search(/\r?\n---(?:\r?\n|$)/);
191
191
  if (endIndex < 0) {
192
192
  return { hasFrontmatter: false, metadata };
193
193
  }
194
194
  const listKeys = new Set(["scope", "tags", "source_paths", "related"]);
195
195
  let currentList = null;
196
- for (const line of content.slice(4, endIndex).split("\n")) {
196
+ const startIndex = content.startsWith("---\r\n") ? 5 : 4;
197
+ for (const line of content.slice(startIndex, endIndex).split(/\r?\n/)) {
197
198
  const trimmed = line.trim();
198
199
  if (!trimmed || trimmed.startsWith("#")) {
199
200
  continue;
@@ -261,15 +262,15 @@ function validateKnowledgeMetadata(relativePath, metadata) {
261
262
  function renderKnowledge(input) {
262
263
  const summary = firstBodyLine(input.body) ?? input.title;
263
264
  return `---
264
- id: ${input.id}
265
- type: ${input.type}
266
- title: ${input.title}
267
- summary: ${summary}
265
+ id: ${yamlScalar(input.id)}
266
+ type: ${yamlScalar(input.type)}
267
+ title: ${yamlScalar(input.title)}
268
+ summary: ${yamlScalar(summary)}
268
269
  scope:
269
270
  ${renderList(input.scope)}
270
- status: ${input.status}
271
- stability: ${input.stability}
272
- updated_at: ${input.createdAt}
271
+ status: ${yamlScalar(input.status)}
272
+ stability: ${yamlScalar(input.stability)}
273
+ updated_at: ${yamlScalar(input.createdAt)}
273
274
  source_paths:
274
275
  ${renderList(input.sourcePaths)}
275
276
  related: []
@@ -281,7 +282,7 @@ ${input.body}
281
282
  `;
282
283
  }
283
284
  function renderList(items) {
284
- return items.length ? items.map((item) => ` - ${item}`).join("\n") : " []";
285
+ return items.length ? items.map((item) => ` - ${yamlScalar(item)}`).join("\n") : " []";
285
286
  }
286
287
  function firstBodyLine(body) {
287
288
  return body
@@ -338,7 +339,10 @@ function slugify(value) {
338
339
  function formatKnowledgeStamp(createdAt) {
339
340
  return createdAt
340
341
  .replace(/[-:]/g, "")
341
- .replace(/\.\d{3}Z$/, "Z");
342
+ .replace(/\.(\d{3})Z$/, "$1Z");
343
+ }
344
+ function yamlScalar(value) {
345
+ return JSON.stringify(value);
342
346
  }
343
347
  function safeRead(filePath) {
344
348
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/runtime/knowledge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/runtime/knowledge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { AgentDecisionComponentHint, ComponentItem, PlanComponentHintTrace, TaskUnderstanding } from "../../schemas/types.js";
2
+ export interface ComponentResolution {
3
+ components: ComponentItem[];
4
+ trace: PlanComponentHintTrace;
5
+ }
6
+ export declare function inferPlanComponents(projectRoot: string, task: TaskUnderstanding, evidenceTargets?: string[]): ComponentItem[];
7
+ export declare function resolvePlanComponents(projectRoot: string, systemComponents: ComponentItem[], hints: AgentDecisionComponentHint[] | undefined, task: TaskUnderstanding, warnings: string[]): ComponentResolution;
8
+ export declare function resolveComponentSource(trace: PlanComponentHintTrace): "system" | "agent" | "merged";
@@ -0,0 +1,344 @@
1
+ import path from "node:path";
2
+ import { toPascalCase } from "../common/naming.js";
3
+ import { resolveComponentPlacement } from "../project-discovery.js";
4
+ const COMPONENT_HINT_POLICY = {
5
+ expandMinWeight: 0.7,
6
+ mergeMinConfidence: 0.6
7
+ };
8
+ export function inferPlanComponents(projectRoot, task, evidenceTargets = []) {
9
+ const workflowKind = task.frontendWorkflow?.kind;
10
+ if (evidenceTargets.length && acceptsEvidenceTargets(workflowKind)) {
11
+ return evidenceTargets.map((target, index) => targetComponent(target, index, workflowKind));
12
+ }
13
+ switch (workflowKind) {
14
+ case "ui_implementation":
15
+ return inferUiComponents(projectRoot, task);
16
+ case "frontend_review":
17
+ return [componentBoundary("ProjectReview", "src", "project review target", "existing")];
18
+ case "documentation":
19
+ return [componentBoundary("Documentation", inferDocumentationTarget(task), "documentation update boundary", "existing")];
20
+ case "maintenance":
21
+ return [componentBoundary("ProjectMaintenance", "project", "project maintenance boundary", "existing")];
22
+ case "bug_fix":
23
+ return [componentBoundary("BugFix", "project", "bug fix investigation boundary", "existing")];
24
+ case "prd_knowledge":
25
+ return [componentBoundary("PrdKnowledge", "project", "PRD knowledge boundary", "existing")];
26
+ case "api_integration":
27
+ return [componentBoundary("ApiIntegration", "project", "API integration boundary", "existing")];
28
+ case "frontend_test":
29
+ return [componentBoundary("FrontendTest", "project", "frontend test boundary", "existing")];
30
+ case "requirement_change":
31
+ return [componentBoundary("RequirementChange", "project", "requirement change boundary", "existing")];
32
+ default:
33
+ return [componentBoundary("ProjectTask", "project", "project task boundary", "existing")];
34
+ }
35
+ }
36
+ export function resolvePlanComponents(projectRoot, systemComponents, hints, task, warnings) {
37
+ if (!hints?.length) {
38
+ return {
39
+ components: systemComponents,
40
+ trace: componentHintTrace(false, "none", 1, 0, 0, [{ type: "preserve_system_boundary" }])
41
+ };
42
+ }
43
+ const normalizedHints = normalizeComponentHints(hints);
44
+ switch (task.frontendWorkflow?.kind) {
45
+ case "ui_implementation":
46
+ return resolveComponentConstraints(projectRoot, systemComponents, buildUiComponentConstraints(systemComponents, normalizedHints, warnings), task);
47
+ case "documentation":
48
+ case "maintenance":
49
+ case "bug_fix":
50
+ case "prd_knowledge":
51
+ case "api_integration":
52
+ case "frontend_test":
53
+ case "frontend_review":
54
+ case "requirement_change":
55
+ default:
56
+ warnings.push(`agent componentHints ignored for ${task.frontendWorkflow?.kind ?? "unknown"} workflow`);
57
+ return {
58
+ components: systemComponents,
59
+ trace: componentHintTrace(false, "ignore", 0, 0, normalizedHints.length, [
60
+ { type: "preserve_system_boundary" },
61
+ ...normalizedHints.map((hint, index) => ({
62
+ type: "reject_hint",
63
+ index,
64
+ hint,
65
+ reason: `componentHints are not structural inputs for ${task.frontendWorkflow?.kind ?? "unknown"} workflow`,
66
+ confidence: 0
67
+ }))
68
+ ])
69
+ };
70
+ }
71
+ }
72
+ export function resolveComponentSource(trace) {
73
+ if (trace.strategy === "expand") {
74
+ return "agent";
75
+ }
76
+ if (trace.strategy === "merge") {
77
+ return "merged";
78
+ }
79
+ return "system";
80
+ }
81
+ function inferUiComponents(projectRoot, task) {
82
+ const baseName = toPascalCase(task.scope) || "PlannedComponent";
83
+ const placement = resolveComponentPlacement(projectRoot, task.scope);
84
+ const componentKinds = inferComponentKinds(task.scope);
85
+ return componentKinds.map((kind) => {
86
+ const name = componentName(baseName, kind.suffix);
87
+ return {
88
+ name,
89
+ file: `${placement.sourceRoot}/${name}${placement.extension}`,
90
+ responsibility: task.intent === "fix_bug" ? "bug fix target" : kind.responsibility,
91
+ status: "unknown"
92
+ };
93
+ });
94
+ }
95
+ function acceptsEvidenceTargets(kind) {
96
+ switch (kind) {
97
+ case "documentation":
98
+ case "maintenance":
99
+ case "bug_fix":
100
+ case "prd_knowledge":
101
+ case "api_integration":
102
+ case "frontend_test":
103
+ case "frontend_review":
104
+ case "requirement_change":
105
+ return true;
106
+ case "ui_implementation":
107
+ default:
108
+ return false;
109
+ }
110
+ }
111
+ function targetComponent(target, index, kind) {
112
+ return {
113
+ name: targetComponentName(target, index),
114
+ file: target,
115
+ responsibility: `${kind ?? "project"} target boundary`,
116
+ status: "unknown"
117
+ };
118
+ }
119
+ function componentBoundary(name, file, responsibility, status) {
120
+ return { name, file, responsibility, status };
121
+ }
122
+ function targetComponentName(target, index) {
123
+ const base = path.basename(target).replace(/\.[^.]+$/, "");
124
+ return toPascalCase(base) || `ProposalTarget${index + 1}`;
125
+ }
126
+ function inferDocumentationTarget(task) {
127
+ const normalized = task.scope.toLowerCase();
128
+ if (/\breadme\b/.test(normalized)) {
129
+ return "README.md";
130
+ }
131
+ if (/\bagents\.md\b/.test(normalized)) {
132
+ return "AGENTS.md";
133
+ }
134
+ if (/\bclaude\.md\b/.test(normalized)) {
135
+ return "CLAUDE.md";
136
+ }
137
+ return "docs";
138
+ }
139
+ function buildUiComponentConstraints(systemComponents, hints, warnings) {
140
+ if (systemComponents.length === 1 && hints.length > 1 && hints.every((hint) => hint.weight >= COMPONENT_HINT_POLICY.expandMinWeight)) {
141
+ return [
142
+ { type: "preserve_system_boundary" },
143
+ { type: "allow_agent_expand", hints, confidence: averageConfidence(hints.map((hint) => hint.weight)) }
144
+ ];
145
+ }
146
+ const constraints = [{ type: "preserve_system_boundary" }];
147
+ hints.forEach((hint, index) => {
148
+ const component = systemComponents[index];
149
+ if (!component) {
150
+ constraints.push({ type: "reject_hint", index, hint, reason: "no matching system boundary", confidence: 0 });
151
+ return;
152
+ }
153
+ const confidence = computeHintConfidence(hint, component);
154
+ if (confidence < COMPONENT_HINT_POLICY.mergeMinConfidence) {
155
+ warnings.push(`low-confidence componentHint ignored: ${hint.name}`);
156
+ constraints.push({ type: "reject_hint", index, hint, reason: "low confidence", confidence });
157
+ return;
158
+ }
159
+ constraints.push({ type: "prefer_component", index, hint, confidence });
160
+ });
161
+ return constraints;
162
+ }
163
+ function buildConstraintTrace(constraints) {
164
+ return constraints.map((constraint) => {
165
+ if (constraint.type === "preserve_system_boundary") {
166
+ return { type: constraint.type, outcome: "preserved" };
167
+ }
168
+ if (constraint.type === "reject_hint") {
169
+ return {
170
+ type: constraint.type,
171
+ outcome: "rejected",
172
+ reason: constraint.reason,
173
+ confidence: constraint.confidence
174
+ };
175
+ }
176
+ return {
177
+ type: constraint.type,
178
+ outcome: "accepted",
179
+ confidence: constraint.confidence
180
+ };
181
+ });
182
+ }
183
+ function resolveComponentConstraints(projectRoot, systemComponents, constraints, task) {
184
+ const expandConstraint = constraints.find((constraint) => {
185
+ return constraint.type === "allow_agent_expand";
186
+ });
187
+ if (expandConstraint) {
188
+ const placement = resolveComponentPlacement(projectRoot, task.scope);
189
+ const baseFile = systemComponents[0]?.file ?? `${placement.sourceRoot}/PlannedComponent${placement.extension}`;
190
+ return {
191
+ components: expandConstraint.hints.map((hint) => componentFromHint(baseFile, hint)),
192
+ trace: componentHintTrace(true, "expand", expandConstraint.confidence, expandConstraint.hints.length, rejectedConstraintCount(constraints), constraints)
193
+ };
194
+ }
195
+ const preferConstraints = constraints.filter((constraint) => {
196
+ return constraint.type === "prefer_component";
197
+ });
198
+ const rejectedHints = rejectedConstraintCount(constraints);
199
+ if (!preferConstraints.length) {
200
+ return {
201
+ components: systemComponents,
202
+ trace: componentHintTrace(false, rejectedHints > 0 ? "ignore" : "none", averageConfidence(rejectedConfidenceScores(constraints)), 0, rejectedHints, constraints)
203
+ };
204
+ }
205
+ const components = systemComponents.map((component, index) => {
206
+ const constraint = preferConstraints.find((item) => item.index === index);
207
+ return constraint ? applyPreferredComponent(component, constraint.hint) : component;
208
+ });
209
+ return {
210
+ components,
211
+ trace: componentHintTrace(true, "merge", averageConfidence(preferConstraints.map((constraint) => constraint.confidence)), preferConstraints.length, rejectedHints, constraints)
212
+ };
213
+ }
214
+ function componentFromHint(baseFile, hint) {
215
+ return {
216
+ name: hint.name,
217
+ file: deriveFileFromBase(baseFile, hint.name),
218
+ responsibility: hint.responsibility,
219
+ status: "unknown"
220
+ };
221
+ }
222
+ function applyPreferredComponent(component, hint) {
223
+ return {
224
+ ...component,
225
+ name: hint.name,
226
+ file: deriveFileFromBase(component.file, hint.name),
227
+ responsibility: hint.responsibility
228
+ };
229
+ }
230
+ function rejectedConstraintCount(constraints) {
231
+ return constraints.filter((constraint) => constraint.type === "reject_hint").length;
232
+ }
233
+ function rejectedConfidenceScores(constraints) {
234
+ return constraints
235
+ .filter((constraint) => {
236
+ return constraint.type === "reject_hint";
237
+ })
238
+ .map((constraint) => constraint.confidence);
239
+ }
240
+ function normalizeComponentHints(hints) {
241
+ return hints.map((hint, index) => ({
242
+ name: sanitizeComponentName(hint.name, index),
243
+ responsibility: hint.responsibility?.trim() || "agent-suggested component",
244
+ weight: computeHintWeight(hint)
245
+ }));
246
+ }
247
+ function computeHintWeight(hint) {
248
+ let score = 0.5;
249
+ const name = hint.name?.trim() ?? "";
250
+ const responsibility = hint.responsibility?.trim() ?? "";
251
+ if (name.length >= 3) {
252
+ score += 0.15;
253
+ }
254
+ if (responsibility.length >= 12) {
255
+ score += 0.2;
256
+ }
257
+ if (/[A-Z]/.test(name[0] ?? "")) {
258
+ score += 0.1;
259
+ }
260
+ if (/\b(page|table|form|filter|modal|drawer|dashboard|view)\b/i.test(name)) {
261
+ score += 0.1;
262
+ }
263
+ return clampConfidence(score);
264
+ }
265
+ function computeHintConfidence(hint, system) {
266
+ let score = hint.weight;
267
+ const hintName = hint.name.toLowerCase();
268
+ const systemName = system.name.toLowerCase();
269
+ if (systemName.includes(hintName) || hintName.includes(systemName)) {
270
+ score += 0.15;
271
+ }
272
+ if (path.dirname(system.file) !== ".") {
273
+ score += 0.05;
274
+ }
275
+ return clampConfidence(score);
276
+ }
277
+ function componentHintTrace(used, strategy, confidence, acceptedHints, rejectedHints, constraints) {
278
+ return {
279
+ used,
280
+ strategy,
281
+ confidence: clampConfidence(confidence),
282
+ acceptedHints,
283
+ rejectedHints,
284
+ policy: {
285
+ expandMinWeight: COMPONENT_HINT_POLICY.expandMinWeight,
286
+ mergeMinConfidence: COMPONENT_HINT_POLICY.mergeMinConfidence
287
+ },
288
+ constraints: buildConstraintTrace(constraints)
289
+ };
290
+ }
291
+ function averageConfidence(values) {
292
+ if (!values.length) {
293
+ return 0;
294
+ }
295
+ return values.reduce((sum, value) => sum + value, 0) / values.length;
296
+ }
297
+ function clampConfidence(value) {
298
+ return Math.min(1, Math.max(0, Number(value.toFixed(2))));
299
+ }
300
+ function sanitizeComponentName(value, index) {
301
+ return toPascalCase(value ?? `AgentComponent${index + 1}`) || `AgentComponent${index + 1}`;
302
+ }
303
+ function deriveFileFromBase(baseFile, name) {
304
+ const slash = baseFile.lastIndexOf("/");
305
+ const dot = baseFile.lastIndexOf(".");
306
+ const dir = slash >= 0 ? baseFile.slice(0, slash) : "src";
307
+ const ext = dot > slash ? baseFile.slice(dot) : ".ts";
308
+ return `${dir}/${name}${ext}`;
309
+ }
310
+ function inferComponentKinds(scope) {
311
+ const normalized = scope.toLowerCase();
312
+ const asksForTable = /\b(table|grid|list)\b/.test(normalized);
313
+ const asksForForm = /\b(form|create|edit|filter|search)\b/.test(normalized);
314
+ const asksForPage = /\b(page|screen|dashboard|view)\b/.test(normalized);
315
+ if (asksForPage && asksForTable && asksForForm) {
316
+ return [
317
+ {
318
+ suffix: "Page",
319
+ responsibility: "page composition and data-flow boundary"
320
+ },
321
+ {
322
+ suffix: "Table",
323
+ responsibility: "tabular list rendering"
324
+ },
325
+ {
326
+ suffix: "Form",
327
+ responsibility: "form or filter interaction"
328
+ }
329
+ ];
330
+ }
331
+ return [
332
+ {
333
+ suffix: "",
334
+ responsibility: "planned UI/component implementation"
335
+ }
336
+ ];
337
+ }
338
+ function componentName(baseName, suffix) {
339
+ if (!suffix || baseName.endsWith(suffix)) {
340
+ return baseName;
341
+ }
342
+ return `${baseName}${suffix}`;
343
+ }
344
+ //# sourceMappingURL=component-resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-resolver.js","sourceRoot":"","sources":["../../../src/runtime/plan/component-resolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ComponentItem, ExecutionGuidanceStep, ExecutionUnit, PlanMeta, TaskUnderstanding } from "../../schemas/types.js";
2
+ export declare function buildExecutionGuidance(): ExecutionGuidanceStep[];
3
+ export declare function renderGuidance(task: TaskUnderstanding, components: ComponentItem[], units: ExecutionUnit[], executionGuidance: ExecutionGuidanceStep[], meta: PlanMeta): string;
@@ -0,0 +1,119 @@
1
+ import { relativeHarnessPath } from "../../storage/paths.js";
2
+ export function buildExecutionGuidance() {
3
+ return [
4
+ {
5
+ order: 1,
6
+ action: "inspect_plan",
7
+ description: `Read ${relativeHarnessPath("plans", "latest.json")} and ${relativeHarnessPath("execution-units", "latest.json")} before editing.`,
8
+ command: null,
9
+ condition: null
10
+ },
11
+ {
12
+ order: 2,
13
+ action: "edit_files",
14
+ description: "Edit only the project files required by the planned execution units.",
15
+ command: null,
16
+ condition: null
17
+ },
18
+ {
19
+ order: 3,
20
+ action: "record_changes",
21
+ description: "Record each changed project file so the harness state reflects the execution boundary.",
22
+ command: "frontend-harness state record-change <file>",
23
+ condition: "after editing"
24
+ },
25
+ {
26
+ order: 4,
27
+ action: "verify",
28
+ description: "Run the configured verification commands and inspect the JSON result.",
29
+ command: "frontend-harness verify --json",
30
+ condition: "after recording changes"
31
+ },
32
+ {
33
+ order: 5,
34
+ action: "fix_failed_verification",
35
+ description: `If verification fails, generate and inspect ${relativeHarnessPath("repair", "latest.json")} before patching the relevant project files, recording new changes, and rerunning verification.`,
36
+ command: "frontend-harness repair packet --json",
37
+ condition: "when verification status is failed or error"
38
+ }
39
+ ];
40
+ }
41
+ export function renderGuidance(task, components, units, executionGuidance, meta) {
42
+ return `# Agent Execution Guidance
43
+
44
+ ## Task
45
+
46
+ - Intent: ${task.intent}
47
+ - Scope: ${task.scope}
48
+
49
+ ## Frontend Workflow Policy
50
+
51
+ - Kind: ${task.frontendWorkflow?.kind ?? "unknown"}
52
+ - Summary: ${task.frontendWorkflow?.summary ?? "No workflow policy inferred."}
53
+ - Knowledge: ${(task.frontendWorkflow?.requiredKnowledgeActions ?? []).join(" ")}
54
+ - Verification focus: ${(task.frontendWorkflow?.verificationFocus ?? []).join(", ")}
55
+
56
+ ## Decision Trace
57
+
58
+ - Workflow: ${meta.decisionTrace.workflow.source}; ${meta.decisionTrace.workflow.reason}
59
+ - Targets: ${meta.decisionTrace.targets.source}; ${meta.decisionTrace.targets.reason}
60
+ - Components: ${meta.decisionTrace.components.source}; ${meta.decisionTrace.components.reason}
61
+ - Warnings: ${meta.warnings.length ? meta.warnings.join(" ") : "none"}
62
+
63
+ ## Project References
64
+
65
+ ${renderProjectReferences(task)}
66
+
67
+ ## Loop
68
+
69
+ ${executionGuidance.map(renderExecutionGuidanceStep).join("\n")}
70
+
71
+ ## Components
72
+
73
+ ${components.map((component) => `- ${component.name}: ${component.file} (${component.responsibility})`).join("\n")}
74
+
75
+ ## Units
76
+
77
+ ${units.map(renderUnitGuidance).join("\n")}
78
+ `;
79
+ }
80
+ function renderProjectReferences(task) {
81
+ const provenance = task.policyProvenance;
82
+ if (!provenance) {
83
+ return "- No project-local skills or knowledge selected.";
84
+ }
85
+ const lines = [];
86
+ if (provenance.skillRoutes.length) {
87
+ lines.push("Selected skills:");
88
+ for (const route of provenance.skillRoutes) {
89
+ lines.push(`- ${route.name}: ${route.path}; source: ${route.source}; score: ${route.score}; reasons: ${route.reasons.join(", ")}`);
90
+ }
91
+ }
92
+ else {
93
+ lines.push("Selected skills: none.");
94
+ }
95
+ if (provenance.knowledgeReferences.length) {
96
+ lines.push("Selected knowledge:");
97
+ for (const knowledgePath of provenance.knowledgeReferences) {
98
+ const sha256 = provenance.knowledgeSha256[knowledgePath];
99
+ lines.push(`- ${knowledgePath}${sha256 ? `; sha256: ${sha256}` : ""}`);
100
+ }
101
+ }
102
+ else {
103
+ lines.push("Selected knowledge: none.");
104
+ }
105
+ lines.push(`Selection reason: ${provenance.selectionReason}`);
106
+ return lines.join("\n");
107
+ }
108
+ function renderExecutionGuidanceStep(step) {
109
+ const command = step.command ? ` Command: \`${step.command}\`.` : "";
110
+ const condition = step.condition ? ` Condition: ${step.condition}.` : "";
111
+ return `${step.order}. ${step.description}${command}${condition}`;
112
+ }
113
+ function renderUnitGuidance(unit) {
114
+ const dependencies = JSON.stringify(unit.dependsOn);
115
+ const parallelGroup = JSON.stringify(unit.parallelGroup);
116
+ const independent = unit.dependsOn.length === 0;
117
+ return `- ${unit.id}: ${unit.task}; file ${unit.file}; independent: ${independent}; dependsOn: ${dependencies}; parallelGroup: ${parallelGroup}; verification focus: ${unit.verification.join(", ")}`;
118
+ }
119
+ //# sourceMappingURL=guidance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guidance.js","sourceRoot":"","sources":["../../../src/runtime/plan/guidance.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { AgentPlanningDecision } from "../../schemas/types.js";
2
+ export declare function readAgentPlanningProposal(projectRoot: string, file: string): AgentPlanningDecision;