specrails-core 5.4.0 → 5.5.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 (84) hide show
  1. package/README.md +2 -0
  2. package/dist/agent-runtime/capabilities.d.ts +3 -2
  3. package/dist/agent-runtime/capabilities.js +10 -2
  4. package/dist/agent-runtime/capabilities.js.map +1 -1
  5. package/dist/agent-runtime/cli-executor.js +10 -5
  6. package/dist/agent-runtime/cli-executor.js.map +1 -1
  7. package/dist/agent-runtime/cli-process.d.ts +1 -0
  8. package/dist/agent-runtime/cli-process.js +13 -2
  9. package/dist/agent-runtime/cli-process.js.map +1 -1
  10. package/dist/agent-runtime/cli.js +2 -1
  11. package/dist/agent-runtime/cli.js.map +1 -1
  12. package/dist/agent-runtime/compact/architect.d.ts +349 -0
  13. package/dist/agent-runtime/compact/architect.js +371 -0
  14. package/dist/agent-runtime/compact/architect.js.map +1 -0
  15. package/dist/agent-runtime/compact/chat-client.d.ts +83 -0
  16. package/dist/agent-runtime/compact/chat-client.js +307 -0
  17. package/dist/agent-runtime/compact/chat-client.js.map +1 -0
  18. package/dist/agent-runtime/compact/developer.d.ts +160 -0
  19. package/dist/agent-runtime/compact/developer.js +823 -0
  20. package/dist/agent-runtime/compact/developer.js.map +1 -0
  21. package/dist/agent-runtime/compact/environment.d.ts +62 -0
  22. package/dist/agent-runtime/compact/environment.js +213 -0
  23. package/dist/agent-runtime/compact/environment.js.map +1 -0
  24. package/dist/agent-runtime/compact/exit-code-honesty.d.ts +8 -0
  25. package/dist/agent-runtime/compact/exit-code-honesty.js +28 -0
  26. package/dist/agent-runtime/compact/exit-code-honesty.js.map +1 -0
  27. package/dist/agent-runtime/compact/guarded-loop.d.ts +73 -0
  28. package/dist/agent-runtime/compact/guarded-loop.js +320 -0
  29. package/dist/agent-runtime/compact/guarded-loop.js.map +1 -0
  30. package/dist/agent-runtime/compact/prompt-inputs.d.ts +42 -0
  31. package/dist/agent-runtime/compact/prompt-inputs.js +59 -0
  32. package/dist/agent-runtime/compact/prompt-inputs.js.map +1 -0
  33. package/dist/agent-runtime/compact/reviewer.d.ts +24 -0
  34. package/dist/agent-runtime/compact/reviewer.js +178 -0
  35. package/dist/agent-runtime/compact/reviewer.js.map +1 -0
  36. package/dist/agent-runtime/compact/step.d.ts +70 -0
  37. package/dist/agent-runtime/compact/step.js +136 -0
  38. package/dist/agent-runtime/compact/step.js.map +1 -0
  39. package/dist/agent-runtime/compact/test-reachability.d.ts +30 -0
  40. package/dist/agent-runtime/compact/test-reachability.js +147 -0
  41. package/dist/agent-runtime/compact/test-reachability.js.map +1 -0
  42. package/dist/agent-runtime/config.js +40 -10
  43. package/dist/agent-runtime/config.js.map +1 -1
  44. package/dist/agent-runtime/core-host.d.ts +4 -4
  45. package/dist/agent-runtime/core-host.js +8 -3
  46. package/dist/agent-runtime/core-host.js.map +1 -1
  47. package/dist/agent-runtime/executor-types.d.ts +37 -3
  48. package/dist/agent-runtime/executor-types.js +7 -2
  49. package/dist/agent-runtime/executor-types.js.map +1 -1
  50. package/dist/agent-runtime/graph/nodes.d.ts +4 -2
  51. package/dist/agent-runtime/graph/nodes.js +160 -53
  52. package/dist/agent-runtime/graph/nodes.js.map +1 -1
  53. package/dist/agent-runtime/graph/roles.d.ts +7 -2
  54. package/dist/agent-runtime/graph/roles.js +19 -11
  55. package/dist/agent-runtime/graph/roles.js.map +1 -1
  56. package/dist/agent-runtime/graph/state.d.ts +2 -1
  57. package/dist/agent-runtime/graph/state.js +2 -1
  58. package/dist/agent-runtime/graph/state.js.map +1 -1
  59. package/dist/agent-runtime/guardrails.d.ts +15 -0
  60. package/dist/agent-runtime/guardrails.js +76 -0
  61. package/dist/agent-runtime/guardrails.js.map +1 -0
  62. package/dist/agent-runtime/openai-executor.d.ts +25 -1
  63. package/dist/agent-runtime/openai-executor.js +67 -122
  64. package/dist/agent-runtime/openai-executor.js.map +1 -1
  65. package/dist/agent-runtime/openspec-tool-server.js +3 -3
  66. package/dist/agent-runtime/openspec-tool-server.js.map +1 -1
  67. package/dist/agent-runtime/openspec.d.ts +76 -1
  68. package/dist/agent-runtime/openspec.js +70 -4
  69. package/dist/agent-runtime/openspec.js.map +1 -1
  70. package/dist/agent-runtime/prompts.d.ts +21 -2
  71. package/dist/agent-runtime/prompts.js +56 -6
  72. package/dist/agent-runtime/prompts.js.map +1 -1
  73. package/dist/agent-runtime/repository-context.js +39 -12
  74. package/dist/agent-runtime/repository-context.js.map +1 -1
  75. package/dist/agent-runtime/role-routing.js +1 -0
  76. package/dist/agent-runtime/role-routing.js.map +1 -1
  77. package/dist/agent-runtime/workflow-types.d.ts +2 -0
  78. package/dist/agent-runtime/workflow.js +1 -1
  79. package/dist/agent-runtime/workflow.js.map +1 -1
  80. package/dist/installer/runtime/pipeline-state.d.ts +1 -0
  81. package/dist/installer/runtime/pipeline-state.js +35 -4
  82. package/dist/installer/runtime/pipeline-state.js.map +1 -1
  83. package/package.json +1 -1
  84. package/schemas/agent-runtime.schema.json +10 -2
