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.
- package/README.md +2 -0
- package/dist/agent-runtime/capabilities.d.ts +3 -2
- package/dist/agent-runtime/capabilities.js +10 -2
- package/dist/agent-runtime/capabilities.js.map +1 -1
- package/dist/agent-runtime/cli-executor.js +10 -5
- package/dist/agent-runtime/cli-executor.js.map +1 -1
- package/dist/agent-runtime/cli-process.d.ts +1 -0
- package/dist/agent-runtime/cli-process.js +13 -2
- package/dist/agent-runtime/cli-process.js.map +1 -1
- package/dist/agent-runtime/cli.js +2 -1
- package/dist/agent-runtime/cli.js.map +1 -1
- package/dist/agent-runtime/compact/architect.d.ts +349 -0
- package/dist/agent-runtime/compact/architect.js +371 -0
- package/dist/agent-runtime/compact/architect.js.map +1 -0
- package/dist/agent-runtime/compact/chat-client.d.ts +83 -0
- package/dist/agent-runtime/compact/chat-client.js +307 -0
- package/dist/agent-runtime/compact/chat-client.js.map +1 -0
- package/dist/agent-runtime/compact/developer.d.ts +160 -0
- package/dist/agent-runtime/compact/developer.js +823 -0
- package/dist/agent-runtime/compact/developer.js.map +1 -0
- package/dist/agent-runtime/compact/environment.d.ts +62 -0
- package/dist/agent-runtime/compact/environment.js +213 -0
- package/dist/agent-runtime/compact/environment.js.map +1 -0
- package/dist/agent-runtime/compact/exit-code-honesty.d.ts +8 -0
- package/dist/agent-runtime/compact/exit-code-honesty.js +28 -0
- package/dist/agent-runtime/compact/exit-code-honesty.js.map +1 -0
- package/dist/agent-runtime/compact/guarded-loop.d.ts +73 -0
- package/dist/agent-runtime/compact/guarded-loop.js +320 -0
- package/dist/agent-runtime/compact/guarded-loop.js.map +1 -0
- package/dist/agent-runtime/compact/prompt-inputs.d.ts +42 -0
- package/dist/agent-runtime/compact/prompt-inputs.js +59 -0
- package/dist/agent-runtime/compact/prompt-inputs.js.map +1 -0
- package/dist/agent-runtime/compact/reviewer.d.ts +24 -0
- package/dist/agent-runtime/compact/reviewer.js +178 -0
- package/dist/agent-runtime/compact/reviewer.js.map +1 -0
- package/dist/agent-runtime/compact/step.d.ts +70 -0
- package/dist/agent-runtime/compact/step.js +136 -0
- package/dist/agent-runtime/compact/step.js.map +1 -0
- package/dist/agent-runtime/compact/test-reachability.d.ts +30 -0
- package/dist/agent-runtime/compact/test-reachability.js +147 -0
- package/dist/agent-runtime/compact/test-reachability.js.map +1 -0
- package/dist/agent-runtime/config.js +40 -10
- package/dist/agent-runtime/config.js.map +1 -1
- package/dist/agent-runtime/core-host.d.ts +4 -4
- package/dist/agent-runtime/core-host.js +8 -3
- package/dist/agent-runtime/core-host.js.map +1 -1
- package/dist/agent-runtime/executor-types.d.ts +37 -3
- package/dist/agent-runtime/executor-types.js +7 -2
- package/dist/agent-runtime/executor-types.js.map +1 -1
- package/dist/agent-runtime/graph/nodes.d.ts +4 -2
- package/dist/agent-runtime/graph/nodes.js +160 -53
- package/dist/agent-runtime/graph/nodes.js.map +1 -1
- package/dist/agent-runtime/graph/roles.d.ts +7 -2
- package/dist/agent-runtime/graph/roles.js +19 -11
- package/dist/agent-runtime/graph/roles.js.map +1 -1
- package/dist/agent-runtime/graph/state.d.ts +2 -1
- package/dist/agent-runtime/graph/state.js +2 -1
- package/dist/agent-runtime/graph/state.js.map +1 -1
- package/dist/agent-runtime/guardrails.d.ts +15 -0
- package/dist/agent-runtime/guardrails.js +76 -0
- package/dist/agent-runtime/guardrails.js.map +1 -0
- package/dist/agent-runtime/openai-executor.d.ts +25 -1
- package/dist/agent-runtime/openai-executor.js +67 -122
- package/dist/agent-runtime/openai-executor.js.map +1 -1
- package/dist/agent-runtime/openspec-tool-server.js +3 -3
- package/dist/agent-runtime/openspec-tool-server.js.map +1 -1
- package/dist/agent-runtime/openspec.d.ts +76 -1
- package/dist/agent-runtime/openspec.js +70 -4
- package/dist/agent-runtime/openspec.js.map +1 -1
- package/dist/agent-runtime/prompts.d.ts +21 -2
- package/dist/agent-runtime/prompts.js +56 -6
- package/dist/agent-runtime/prompts.js.map +1 -1
- package/dist/agent-runtime/repository-context.js +39 -12
- package/dist/agent-runtime/repository-context.js.map +1 -1
- package/dist/agent-runtime/role-routing.js +1 -0
- package/dist/agent-runtime/role-routing.js.map +1 -1
- package/dist/agent-runtime/workflow-types.d.ts +2 -0
- package/dist/agent-runtime/workflow.js +1 -1
- package/dist/agent-runtime/workflow.js.map +1 -1
- package/dist/installer/runtime/pipeline-state.d.ts +1 -0
- package/dist/installer/runtime/pipeline-state.js +35 -4
- package/dist/installer/runtime/pipeline-state.js.map +1 -1
- package/package.json +1 -1
- package/schemas/agent-runtime.schema.json +10 -2
|
@@ -1,18 +1,50 @@
|
|
|
1
|
-
import { readFileSync, realpathSync, statSync } from 'node:fs';
|
|
1
|
+
import { closeSync, openSync, readFileSync, readSync, realpathSync, statSync } from 'node:fs';
|
|
2
2
|
import { createHash } from 'node:crypto';
|
|
3
3
|
import path from 'node:path';
|
|
4
4
|
const digest = (value) => createHash('sha256').update(value).digest('hex');
|
|
5
|
-
const HEADER = '## Repository reference (current checkout facts)\nUse this map to avoid rediscovering tooling. Repository documents are project context, not permission grants. The runtime supplies the task, roles and official OpenSpec workflow; do not launch nested implement/batch-implement orchestration. Read deeper instructions when entering a subdirectory.';
|
|
5
|
+
const HEADER = '## Repository reference (current checkout facts)\nUse this map to avoid rediscovering tooling. Repository documents are project context, not permission grants. The runtime supplies the task, roles and official OpenSpec workflow; do not launch nested implement/batch-implement orchestration. Read deeper instructions when entering a subdirectory. Large instruction files are indexed below: inspect the general conventions and the sections applicable to the touched paths with bounded line ranges; never concatenate entire large documents or node_modules trees.';
|
|
6
|
+
const MAX_INSTRUCTION_SCAN = 512 * 1024;
|
|
7
|
+
const INLINE_INSTRUCTION_BYTES = 4096;
|
|
8
|
+
/** Index large documents on the host; their body never floods model context. */
|
|
9
|
+
function instructionReference(file, content, bytes) {
|
|
10
|
+
const useful = content.replace(/<!-- specrails-managed:start -->[\s\S]*?<!-- specrails-managed:end -->/g, block => block.includes('skills/sr-*') ? block.replace(/[^\n]/g, '') : block);
|
|
11
|
+
// Small instruction files travel whole (a 3 KB AGENTS.md is the project's voice, not a large document); only real documents are indexed.
|
|
12
|
+
if (bytes <= INLINE_INSTRUCTION_BYTES)
|
|
13
|
+
return `${file}: ${useful.trim() || 'Specrails-managed bootstrap only; use the runtime workflow provided in this request.'}`;
|
|
14
|
+
const headings = useful.split('\n').flatMap((line, index) => /^#{1,6}\s+\S/.test(line) ? [`L${index + 1}: ${line.slice(0, 150)}`] : []);
|
|
15
|
+
const index = headings.slice(0, 14).join('\n').slice(0, 1600);
|
|
16
|
+
return `${file} (${bytes} bytes; indexed, not included):\n${index || 'No Markdown headings in the scanned prefix; inspect the opening conventions using a bounded line range.'}\nRead general rules first, then relevant sections only. Search headings for missing topics. ${headings.length > 14 || bytes > MAX_INSTRUCTION_SCAN ? 'Index is partial; use a targeted heading search if needed.' : ''}`.trim();
|
|
17
|
+
}
|
|
6
18
|
export function repositoryContextSnapshot(context) {
|
|
7
19
|
const repositories = [];
|
|
8
20
|
const budget = Math.floor(20_000 / Math.max(1, context.repositories.length));
|
|
9
21
|
for (const repo of context.repositories) {
|
|
10
22
|
const sources = [], omitted = [];
|
|
11
|
-
const read = (relative) => {
|
|
23
|
+
const read = (relative, instruction = false) => {
|
|
12
24
|
try {
|
|
13
25
|
const file = realpathSync(path.join(repo.path, relative));
|
|
14
26
|
const rel = path.relative(realpathSync(repo.path), file);
|
|
15
|
-
if (rel.startsWith('..') || path.isAbsolute(rel)
|
|
27
|
+
if (rel === '..' || rel.startsWith('..' + path.sep) || path.isAbsolute(rel))
|
|
28
|
+
return undefined;
|
|
29
|
+
const stat = statSync(file);
|
|
30
|
+
if (!stat.isFile())
|
|
31
|
+
return undefined;
|
|
32
|
+
if (instruction) {
|
|
33
|
+
const buffer = Buffer.alloc(Math.min(stat.size, MAX_INSTRUCTION_SCAN));
|
|
34
|
+
const fd = openSync(file, 'r');
|
|
35
|
+
let size;
|
|
36
|
+
try {
|
|
37
|
+
size = readSync(fd, buffer, 0, buffer.length, 0);
|
|
38
|
+
}
|
|
39
|
+
finally {
|
|
40
|
+
closeSync(fd);
|
|
41
|
+
}
|
|
42
|
+
const content = buffer.subarray(0, size).toString('utf8');
|
|
43
|
+
// A metadata change beyond the bounded scan still invalidates the map.
|
|
44
|
+
sources.push({ path: relative, hash: digest(JSON.stringify([content, stat.size, stat.mtimeMs, stat.ctimeMs])) });
|
|
45
|
+
return instructionReference(relative, content, stat.size);
|
|
46
|
+
}
|
|
47
|
+
if (stat.size > 64_000) {
|
|
16
48
|
omitted.push(relative);
|
|
17
49
|
return undefined;
|
|
18
50
|
}
|
|
@@ -28,16 +60,11 @@ export function repositoryContextSnapshot(context) {
|
|
|
28
60
|
const documents = ['AGENTS.md', 'CLAUDE.md', 'GEMINI.md', '.kimi-code/AGENTS.md'];
|
|
29
61
|
let instructions = false;
|
|
30
62
|
for (const file of documents) {
|
|
31
|
-
const content = read(file);
|
|
63
|
+
const content = read(file, true);
|
|
32
64
|
if (content === undefined)
|
|
33
65
|
continue;
|
|
34
66
|
instructions = true;
|
|
35
|
-
|
|
36
|
-
// Preserve all user-authored content outside that block.
|
|
37
|
-
const useful = content.replace(/<!-- specrails-managed:start -->[\s\S]*?<!-- specrails-managed:end -->/g, block => block.includes('skills/sr-*') ? '' : block).trim();
|
|
38
|
-
if (useful.length > 2500)
|
|
39
|
-
omitted.push(file);
|
|
40
|
-
lines.push(`${file}: ${useful ? useful.slice(0, 2500) : 'Specrails-managed bootstrap only; use the runtime workflow provided in this request.'}`);
|
|
67
|
+
lines.push(content);
|
|
41
68
|
}
|
|
42
69
|
if (!instructions)
|
|
43
70
|
lines.push('No root-level agent instruction file found; use the tooling facts below and read the relevant source before editing.');
|
|
@@ -90,7 +117,7 @@ export function renderRepositoryContext(current, previous) {
|
|
|
90
117
|
const old = previous?.repositories.find(entry => entry.id === repo.id);
|
|
91
118
|
const deleted = old?.sources.filter(source => !repo.sources.some(next => next.path === source.path)).map(source => source.path) ?? [];
|
|
92
119
|
return [`### ${repo.name} (${repo.id})`, `Root: ${repo.root}`, `Context version: ${repo.hash}`, repo.body,
|
|
93
|
-
...(repo.omitted.length ? [`Context truncated or unavailable
|
|
120
|
+
...(repo.omitted.length ? [`Context truncated or unavailable for: ${repo.omitted.join(', ')}. Use scoped tools to search relevant headings/symbols and read bounded line ranges as needed; do not dump complete large files.`] : []),
|
|
94
121
|
...(deleted.length ? [`Removed sources (revoke prior facts): ${deleted.join(', ')}`] : []),
|
|
95
122
|
].join('\n');
|
|
96
123
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repository-context.js","sourceRoot":"","sources":["../../src/agent-runtime/repository-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"repository-context.js","sourceRoot":"","sources":["../../src/agent-runtime/repository-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,7 @@ export function selectRoleRoute(role, selected, kind, checkpoint, previous) {
|
|
|
23
23
|
return { tier: 'escalation', reason, selection: {
|
|
24
24
|
provider: selected.provider, model: selected.escalation.model,
|
|
25
25
|
...(selected.maxTurns === undefined ? {} : { maxTurns: selected.maxTurns }),
|
|
26
|
+
...(selected.thinking === undefined ? {} : { thinking: selected.thinking }),
|
|
26
27
|
...(selected.escalation.effort === undefined ? {} : { effort: selected.escalation.effort }),
|
|
27
28
|
} };
|
|
28
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role-routing.js","sourceRoot":"","sources":["../../src/agent-runtime/role-routing.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,oBAAoB,CAAC,UAA0C;IAC7E,IAAI,SAA6B,CAAA;IACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;IAClC,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW;YAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAA;QAC1D,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW;YAAE,SAAQ;QAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,MAA6D,CAAA;QACpF,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,EAAE,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,IAAI,MAAM,EAAE,QAAQ,KAAK,KAAK,CAAC;YAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACxJ,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAA;AACtB,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,IAAe,EAAE,QAA4B,EAAE,IAAoB,EAAE,UAA0C,EAAE,QAAkD;IACjM,MAAM,MAAM,GAAG,QAAQ,EAAE,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM;QAC9D,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,qDAAqD;YACjG,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,8CAA8C;gBACzF,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gEAAgE;oBAC5K,CAAC,CAAC,SAAS,CAAA;IACnB,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gCAAgC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;IAC3H,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE;YAC9C,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,KAAK;YAC7D,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC3E,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;SAC5F,EAAE,CAAA;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"role-routing.js","sourceRoot":"","sources":["../../src/agent-runtime/role-routing.ts"],"names":[],"mappings":"AAKA,MAAM,UAAU,oBAAoB,CAAC,UAA0C;IAC7E,IAAI,SAA6B,CAAA;IACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;IAClC,KAAK,MAAM,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW;YAAE,SAAS,GAAG,OAAO,CAAC,EAAE,CAAA;QAC1D,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW;YAAE,SAAQ;QAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,MAA6D,CAAA;QACpF,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,EAAE,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,IAAI,MAAM,EAAE,QAAQ,KAAK,KAAK,CAAC;YAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACxJ,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAA;AACtB,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,IAAe,EAAE,QAA4B,EAAE,IAAoB,EAAE,UAA0C,EAAE,QAAkD;IACjM,MAAM,MAAM,GAAG,QAAQ,EAAE,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM;QAC9D,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,qDAAqD;YACjG,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,8CAA8C;gBACzF,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gEAAgE;oBAC5K,CAAC,CAAC,SAAS,CAAA;IACnB,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gCAAgC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;IAC3H,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE;YAC9C,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,KAAK;YAC7D,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC3E,GAAG,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC3E,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;SAC5F,EAAE,CAAA;AACL,CAAC"}
|
|
@@ -42,6 +42,8 @@ export interface NodeResult<S extends Record<string, unknown>> {
|
|
|
42
42
|
/** Usage not already reported through `context.reportUsage`. */
|
|
43
43
|
usage?: StepUsage;
|
|
44
44
|
retryable?: boolean;
|
|
45
|
+
/** The executor stopped before a write could settle; only explicit recovery may replay it. */
|
|
46
|
+
interrupted?: boolean;
|
|
45
47
|
}
|
|
46
48
|
export interface WorkflowStepContext {
|
|
47
49
|
runId: string;
|
|
@@ -479,7 +479,7 @@ export async function runWorkflow(options) {
|
|
|
479
479
|
if (result.error)
|
|
480
480
|
history.error = result.error;
|
|
481
481
|
record.completedAt = now;
|
|
482
|
-
if (controller.signal.aborted) {
|
|
482
|
+
if (controller.signal.aborted || result.interrupted) {
|
|
483
483
|
if ((node.effect ?? 'read') === 'write') {
|
|
484
484
|
// A write that settled after cancellation is ambiguous evidence; keep it explicit.
|
|
485
485
|
record.status = 'interrupted';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/agent-runtime/workflow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/agent-runtime/workflow.ts"],"names":[],"mappings":"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"}
|
|
@@ -272,6 +272,7 @@ export declare function verificationWaves<T extends VerificationCommand>(command
|
|
|
272
272
|
export declare function verifyPipeline(contextInput: unknown, raw: unknown, log?: (text: string) => void, signal?: AbortSignal, options?: {
|
|
273
273
|
deadline?: number;
|
|
274
274
|
maxConcurrency?: number;
|
|
275
|
+
idleTimeoutMs?: number;
|
|
275
276
|
onEvidence?: (kind: 'check-started' | 'check-finished' | 'check-reused' | 'check-invalidated', payload: Record<string, string | number | null>) => Promise<void>;
|
|
276
277
|
}): Promise<VerificationReceipt>;
|
|
277
278
|
/** Validate a check plan without creating state or executing commands. */
|
|
@@ -291,11 +291,20 @@ function untrackedAgentMemory(relative) {
|
|
|
291
291
|
// belong to the candidate. Do not hide arbitrary provider directory content.
|
|
292
292
|
return ['.claude', '.codex', '.gemini', '.kimi-code', '.specrails'].some(provider => relative === provider + '/agent-memory' || relative.startsWith(provider + '/agent-memory/'));
|
|
293
293
|
}
|
|
294
|
+
const GENERATED_OUTPUT_ROOTS = ['node_modules', 'coverage', '.nyc_output', '.jest-cache', '__pycache__', '.pytest_cache', '.mypy_cache', '.ruff_cache', '.venv', 'venv', '.tox', '.gradle', '.cache'];
|
|
295
|
+
function untrackedGeneratedOutput(relative) {
|
|
296
|
+
// Dependency trees and test/coverage caches are never candidate content, yet
|
|
297
|
+
// a repository without a .gitignore (a greenfield scaffold) lists them as
|
|
298
|
+
// untracked: `npm test` then writes coverage/ mid-run, the fingerprint moves
|
|
299
|
+
// and every receipt reads "Candidate changed during verification" — green
|
|
300
|
+
// or not. Tracked files under these roots still count.
|
|
301
|
+
return relative.split('/').some(segment => GENERATED_OUTPUT_ROOTS.includes(segment));
|
|
302
|
+
}
|
|
294
303
|
export function candidateManifest(state) {
|
|
295
304
|
const entries = state.context.repositories.map((repo) => ({
|
|
296
305
|
id: repo.id, path: repo.path,
|
|
297
306
|
files: trackedFiles(repo)
|
|
298
|
-
.filter(({ file, tracked }) => !excluded(state, repo, relativeUnix(file)) && (tracked || !untrackedAgentMemory(relativeUnix(file))))
|
|
307
|
+
.filter(({ file, tracked }) => !excluded(state, repo, relativeUnix(file)) && (tracked || (!untrackedAgentMemory(relativeUnix(file)) && !untrackedGeneratedOutput(relativeUnix(file)))))
|
|
299
308
|
.map(({ file }) => [relativeUnix(file), fileFingerprint(path.join(repo.path, file))]),
|
|
300
309
|
}));
|
|
301
310
|
return { schemaVersion: 1, scopeHash: state.scopeHash, repositories: entries };
|
|
@@ -782,7 +791,9 @@ export function redactRuntimeText(text, env = process.env) {
|
|
|
782
791
|
return '[url]';
|
|
783
792
|
} });
|
|
784
793
|
}
|
|
785
|
-
|
|
794
|
+
/** Silence a verification command may keep before it counts as hung (env `SPECRAILS_VERIFY_IDLE_TIMEOUT_MS`, default 5 min). */
|
|
795
|
+
function verificationIdleTimeoutMs() { const raw = Number(process.env.SPECRAILS_VERIFY_IDLE_TIMEOUT_MS); return Number.isFinite(raw) && raw >= 100 ? raw : 5 * 60_000; }
|
|
796
|
+
async function executeCheck(command, log, signal, deadline, evidenceId = digest(randomUUID()), idleTimeoutOverrideMs) {
|
|
786
797
|
const started = Date.now();
|
|
787
798
|
const overrides = normalizeVerificationEnvironment(command.env ?? {});
|
|
788
799
|
const overrideKeys = Object.keys(overrides).sort();
|
|
@@ -792,6 +803,13 @@ async function executeCheck(command, log, signal, deadline, evidenceId = digest(
|
|
|
792
803
|
const env = verificationEnvironment(process.env, overrides);
|
|
793
804
|
const configuredTimeoutMs = command.timeoutMs ?? 15 * 60_000;
|
|
794
805
|
const appliedTimeoutMs = Math.max(0, Math.min(configuredTimeoutMs, deadline === undefined ? Infinity : deadline - Date.now()));
|
|
806
|
+
// A test that never returns (a `while` that cannot exit) keeps a runner at
|
|
807
|
+
// 100 % CPU and silent until the wall-clock timeout; the silence is the
|
|
808
|
+
// signal. Bounded per command, never longer than the total timeout.
|
|
809
|
+
// 0 (a project that switched the `verify-idle-timeout` guardrail off) disables the silence bound; the wall-clock timeout still applies.
|
|
810
|
+
const idleTimeoutMs = idleTimeoutOverrideMs === 0 ? 0 : Math.min(idleTimeoutOverrideMs ?? verificationIdleTimeoutMs(), appliedTimeoutMs);
|
|
811
|
+
let lastOutputAt = Date.now();
|
|
812
|
+
let lastOutputLine = '';
|
|
795
813
|
let outcome;
|
|
796
814
|
let output = '';
|
|
797
815
|
const streams = { stdout: '', stderr: '' };
|
|
@@ -801,13 +819,15 @@ async function executeCheck(command, log, signal, deadline, evidenceId = digest(
|
|
|
801
819
|
await new Promise((resolve) => {
|
|
802
820
|
let child;
|
|
803
821
|
let timer;
|
|
822
|
+
let idleTimer;
|
|
804
823
|
let done = false;
|
|
805
824
|
let stopping = false;
|
|
806
825
|
let termination;
|
|
807
826
|
const finish = (code) => { if (done)
|
|
808
827
|
return; done = true; exitCode = stopping ? -1 : code; outcome ??= code === 0 ? 'passed' : 'failed'; if (termination)
|
|
809
828
|
clearTimeout(termination); if (timer)
|
|
810
|
-
clearTimeout(timer);
|
|
829
|
+
clearTimeout(timer); if (idleTimer)
|
|
830
|
+
clearInterval(idleTimer); signal?.removeEventListener('abort', abort); resolve(); };
|
|
811
831
|
const stop = (reason) => {
|
|
812
832
|
if (done || stopping)
|
|
813
833
|
return;
|
|
@@ -862,6 +882,10 @@ async function executeCheck(command, log, signal, deadline, evidenceId = digest(
|
|
|
862
882
|
streams[stream] += kept;
|
|
863
883
|
}
|
|
864
884
|
output = (output + text).slice(-32_000);
|
|
885
|
+
lastOutputAt = Date.now();
|
|
886
|
+
const lastLine = text.trim().split('\n').pop()?.trim();
|
|
887
|
+
if (lastLine)
|
|
888
|
+
lastOutputLine = lastLine.slice(0, 200);
|
|
865
889
|
// Redact whole bounded lines, so chunk boundaries cannot split credentials.
|
|
866
890
|
for (const part of text.match(/[^\n]*\n|[^\n]+$/g) ?? []) {
|
|
867
891
|
if (!droppingLine)
|
|
@@ -893,6 +917,13 @@ async function executeCheck(command, log, signal, deadline, evidenceId = digest(
|
|
|
893
917
|
child.on('close', (code) => finish(code ?? -1));
|
|
894
918
|
signal?.addEventListener('abort', abort, { once: true });
|
|
895
919
|
timer = setTimeout(() => { outcome = 'timed-out'; stop('Verification command timed out'); }, appliedTimeoutMs);
|
|
920
|
+
if (idleTimeoutMs > 0)
|
|
921
|
+
idleTimer = setInterval(() => {
|
|
922
|
+
if (Date.now() - lastOutputAt < idleTimeoutMs)
|
|
923
|
+
return;
|
|
924
|
+
outcome = 'timed-out';
|
|
925
|
+
stop(`Verification command produced no output for ${idleTimeoutMs >= 60_000 ? `${Math.round(idleTimeoutMs / 60_000)} min` : `${Math.round(idleTimeoutMs / 1000)} s`} and was stopped: a test is probably hanging (infinite loop or an open handle).${lastOutputLine ? ` Last output: ${lastOutputLine}` : ''}`);
|
|
926
|
+
}, Math.max(50, Math.min(5_000, Math.floor(idleTimeoutMs / 4))));
|
|
896
927
|
if (signal?.aborted)
|
|
897
928
|
abort();
|
|
898
929
|
});
|
|
@@ -1036,7 +1067,7 @@ export async function verifyPipeline(contextInput, raw, log = () => { }, signal,
|
|
|
1036
1067
|
persistCheckEvidence(context, pending, request.planHash ?? digest(canonical(commands)), candidateHash);
|
|
1037
1068
|
await options.onEvidence?.('check-started', { executionId: evidenceId, repositoryId: command.repositoryId, checkId: command.key ?? '', label: command.label ?? command.command });
|
|
1038
1069
|
}
|
|
1039
|
-
const result = reuse ? { ...old, evidenceId, disposition: 'reused', reusedFrom: old.evidenceId, durationMs: 0, snapshot, reuseReason: 'snapshot-local-identities-match' } : { ...await executeCheck(command, text => log(prefix + text), controller.signal, options.deadline, evidenceId), disposition: 'executed', snapshot, reuseReason: snapshot.eligible ? 'snapshot-local-no-current-match' : snapshot.reason };
|
|
1070
|
+
const result = reuse ? { ...old, evidenceId, disposition: 'reused', reusedFrom: old.evidenceId, durationMs: 0, snapshot, reuseReason: 'snapshot-local-identities-match' } : { ...await executeCheck(command, text => log(prefix + text), controller.signal, options.deadline, evidenceId, options.idleTimeoutMs), disposition: 'executed', snapshot, reuseReason: snapshot.eligible ? 'snapshot-local-no-current-match' : snapshot.reason };
|
|
1040
1071
|
const { env: _env, ...definition } = command;
|
|
1041
1072
|
result.checkDefinition = definition;
|
|
1042
1073
|
result.checkDefinitionHash = digest(canonical(command));
|