@@ -1,4 +1,5 @@
1
1
  import type { AgentRole, CliProvider } from './executor-types.js';
2
+ import { z } from 'zod';
2
3
  export declare const OPENSPEC_VERSION = "1.4.1";
3
4
  export declare const ROLE_SKILLS: {
4
5
  readonly architect: "openspec-ff-change";
@@ -50,6 +51,18 @@ export interface OpenSpecApply {
50
51
  remaining: number;
51
52
  };
52
53
  }
54
+ /** Advisory implementation memory, deliberately separate from verification receipts. */
55
+ export declare const IMPLEMENTATION_PROGRESS_SCHEMA: z.ZodObject<{
56
+ summary: z.ZodString;
57
+ completedTasks: z.ZodArray<z.ZodString>;
58
+ nextTasks: z.ZodArray<z.ZodString>;
59
+ checks: z.ZodArray<z.ZodObject<{
60
+ command: z.ZodString;
61
+ outcome: z.ZodString;
62
+ }, z.core.$strict>>;
63
+ blockers: z.ZodArray<z.ZodString>;
64
+ }, z.core.$strict>;
65
+ export declare function renderProgressHandoff(context: OpenSpecRoleContext): string;
53
66
  export declare function hash(text: string): string;
54
67
  export declare function resolveOpenSpecCli(): string;
55
68
  export declare function runOpenSpec(cli: string, root: string, args: string[], signal?: AbortSignal): Promise<string>;
@@ -78,6 +91,7 @@ export declare class OpenSpecTools {
78
91
  artifact?: string;
79
92
  path?: string;
80
93
  content?: string;
94
+ progress?: unknown;
81
95
  }): Promise<unknown>;
82
96
  private participationEvents;
83
97
  participationCursor(): number;
@@ -85,6 +99,7 @@ export declare class OpenSpecTools {
85
99
  assertReady(): Promise<OpenSpecApply>;
86
100
  }
87
101
  export declare const OPENSPEC_BRIDGE_ENTRY: string;
102
+ export declare const OPENSPEC_TOOL_ACTIONS: readonly ["load_skill", "new", "status", "instructions", "validate", "write_artifact", "read_progress", "write_progress"];
88
103
  export declare const OPENSPEC_TOOL_DEFINITION: {
89
104
  type: string;
90
105
  function: {
@@ -97,7 +112,7 @@ export declare const OPENSPEC_TOOL_DEFINITION: {
97
112
  properties: {
98
113
  action: {
99
114
  type: string;
100
- enum: string[];
115
+ enum: readonly ["load_skill", "new", "status", "instructions", "validate", "write_artifact", "read_progress", "write_progress"];
101
116
  };
102
117
  artifact: {
103
118
  type: string;
@@ -108,6 +123,66 @@ export declare const OPENSPEC_TOOL_DEFINITION: {
108
123
  content: {
109
124
  type: string;
110
125
  };
126
+ progress: {
127
+ type: string;
128
+ additionalProperties: boolean;
129
+ required: string[];
130
+ properties: {
131
+ summary: {
132
+ type: string;
133
+ minLength: number;
134
+ maxLength: number;
135
+ };
136
+ completedTasks: {
137
+ type: string;
138
+ maxItems: number;
139
+ items: {
140
+ type: string;
141
+ minLength: number;
142
+ maxLength: number;
143
+ };
144
+ };
145
+ nextTasks: {
146
+ type: string;
147
+ maxItems: number;
148
+ items: {
149
+ type: string;
150
+ minLength: number;
151
+ maxLength: number;
152
+ };
153
+ };
154
+ checks: {
155
+ type: string;
156
+ maxItems: number;
157
+ items: {
158
+ type: string;
159
+ additionalProperties: boolean;
160
+ required: string[];
161
+ properties: {
162
+ command: {
163
+ type: string;
164
+ minLength: number;
165
+ maxLength: number;
166
+ };
167
+ outcome: {
168
+ type: string;
169
+ minLength: number;
170
+ maxLength: number;
171
+ };
172
+ };
173
+ };
174
+ };
175
+ blockers: {
176
+ type: string;
177
+ maxItems: number;
178
+ items: {
179
+ type: string;
180
+ minLength: number;
181
+ maxLength: number;
182
+ };
183
+ };
184
+ };
185
+ };
111
186
  };
112
187
  };
113
188
  };
@@ -1,12 +1,64 @@
1
1
  import { promisify } from 'node:util';
2
2
  import { execFile, execFileSync } from 'node:child_process';
3
- import { createHash } from 'node:crypto';
4
- import { appendFileSync, existsSync, lstatSync, mkdirSync, mkdtempSync, readFileSync, realpathSync, rmSync, writeFileSync } from 'node:fs';
3
+ import { createHash, randomUUID } from 'node:crypto';
4
+ import { appendFileSync, existsSync, lstatSync, mkdirSync, mkdtempSync, readFileSync, realpathSync, renameSync, rmSync, writeFileSync } from 'node:fs';
5
5
  import { createRequire } from 'node:module';
6
6
  import path from 'node:path';
7
7
  import { fileURLToPath } from 'node:url';
8
+ import { z } from 'zod';
8
9
  export const OPENSPEC_VERSION = '1.4.1';
9
10
  export const ROLE_SKILLS = { architect: 'openspec-ff-change', developer: 'openspec-apply-change', reviewer: 'openspec-verify-change' };
11
+ /** Advisory implementation memory, deliberately separate from verification receipts. */
12
+ export const IMPLEMENTATION_PROGRESS_SCHEMA = z.object({
13
+ summary: z.string().trim().min(1).max(1600),
14
+ completedTasks: z.array(z.string().trim().min(1).max(400)).max(20),
15
+ nextTasks: z.array(z.string().trim().min(1).max(400)).max(20),
16
+ checks: z.array(z.object({ command: z.string().trim().min(1).max(1000), outcome: z.string().trim().min(1).max(500) }).strict()).max(12),
17
+ blockers: z.array(z.string().trim().min(1).max(500)).max(12),
18
+ }).strict();
19
+ const MAX_PROGRESS_BYTES = 8 * 1024;
20
+ const PROGRESS_FILE = 'implementation-progress.json';
21
+ const PROGRESS_NOTICE = 'Advisory developer handoff only. Reconcile with current files and OpenSpec tasks; recorded checks are historical claims, not host verification receipts or permission to skip required verification.';
22
+ function readProgress(context) {
23
+ try {
24
+ const file = artifactPath(context.stateDirectory, PROGRESS_FILE);
25
+ if (!existsSync(file))
26
+ return { notice: PROGRESS_NOTICE, record: null };
27
+ if (!lstatSync(file).isFile() || lstatSync(file).size > MAX_PROGRESS_BYTES)
28
+ throw new Error('Invalid progress file');
29
+ const record = JSON.parse(readFileSync(file, 'utf8'));
30
+ if (record.schemaVersion !== 1 || !sameOpenSpecDirectory(record.root, context.root) || record.change !== context.change || typeof record.updatedAt !== 'string' || !Number.isFinite(Date.parse(record.updatedAt)))
31
+ throw new Error('Progress scope mismatch');
32
+ const progress = IMPLEMENTATION_PROGRESS_SCHEMA.parse(record.progress);
33
+ return { notice: PROGRESS_NOTICE, record: { schemaVersion: 1, root: record.root, change: record.change, updatedAt: record.updatedAt, progress } };
34
+ }
35
+ catch {
36
+ return { notice: PROGRESS_NOTICE + ' Saved progress is unavailable or invalid; inspect the current diff and tasks before continuing.', record: null };
37
+ }
38
+ }
39
+ export function renderProgressHandoff(context) {
40
+ const saved = readProgress(context);
41
+ return saved.record ? `\n## Saved implementation progress\n${saved.notice}\n${JSON.stringify(saved.record)}\n` : saved.notice.includes('unavailable') ? '\n' + saved.notice + '\n' : '';
42
+ }
43
+ function writeProgress(context, input) {
44
+ if (context.role !== 'developer')
45
+ throw new Error('Only the developer may write implementation progress');
46
+ const progress = IMPLEMENTATION_PROGRESS_SCHEMA.parse(input);
47
+ const record = { schemaVersion: 1, root: realpathSync(context.root), change: context.change, updatedAt: new Date().toISOString(), progress };
48
+ const content = JSON.stringify(record);
49
+ if (Buffer.byteLength(content) > MAX_PROGRESS_BYTES)
50
+ throw new Error('Implementation progress exceeds 8 KB; summarize the current state');
51
+ const target = artifactPath(context.stateDirectory, PROGRESS_FILE);
52
+ const temporary = artifactPath(context.stateDirectory, `.implementation-progress-${randomUUID()}.tmp`);
53
+ try {
54
+ writeFileSync(temporary, content, { mode: 0o600, flag: 'wx' });
55
+ renameSync(temporary, target);
56
+ }
57
+ finally {
58
+ rmSync(temporary, { force: true });
59
+ }
60
+ return { notice: PROGRESS_NOTICE, record };
61
+ }
10
62
  export function hash(text) { return createHash('sha256').update(text).digest('hex'); }
11
63
  export function resolveOpenSpecCli() {
12
64
  const require = createRequire(import.meta.url);
@@ -156,6 +208,7 @@ export class OpenSpecTools {
156
208
  prerequisites.push({ action: 'status', via: 'load_skill' }, { action: 'instructions', artifact: 'apply', via: 'load_skill' });
157
209
  result = { name: ROLE_SKILLS[this.context.role], source: this.context.skillPath, version: OPENSPEC_VERSION, content,
158
210
  ...(planning ? { planning, next: 'The official status and instructions apply queries have executed for this request. Read every planning.apply.contextFiles path, then perform the remaining role skill steps. This is planning context, not proof that implementation or review is complete.' } : {}),
211
+ ...(this.context.role !== 'architect' ? { savedProgress: readProgress(this.context) } : {}),
159
212
  };
160
213
  }
161
214
  else if (action === 'new') {
@@ -165,6 +218,10 @@ export class OpenSpecTools {
165
218
  result = existsSync(target) ? await this.status() : await this.call(['new', 'change', this.context.change, '--json']);
166
219
  await this.status();
167
220
  }
221
+ else if (action === 'read_progress')
222
+ result = readProgress(this.context);
223
+ else if (action === 'write_progress')
224
+ result = writeProgress(this.context, input.progress);
168
225
  else if (action === 'status')
169
226
  result = await this.status();
170
227
  else if (action === 'instructions') {
@@ -244,9 +301,18 @@ export class OpenSpecTools {
244
301
  }
245
302
  }
246
303
  export const OPENSPEC_BRIDGE_ENTRY = fileURLToPath(new URL('./openspec-tool-server.js', import.meta.url));
247
- export const OPENSPEC_TOOL_DEFINITION = { type: 'function', function: { name: 'openspec_workflow', description: 'Run the official OpenSpec role workflow. Load the skill first (developer/reviewer also receive real status and apply context), then use its CLI instructions and write artifacts within the fixed change.', parameters: { type: 'object', additionalProperties: false, required: ['action'], properties: { action: { type: 'string', enum: ['load_skill', 'new', 'status', 'instructions', 'validate', 'write_artifact'] }, artifact: { type: 'string' }, path: { type: 'string' }, content: { type: 'string' } } } } };
304
+ export const OPENSPEC_TOOL_ACTIONS = ['load_skill', 'new', 'status', 'instructions', 'validate', 'write_artifact', 'read_progress', 'write_progress'];
305
+ export const OPENSPEC_TOOL_DEFINITION = { type: 'function', function: { name: 'openspec_workflow', description: 'Run the official OpenSpec role workflow. Load the skill first (developer/reviewer also receive real status, apply context and saved progress), then use its CLI instructions and write artifacts within the fixed change. Developer may save a bounded advisory handoff with write_progress; read_progress refreshes it. Progress never substitutes for verification.', parameters: { type: 'object', additionalProperties: false, required: ['action'], properties: { action: { type: 'string', enum: OPENSPEC_TOOL_ACTIONS }, artifact: { type: 'string' }, path: { type: 'string' }, content: { type: 'string' }, progress: {
306
+ type: 'object', additionalProperties: false, required: ['summary', 'completedTasks', 'nextTasks', 'checks', 'blockers'], properties: {
307
+ summary: { type: 'string', minLength: 1, maxLength: 1600 },
308
+ completedTasks: { type: 'array', maxItems: 20, items: { type: 'string', minLength: 1, maxLength: 400 } },
309
+ nextTasks: { type: 'array', maxItems: 20, items: { type: 'string', minLength: 1, maxLength: 400 } },
310
+ checks: { type: 'array', maxItems: 12, items: { type: 'object', additionalProperties: false, required: ['command', 'outcome'], properties: { command: { type: 'string', minLength: 1, maxLength: 1000 }, outcome: { type: 'string', minLength: 1, maxLength: 500 } } } },
311
+ blockers: { type: 'array', maxItems: 12, items: { type: 'string', minLength: 1, maxLength: 500 } },
312
+ },
313
+ } } } } };
248
314
  export function openSpecPrompt(context) {
249
- return `\n## Official OpenSpec workflow binding\nExecute ${ROLE_SKILLS[context.role]} for change ${context.change}. This headless transport loads the official, version-pinned skill through the openspec_workflow tool (MCP server specrails_openspec, tool workflow on CLI providers). This is explicit skill-document adaptation, not a native slash command.\nFirst call action=load_skill and follow the returned complete official skill. Bind its openspec CLI commands to this tool: new change -> action=new; status -> status; instructions <artifact> -> instructions with artifact; validate -> validate. Author each artifact yourself using write_artifact with its change-relative path and content; read the official instructions first. Do not reproduce templates from memory or return the artifacts in final JSON. The tool fixes the change identity and runs OpenSpec ${OPENSPEC_VERSION}.\nRead source/dependencies with your normal read tools. For this frozen scope, change selection is already answered. Bind AskUserQuestion to a low-confidence final result with question (architect), or a reported blocking issue (other roles); LangGraph asks the requester. Bind TodoWrite to concise progress narration. Do not invoke another role, apply/archive from architect, or archive from developer/reviewer. Return the Specrails JSON report after the official workflow. For developer and reviewer, load_skill already executes status and instructions apply and returns their real outputs in planning; read planning.apply.contextFiles and perform the rest of the official skill. You may refresh instructions apply when needed. Verify is a skill, not an instructions artifact.\n`;
315
+ return `\n## Official OpenSpec workflow binding\nExecute ${ROLE_SKILLS[context.role]} for change ${context.change}. This headless transport loads the official, version-pinned skill through the openspec_workflow tool (MCP server specrails_openspec, tool workflow on CLI providers). This is explicit skill-document adaptation, not a native slash command.\nFirst call action=load_skill and follow the returned complete official skill. Bind its openspec CLI commands to this tool: new change -> action=new; status -> status; instructions <artifact> -> instructions with artifact; validate -> validate. Author each artifact yourself using write_artifact with its change-relative path and content; read the official instructions first. Do not reproduce templates from memory or return the artifacts in final JSON. The tool fixes the change identity and runs OpenSpec ${OPENSPEC_VERSION}.\nRead source/dependencies with your normal read tools. For this frozen scope, change selection is already answered. Bind AskUserQuestion to a low-confidence final result with question (architect), or a reported blocking issue (other roles); LangGraph asks the requester. Bind TodoWrite to concise progress narration and, for developer, persist the current handoff through action=write_progress with progress {summary, completedTasks, nextTasks, checks: [{command, outcome}], blockers}. Save after each completed task or changed blocker, at most 8 KB. This host journal is separate from frozen OpenSpec artifacts; never write runtime files directly. Developer/reviewer receive savedProgress from load_skill and can refresh with read_progress. Reconcile this advisory history with current files; old test outcomes never replace required host verification. Do not invoke another role, apply/archive from architect, or archive from developer/reviewer. Return the Specrails JSON report after the official workflow. For developer and reviewer, load_skill already executes status and instructions apply and returns their real outputs in planning; read planning.apply.contextFiles and perform the rest of the official skill. You may refresh instructions apply when needed. Verify is a skill, not an instructions artifact.\n`;
250
316
  }
251
317
  export function writeOpenSpecBridge(context, directory) {
252
318
  const file = path.join(directory, 'openspec-context.json');
@@ -1 +1 @@
1
- {"version":3,"file":"openspec.js","sourceRoot":"","sources":["../../src/agent-runtime/openspec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openspec.js","sourceRoot":"","sources":["../../src/agent-runtime/openspec.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import type { PipelineContext, VerificationCommand } from '../installer/runtime/
3
3
  import { type ReviewPolicy } from './graph/review-policy.js';
4
4
  import type { DeveloperRecord } from './graph/state.js';
5
5
  /** Bump whenever the wording changes: the version is part of the frozen run identity. */
6
- export declare const ROLE_INSTRUCTIONS_VERSION = "7";
6
+ export declare const ROLE_INSTRUCTIONS_VERSION = "9";
7
7
  export interface RoleFeedback {
8
8
  verification?: unknown;
9
9
  review?: unknown;
@@ -14,8 +14,12 @@ export interface FrozenCriterion {
14
14
  criterionIndex: number;
15
15
  requirement: string;
16
16
  }
17
+ /** Roles with an editable definition: the three pipeline agents plus the FIXER stance the developer role takes on a correction round. */
18
+ export type PromptRole = AgentRole | 'fixer';
17
19
  export interface RoleInstructionOptions {
18
20
  definition?: string;
21
+ /** `fixer`: the developer invocation is a correction round on the fixer stance (own definition, no plan dump). */
22
+ stance?: 'fixer';
19
23
  feedback?: RoleFeedback;
20
24
  verification?: VerificationCommand[];
21
25
  /** Answers the requester gave to earlier architect questions, oldest first. */
@@ -26,13 +30,28 @@ export interface RoleInstructionOptions {
26
30
  criteria?: FrozenCriterion[];
27
31
  /** The developer's own account of the change, shown to the reviewer as a claim to verify. */
28
32
  developer?: DeveloperRecord | null;
33
+ /** A reviewer pass after a correction round: only these files changed since its previous verdict, and these criteria it already certified as met. */
34
+ reReview?: ReReviewContext;
29
35
  planning?: 'full' | 'proportional';
30
36
  }
31
37
  export declare const ARCHITECT_OUTPUT_SCHEMA: Record<string, unknown>;
32
38
  export declare const DEVELOPER_OUTPUT_SCHEMA: Record<string, unknown>;
33
39
  export declare const REVIEW_OUTPUT_SCHEMA: Record<string, unknown>;
34
40
  /** Actual editable task definitions; dynamic scope and output contracts are assembled separately. */
35
- export declare function rolePromptDefaults(): Record<AgentRole, string>;
41
+ export declare function rolePromptDefaults(): Record<PromptRole, string>;
42
+ export interface ReReviewContext {
43
+ changes: Array<{
44
+ repositoryId: string;
45
+ path: string;
46
+ status: 'added' | 'changed' | 'deleted';
47
+ }>;
48
+ previouslyMet: Array<{
49
+ specId: string;
50
+ criterionIndex: number;
51
+ }>;
52
+ }
53
+ /** Machine-readable line the compact reviewer parses back out of the prompt (see prompt-inputs.ts). */
54
+ export declare const RE_REVIEW_MARKER = "Re-review changes (JSON):";
36
55
  /** Central role instructions. Roles describe their own work only: traversal,
37
56
  * retries, checks, approvals, archive and delivery belong to the host. */
38
57
  export declare function roleInstructions(role: AgentRole, context: PipelineContext, change: string, options?: RoleInstructionOptions): string;
@@ -1,6 +1,6 @@
1
1
  import { DEFAULT_REVIEW_POLICY, REVIEW_ASPECTS } from './graph/review-policy.js';
2
2
  /** Bump whenever the wording changes: the version is part of the frozen run identity. */
3
- export const ROLE_INSTRUCTIONS_VERSION = '7';
3
+ export const ROLE_INSTRUCTIONS_VERSION = '9';
4
4
  const OUTPUT_TAIL = 6_000;
5
5
  const stringArray = { type: 'array', items: { type: 'string' } };
6
6
  export const ARCHITECT_OUTPUT_SCHEMA = {
@@ -115,7 +115,7 @@ function conventionsSection() {
115
115
  return [
116
116
  '## Project conventions',
117
117
  '',
118
- 'Before reading source, look for `CLAUDE.md`, `AGENTS.md`, `.claude/rules/` and the existing tests in each repository in scope. Follow the conventions, tooling and patterns they establish; when the repository already solves a similar problem, reuse that pattern instead of introducing a new one.',
118
+ 'Use the supplied repository map first. Inspect the general rules and the applicable sections of `CLAUDE.md`, `AGENTS.md` and `.claude/rules/` with heading searches and bounded line ranges. Read deeper instructions when entering a subdirectory. Do not concatenate entire large instruction files, whole documentation directories, or node_modules. Reuse conventions already present in context unless the versioned map says they changed. Follow existing code and test patterns before investigating framework internals.',
119
119
  '',
120
120
  ];
121
121
  }
@@ -162,6 +162,22 @@ function architectSection(verification, definition) {
162
162
  '',
163
163
  ];
164
164
  }
165
+ /** The FIXER stance: the developer role on a correction round — repair the exact failure, never re-implement. Shares the developer's verification tail and output contract. */
166
+ function fixerSection(verification, definition) {
167
+ const lines = definition === undefined ? [
168
+ '## Your task: correction',
169
+ '',
170
+ 'You are the Specrails FIXER. The verification commands (or the review) failed after the developer\'s pass; your only job is to make them pass with minimal, precise edits.',
171
+ '',
172
+ '1. Read the failing output below first: the exact command, its exit code and the reported files and lines. Start from those files, not from the plan.',
173
+ '2. Patch exactly the files and lines the failure names; touch neighbouring code only when the failure cannot be fixed otherwise. Rewrite a file only when a patch cannot express the change.',
174
+ '3. Never re-implement a feature, rename or restructure, add dependencies, or widen the change beyond the failure. Never weaken an assertion, delete a test or change acceptance criteria to make a check pass — if a test is wrong, fix the test to the specification and say so.',
175
+ '4. A test file the host reports as never executed must be wired into the repository\'s test command (the test script or runner configuration) and then made to pass.',
176
+ '5. Do not read the repository beyond the files the failure names and their direct dependencies. `proposal.md`, `design.md` and the specs are frozen; in `tasks.md` only tick a task you completed.',
177
+ '6. Finish with the same JSON summary object as the developer, listing under `incomplete` only failures you could not fix and why.',
178
+ ] : [definition, ''];
179
+ return [...lines, ...developerTail(verification)];
180
+ }
165
181
  function developerSection(verification, corrections, definition) {
166
182
  const lines = definition === undefined ? [
167
183
  '## Your task: implementation',
@@ -172,18 +188,23 @@ function developerSection(verification, corrections, definition) {
172
188
  '',
173
189
  '1. Load and execute openspec-apply-change through the supplied binding. Consult its status and instructions apply, read the context files OpenSpec returns, then the relevant existing code and tests.',
174
190
  '2. Work task by task in order. Use test-driven development: write or extend the test first, make it pass with the smallest correct change, then tidy up. Run only focused tests that cover what you touched while iterating. Core owns the complete verification plan and runs it after your turn; do not duplicate that full run. Fix the precise failures Core returns on a correction pass.',
175
- '3. Mark each task `- [x]` in `tasks.md` only when its code and tests are complete. Change nothing else in `tasks.md`, and never edit `proposal.md`, `design.md` or the specs: those documents are frozen, and editing them invalidates the run. If a task cannot be completed, leave it `- [ ]` and list it under `incomplete` with the reason.',
191
+ '3. Immediately after completing each task, mark it `- [x]` in `tasks.md`; do not postpone all progress updates until the end of the phase. Only mark tasks whose code and tests are complete. Change nothing else in `tasks.md`, and never edit `proposal.md`, `design.md` or the specs: those documents are frozen, and editing them invalidates the run. If a task cannot be completed, leave it `- [ ]` and list it under `incomplete` with the reason.',
176
192
  '4. Keep the implementation consistent with the repository: naming, error handling, import style, formatting and existing utilities. Do not add dependencies unless the design requires them.',
177
193
  'Investigation budget: consult the local reference patterns in design.md and equivalent application tests before framework internals or node_modules. After three unsuccessful experiments on the same failure, stop repeating commands: state the hypothesis, evidence and next discriminating experiment, then change approach. If three further experiments add no evidence, report the specific blocker under incomplete rather than consuming the remaining turn budget. Never weaken assertions or change acceptance criteria to make a test pass.',
178
194
  'Verification evidence: run tests without piping their output through grep/head or other filters that mask the original exit status. Capture complete stdout/stderr in a temporary log and preserve the test process exit code; inspect that log separately. Report the command and original exit code. Remove temporary debug tests before finishing. Core independently runs the final verification commands.',
179
195
  '5. If the shell is unavailable, still finish every task that only needs code and tests; Core runs the verification commands after your turn and returns the exact failures to you.',
180
196
  ] : [definition, '', ...(corrections ? ['Address the correction feedback below while keeping already-correct work.', ''] : [])];
197
+ return [...lines, ...developerTail(verification)];
198
+ }
199
+ /** Verification commands, durable-progress guidance and the output contract shared by the developer and fixer stances. */
200
+ function developerTail(verification) {
201
+ const lines = [];
181
202
  if (verification?.length) {
182
203
  lines.push('', 'Core owns these complete verification commands and will run them after your turn. Use focused tests while iterating instead of repeating this plan:');
183
204
  for (const command of verification)
184
205
  lines.push(`- repository \`${command.repositoryId}\`${command.cwd ? ' in `' + command.cwd + '`' : ''}: \`${shellWords(command)}\``);
185
206
  }
186
- lines.push('', '## Output contract', '', 'Finish with exactly one JSON object and nothing after it: no prose after the object, no Markdown fence.', '', '```', '{"summary":"What you implemented and how","files":["src/feature.ts"],"tests":["src/feature.test.ts"],"verification":"npm test passed (12 tests)","incomplete":[{"task":"3. …","reason":"why it could not be completed"}]}', '```', '', '- `files` and `tests`: repository-relative paths you created or modified (test files appear in `tests`, other files in `files`).', '- `verification`: the commands you ran and their outcome, or `none` when no shell was available.', '- `incomplete`: every task still `- [ ]` in `tasks.md`, with its reason; an empty array when everything is done.', '- Do not paste full test logs; the reviewer reads the real verification evidence separately.', '');
207
+ lines.push('', '## Durable implementation progress', '', 'When loading the official apply skill, read its savedProgress handoff before repeating investigation. Reconcile it with the current diff and tasks; it is advisory history, never accepted verification evidence. Preserve completed work and previously discovered test commands or environment blockers. Recheck a blocker only when its relevant condition changed.', 'After each completed task, and whenever the next action or a blocker changes, call the scoped workflow action write_progress with progress: {summary, completedTasks, nextTasks, checks: [{command, outcome}], blockers}. Replace the previous handoff with a concise current account (at most 8 KB); include exact focused test commands, original exit outcomes, relevant paths and the next discriminating action. Keep nextTasks concrete enough for a fresh session to continue unfinished work. Do not include full logs, credentials or claims that old checks authorize acceptance. The host persists this record outside the frozen OpenSpec artifacts. Use read_progress to refresh it. If interrupted, the next session receives it from load_skill; do not write runtime files directly.', '', '## Output contract', '', 'Finish with exactly one JSON object and nothing after it: no prose after the object, no Markdown fence.', '', '```', '{"summary":"What you implemented and how","files":["src/feature.ts"],"tests":["src/feature.test.ts"],"verification":"npm test passed (12 tests)","incomplete":[{"task":"3. …","reason":"why it could not be completed"}]}', '```', '', '- `files` and `tests`: repository-relative paths you created or modified (test files appear in `tests`, other files in `files`).', '- `verification`: the commands you ran and their outcome, or `none` when no shell was available.', '- `incomplete`: every task still `- [ ]` in `tasks.md`, with its reason; an empty array when everything is done.', '- Do not paste full test logs; the reviewer reads the real verification evidence separately.', '');
187
208
  return lines;
188
209
  }
189
210
  function reviewerSection(policy, criteria, definition) {
@@ -201,6 +222,8 @@ function reviewerSection(policy, criteria, definition) {
201
222
  '5. Security: no secrets, injection, path traversal, unsafe deserialization, missing authorization or new attack surface. Scale scrutiny to what the change touches.',
202
223
  '6. Performance: no obvious N+1, unbounded loops or blocking work on hot paths introduced by the change.',
203
224
  '',
225
+ 'Judge BEHAVIOUR against the acceptance criteria, never the shape of the code against the wording of the plan: module layout, file lists, class or function names, naming conventions and implementation techniques named in the ticket, the design or a "contract layer" are suggestions the developer may legitimately improve on. A working implementation that satisfies a criterion by other means is correct; asking to rename, move or rewrite it to match the plan\'s wording is NOT an issue. Only a criterion that is not met, a defect, a missing test or a regression is.',
226
+ '',
204
227
  'The verification evidence below comes from real subprocesses run by Core after the developer finished; treat it as fact, not as a claim by the developer.',
205
228
  '',
206
229
  ] : [definition, ''];
@@ -268,7 +291,33 @@ function feedbackSection(feedback) {
268
291
  /** Actual editable task definitions; dynamic scope and output contracts are assembled separately. */
269
292
  export function rolePromptDefaults() {
270
293
  const definition = (lines) => lines.slice(lines.findIndex(line => line.startsWith('## Your task:')), lines.indexOf('## Output contract')).join('\n').trimEnd();
271
- return { architect: definition(architectSection(undefined)), developer: definition(developerSection(undefined, false)), reviewer: definition(reviewerSection(DEFAULT_REVIEW_POLICY, undefined)) };
294
+ return { architect: definition(architectSection(undefined)), developer: definition(developerSection(undefined, false)), reviewer: definition(reviewerSection(DEFAULT_REVIEW_POLICY, undefined)), fixer: definition(fixerSection(undefined)) };
295
+ }
296
+ /** Machine-readable line the compact reviewer parses back out of the prompt (see prompt-inputs.ts). */
297
+ export const RE_REVIEW_MARKER = 'Re-review changes (JSON):';
298
+ /**
299
+ * After a correction round the reviewer re-reads ONLY what the fixer changed
300
+ * and settles its own previous issues, instead of re-reviewing the whole
301
+ * candidate and inventing new objections (observed: three full passes,
302
+ * 72 → 78 → 95, 35 of 47 minutes, the second pass ADDING an issue to code
303
+ * verify had just accepted). Criteria are still certified one by one; the
304
+ * ones certified last time stay met unless a changed file affects them.
305
+ */
306
+ function reReviewSection(context) {
307
+ if (!context)
308
+ return [];
309
+ return [
310
+ '## Re-review after corrections',
311
+ '',
312
+ 'This is a follow-up review: a correction round already addressed your previous issues (listed under "Previous review" below). Confine yourself to that:',
313
+ `- Only ${context.changes.length === 1 ? 'this file' : 'these files'} changed since your previous verdict — read only ${context.changes.length === 1 ? 'it' : 'them'}, and only the changed lines:`,
314
+ ...context.changes.map(item => ` - \`${item.repositoryId}\`: ${item.path} (${item.status})`),
315
+ '- For EACH previous issue decide resolved or not; an issue that is resolved does not reappear.',
316
+ '- Raise a new issue only for a regression inside the changed lines, never for pre-existing code you accepted last time.',
317
+ `- Criteria you certified as met last time keep that status unless a changed file affects them: ${context.previouslyMet.length ? context.previouslyMet.map(item => `${item.specId}#${item.criterionIndex}`).join(', ') : '(none)'}.`,
318
+ `${RE_REVIEW_MARKER} ${JSON.stringify(context.changes)}`,
319
+ '',
320
+ ];
272
321
  }
273
322
  /** Central role instructions. Roles describe their own work only: traversal,
274
323
  * retries, checks, approvals, archive and delivery belong to the host. */
@@ -276,13 +325,14 @@ export function roleInstructions(role, context, change, options = {}) {
276
325
  const feedback = feedbackSection(options.feedback);
277
326
  const corrections = role === 'developer' && feedback.length > 0;
278
327
  const sections = [
279
- ...(role === 'architect' ? architectSection(options.verification, options.definition) : role === 'developer' ? developerSection(options.verification, corrections, options.definition) : reviewerSection(options.policy ?? DEFAULT_REVIEW_POLICY, options.criteria, options.definition)),
328
+ ...(role === 'architect' ? architectSection(options.verification, options.definition) : role === 'developer' ? (options.stance === 'fixer' ? fixerSection(options.verification, options.definition) : developerSection(options.verification, corrections, options.definition)) : reviewerSection(options.policy ?? DEFAULT_REVIEW_POLICY, options.criteria, options.definition)),
280
329
  ...boundarySection(role),
281
330
  ...conventionsSection(),
282
331
  ...scopeSection(context, change),
283
332
  ...(role === 'architect' ? answersSection(options.answers) : []),
284
333
  ...(role === 'architect' ? [options.planning === 'full' || context.repositories.length > 1 ? 'Planning policy: full impact analysis is required for this run.' : 'Planning policy: proportional; use focused planning only for a clear local change without migration, public-contract or security risks.'] : []),
285
334
  ...(role === 'reviewer' ? developerSummarySection(options.developer) : []),
335
+ ...(role === 'reviewer' ? reReviewSection(options.reReview) : []),
286
336
  ...feedback,
287
337
  ];
288
338
  return sections.join('\n').trimEnd() + '\n';
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/agent-runtime/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/agent-runtime/prompts.ts"],"names":[],"mappings":"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"}