soturail 0.7.0 → 0.8.1

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 (52) hide show
  1. package/README.md +50 -10
  2. package/dist/cli.js +4 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/brain.d.ts +2 -0
  5. package/dist/commands/brain.js +39 -0
  6. package/dist/commands/brain.js.map +1 -0
  7. package/dist/commands/eval.js +9 -4
  8. package/dist/commands/eval.js.map +1 -1
  9. package/dist/commands/reverse.d.ts +2 -0
  10. package/dist/commands/reverse.js +20 -0
  11. package/dist/commands/reverse.js.map +1 -0
  12. package/dist/commands/rules.d.ts +1 -0
  13. package/dist/commands/rules.js +44 -1
  14. package/dist/commands/rules.js.map +1 -1
  15. package/dist/core/agent-exporter.js +1 -0
  16. package/dist/core/agent-exporter.js.map +1 -1
  17. package/dist/core/agent-runtime.js +5 -2
  18. package/dist/core/agent-runtime.js.map +1 -1
  19. package/dist/core/config.d.ts +21 -0
  20. package/dist/core/config.js +32 -2
  21. package/dist/core/config.js.map +1 -1
  22. package/dist/core/evaluation-suite.d.ts +7 -3
  23. package/dist/core/evaluation-suite.js +252 -13
  24. package/dist/core/evaluation-suite.js.map +1 -1
  25. package/dist/core/evidence-pack.js +11 -0
  26. package/dist/core/evidence-pack.js.map +1 -1
  27. package/dist/core/harness-rail.js +2 -0
  28. package/dist/core/harness-rail.js.map +1 -1
  29. package/dist/core/project-brain.d.ts +268 -0
  30. package/dist/core/project-brain.js +1235 -0
  31. package/dist/core/project-brain.js.map +1 -0
  32. package/dist/core/reverse-specification.d.ts +34 -0
  33. package/dist/core/reverse-specification.js +361 -0
  34. package/dist/core/reverse-specification.js.map +1 -0
  35. package/dist/core/version.d.ts +1 -1
  36. package/dist/core/version.js +1 -1
  37. package/docs/agents.md +26 -0
  38. package/docs/benchmarking.md +19 -0
  39. package/docs/diagram-rail.md +10 -0
  40. package/docs/evaluation-suite.md +32 -0
  41. package/docs/future-rails-index.md +5 -5
  42. package/docs/harness-rail.md +24 -0
  43. package/docs/knowledge-to-rules.md +60 -14
  44. package/docs/memory-rail.md +13 -0
  45. package/docs/project-brain.md +180 -0
  46. package/docs/releases/README.md +2 -0
  47. package/docs/releases/RELEASE_NOTES_v0.8.0.md +44 -0
  48. package/docs/releases/RELEASE_NOTES_v0.8.1.md +42 -0
  49. package/docs/reverse-specification-rail.md +81 -0
  50. package/docs/rules.md +21 -0
  51. package/docs/workflow-rail.md +23 -0
  52. package/package.json +1 -1
@@ -114,7 +114,28 @@ export function getWorkspacePaths(root = process.cwd(), workspaceDir = WORKSPACE
114
114
  workflowIndexFile: path.resolve(workspace, "workflows", "index.json"),
115
115
  worktreesDir: path.resolve(workspace, "worktrees"),
116
116
  diagramsDir: path.resolve(workspace, "diagrams"),
117
- diagramsIndexFile: path.resolve(workspace, "diagrams", "index.json")
117
+ diagramsIndexFile: path.resolve(workspace, "diagrams", "index.json"),
118
+ brainDir: path.resolve(workspace, "brain"),
119
+ brainClaimsFile: path.resolve(workspace, "brain", "claims.jsonl"),
120
+ brainDecisionsFile: path.resolve(workspace, "brain", "decisions.jsonl"),
121
+ brainBugsFile: path.resolve(workspace, "brain", "bugs.jsonl"),
122
+ brainGapsFile: path.resolve(workspace, "brain", "gaps.jsonl"),
123
+ brainRulesFile: path.resolve(workspace, "brain", "rules.jsonl"),
124
+ brainStaleEventsFile: path.resolve(workspace, "brain", "stale-events.jsonl"),
125
+ brainExportsDir: path.resolve(workspace, "brain", "exports"),
126
+ brainProjectProfileFile: path.resolve(workspace, "brain", "project-profile.json"),
127
+ brainArchitectureFile: path.resolve(workspace, "brain", "architecture.json"),
128
+ brainIndexFile: path.resolve(workspace, "brain", "brain-index.json"),
129
+ brainFreshnessFile: path.resolve(workspace, "brain", "freshness.json"),
130
+ brainDoctorFile: path.resolve(workspace, "brain", "doctor.json"),
131
+ brainReverseScanJson: path.resolve(workspace, "brain", "reverse-scan.json"),
132
+ brainReverseScanMd: path.resolve(workspace, "brain", "reverse-scan.md"),
133
+ brainSpecsDir: path.resolve(workspace, "brain", "specs"),
134
+ brainConsolidatedClaimsFile: path.resolve(workspace, "brain", "consolidated-claims.jsonl"),
135
+ brainConsolidationReportJson: path.resolve(workspace, "brain", "consolidation-report.json"),
136
+ brainConsolidationReportMd: path.resolve(workspace, "brain", "consolidation-report.md"),
137
+ brainRepairPlanJson: path.resolve(workspace, "brain", "stale-repair-plan.json"),
138
+ brainRepairPlanMd: path.resolve(workspace, "brain", "stale-repair-plan.md")
118
139
  };
119
140
  }
120
141
  export function relativeToRoot(root, absolutePath) {
@@ -189,7 +210,10 @@ export async function ensureWorkspace(root = process.cwd()) {
189
210
  paths.workflowsDir,
190
211
  paths.workflowTemplatesDir,
191
212
  paths.worktreesDir,
192
- paths.diagramsDir
213
+ paths.diagramsDir,
214
+ paths.brainDir,
215
+ paths.brainExportsDir,
216
+ paths.brainSpecsDir
193
217
  ];
194
218
  for (const dir of dirs) {
195
219
  await ensureDir(dir, result, paths.root);
@@ -204,6 +228,12 @@ export async function ensureWorkspace(root = process.cwd()) {
204
228
  await writeFileIfMissing(paths.harnessFailuresFile, "", result, paths.root);
205
229
  await writeFileIfMissing(paths.policyQueueFile, "", result, paths.root);
206
230
  await writeFileIfMissing(paths.policyDecisionsFile, "", result, paths.root);
231
+ await writeFileIfMissing(paths.brainClaimsFile, "", result, paths.root);
232
+ await writeFileIfMissing(paths.brainDecisionsFile, "", result, paths.root);
233
+ await writeFileIfMissing(paths.brainBugsFile, "", result, paths.root);
234
+ await writeFileIfMissing(paths.brainGapsFile, "", result, paths.root);
235
+ await writeFileIfMissing(paths.brainRulesFile, "", result, paths.root);
236
+ await writeFileIfMissing(paths.brainStaleEventsFile, "", result, paths.root);
207
237
  await writeFileIfMissing(paths.metricsFile, "", result, paths.root);
208
238
  await writeFileIfMissing(paths.cacheBlocks, "", result, paths.root);
209
239
  await writeFileIfMissing(paths.dedupeIndex, "", result, paths.root);
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/core/config.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export interface EvaluationRun {
11
11
  schemaVersion: "soturail.eval.v1";
12
12
  id: string;
13
13
  createdAt: string;
14
- suite: "v0.6.1";
14
+ suite: EvaluationSuiteName;
15
15
  cases: EvaluationCase[];
16
16
  summary: {
17
17
  passed: number;
@@ -23,6 +23,10 @@ export interface EvaluationRun {
23
23
  markdown: string;
24
24
  };
25
25
  }
26
- export declare function listEvaluationCases(): string;
27
- export declare function runEvaluationSuite(root?: string): Promise<EvaluationRun>;
26
+ export type EvaluationSuiteName = "v0.6.1" | "brain";
27
+ export interface EvaluationOptions {
28
+ suite?: EvaluationSuiteName;
29
+ }
30
+ export declare function listEvaluationCases(options?: EvaluationOptions): string;
31
+ export declare function runEvaluationSuite(root?: string, options?: EvaluationOptions): Promise<EvaluationRun>;
28
32
  export declare function readEvaluationReport(root?: string): Promise<string>;
@@ -3,7 +3,7 @@ import os from "node:os";
3
3
  import path from "node:path";
4
4
  import { compressOutputWithEngine } from "../compressors/index.js";
5
5
  import { lintAgentDocs } from "./agent-docs-hygiene.js";
6
- import { appendJsonl, ensureWorkspace, getWorkspacePaths, writeJson } from "./config.js";
6
+ import { appendJsonl, ensureWorkspace, getWorkspacePaths, readJsonl, writeJson } from "./config.js";
7
7
  import { buildRolePack, offloadContext, restoreOffload, routeContext, selectContext } from "./context-intelligence.js";
8
8
  import { validateMermaidDiagram } from "./diagram-validator.js";
9
9
  import { buildWorkflowEvidence } from "./evidence-pack.js";
@@ -13,7 +13,9 @@ import { initHarnessContract, checkHarnessContract, noteHarnessFailure } from ".
13
13
  import { validateJsonFile } from "./json-validator.js";
14
14
  import { rememberMemory, recallMemory } from "./memory-rail.js";
15
15
  import { decidePolicyItem, queuePolicyItem } from "./policy-rail.js";
16
- import { makeRailId } from "./rail-utils.js";
16
+ import { brainDoctor, consolidateBrain, exportBrain, initBrain, recallBrain, rulesFromBrain, scanBrain, staleBrain } from "./project-brain.js";
17
+ import { makeRailId, summarizeText } from "./rail-utils.js";
18
+ import { reverseClaims, reverseExport, reverseGaps, reverseScan, reverseSpecs } from "./reverse-specification.js";
17
19
  import { estimateTokens } from "./token-estimator.js";
18
20
  import { createWorkflow } from "./workflow-store.js";
19
21
  const caseList = [
@@ -30,27 +32,47 @@ const caseList = [
30
32
  ["harness-scenario-quality", "harness", "Repeated harness failures become concrete prevention candidates."],
31
33
  ["diagram-validation-quality", "diagram", "Diagram validation catches invalid syntax and workflow warnings."]
32
34
  ];
33
- export function listEvaluationCases() {
35
+ const brainCaseList = [
36
+ ["brain-claim-quality", "brain", "Verified claims include source paths, hashes and validation status."],
37
+ ["brain-stale-doc-detection", "brain", "Stale detection records source drift for changed evidence."],
38
+ ["brain-rule-extraction", "rules", "Brain-derived rules link back to claims or decisions."],
39
+ ["brain-agent-brief-quality", "agents", "Brain export includes rules, gaps, safe commands and source references."],
40
+ ["reverse-spec-coverage", "reverse", "Reverse specs include source claims and acceptance criteria."],
41
+ ["gap-detection-quality", "reverse", "Reverse gaps are explicit and source-linked."],
42
+ ["decision-trace-quality", "brain", "Brain recall explains match reason, status, confidence and source."],
43
+ ["brain-claim-deduplication", "brain", "Claim consolidation groups duplicates without deleting history."],
44
+ ["brain-stale-repair-guidance", "brain", "Stale checks can write safe repair guidance."],
45
+ ["brain-agent-brief-safety", "agents", "Agent briefs keep stale claims out of verified sections."],
46
+ ["brain-source-range-relocation", "brain", "Moved source ranges are reported as relocation candidates."],
47
+ ["brain-rules-link-integrity", "rules", "Brain-derived rules keep source links and avoid stale active rules."],
48
+ ["brain-doctor-actionability", "brain", "Brain doctor reports actionable next commands."],
49
+ ["brain-export-section-limits", "agents", "Brain exports stay bounded by section limits."]
50
+ ];
51
+ export function listEvaluationCases(options = {}) {
52
+ const suite = options.suite ?? "v0.6.1";
53
+ const cases = suite === "brain" ? brainCaseList : caseList;
34
54
  return [
35
55
  "SotuRail evaluation cases",
36
- `suite: v0.6.1`,
37
- `cases_count: ${caseList.length}`,
56
+ `suite: ${suite}`,
57
+ `cases_count: ${cases.length}`,
38
58
  "",
39
- ...caseList.map(([id, group, title]) => `- ${id} [${group}] ${title}`)
59
+ ...cases.map(([id, group, title]) => `- ${id} [${group}] ${title}`)
40
60
  ].join("\n") + "\n";
41
61
  }
42
- export async function runEvaluationSuite(root = process.cwd()) {
62
+ export async function runEvaluationSuite(root = process.cwd(), options = {}) {
43
63
  await ensureWorkspace(root);
64
+ const suite = options.suite ?? "v0.6.1";
44
65
  const evalRoot = await createEvalProject();
45
66
  const cases = [];
46
- for (const [id, group, title] of caseList) {
47
- cases.push(await runCase(id, group, title, evalRoot));
67
+ const casesToRun = suite === "brain" ? brainCaseList : caseList;
68
+ for (const [id, group, title] of casesToRun) {
69
+ cases.push(await runCase(id, group, title, evalRoot, suite));
48
70
  }
49
71
  const run = {
50
72
  schemaVersion: "soturail.eval.v1",
51
- id: makeRailId("eval", "v0.6.1"),
73
+ id: makeRailId("eval", suite),
52
74
  createdAt: new Date().toISOString(),
53
- suite: "v0.6.1",
75
+ suite,
54
76
  cases,
55
77
  summary: {
56
78
  passed: cases.filter((item) => item.result === "pass").length,
@@ -69,8 +91,10 @@ export async function readEvaluationReport(root = process.cwd()) {
69
91
  const reportPath = path.join(evalDir(root), "latest.md");
70
92
  return fs.readFile(reportPath, "utf8").catch(() => "No evaluation report found. Run: soturail eval run\n");
71
93
  }
72
- async function runCase(id, group, title, root) {
94
+ async function runCase(id, group, title, root, suite) {
73
95
  try {
96
+ if (suite === "brain")
97
+ return runBrainCase(id, group, title, root);
74
98
  switch (id) {
75
99
  case "memory-recall-quality":
76
100
  return await memoryRecallCase(id, group, title, root);
@@ -104,6 +128,45 @@ async function runCase(id, group, title, root) {
104
128
  return makeCase(id, group, title, "fail", { error: error instanceof Error ? error.message : String(error) }, []);
105
129
  }
106
130
  }
131
+ async function runBrainCase(id, group, title, root) {
132
+ try {
133
+ switch (id) {
134
+ case "brain-claim-quality":
135
+ return await brainClaimQualityCase(id, group, title, root);
136
+ case "brain-stale-doc-detection":
137
+ return await brainStaleCase(id, group, title, root);
138
+ case "brain-rule-extraction":
139
+ return await brainRuleCase(id, group, title, root);
140
+ case "brain-agent-brief-quality":
141
+ return await brainBriefCase(id, group, title, root);
142
+ case "reverse-spec-coverage":
143
+ return await reverseSpecCase(id, group, title, root);
144
+ case "gap-detection-quality":
145
+ return await reverseGapCase(id, group, title, root);
146
+ case "decision-trace-quality":
147
+ return await brainRecallCase(id, group, title, root);
148
+ case "brain-claim-deduplication":
149
+ return await brainDedupCase(id, group, title, root);
150
+ case "brain-stale-repair-guidance":
151
+ return await brainRepairCase(id, group, title, root);
152
+ case "brain-agent-brief-safety":
153
+ return await brainBriefSafetyCase(id, group, title, root);
154
+ case "brain-source-range-relocation":
155
+ return await brainRelocationCase(id, group, title, root);
156
+ case "brain-rules-link-integrity":
157
+ return await brainRuleIntegrityCase(id, group, title, root);
158
+ case "brain-doctor-actionability":
159
+ return await brainDoctorActionabilityCase(id, group, title, root);
160
+ case "brain-export-section-limits":
161
+ return await brainExportLimitCase(id, group, title, root);
162
+ default:
163
+ return makeCase(id, group, title, "warn", { reason: "brain case not implemented" }, []);
164
+ }
165
+ }
166
+ catch (error) {
167
+ return makeCase(id, group, title, "fail", { error: error instanceof Error ? error.message : String(error) }, []);
168
+ }
169
+ }
107
170
  async function memoryRecallCase(id, group, title, root) {
108
171
  await rememberMemory("Architecture decision: keep MCP read-only by default and use local context packs.", { tags: ["architecture"], source: "eval" }, root);
109
172
  await rememberMemory("Recurring bug: Windows npm cache can make stale global CLI checks misleading.", { tags: ["bug"], source: "eval" }, root);
@@ -268,16 +331,192 @@ function diagramCase(id, group, title) {
268
331
  const ok = !invalid.valid && warning.valid && warning.findings.some((finding) => finding.message.includes("verification"));
269
332
  return makeCase(id, group, title, ok ? "pass" : "fail", { invalid, warning }, ["diagram-validator"]);
270
333
  }
334
+ async function brainClaimQualityCase(id, group, title, root) {
335
+ await initBrain(root);
336
+ const scan = await scanBrain(root);
337
+ const claims = await readJsonl(getWorkspacePaths(root).brainClaimsFile);
338
+ const verifiedWithSources = claims.filter((claim) => claim["status"] === "verified"
339
+ && typeof claim["sourcePath"] === "string"
340
+ && typeof claim["fileHash"] === "string"
341
+ && typeof claim["rangeHash"] === "string");
342
+ return makeCase(id, group, title, verifiedWithSources.length > 0 ? "pass" : "fail", {
343
+ claimsAdded: scan.claimsAdded,
344
+ verifiedWithSources: verifiedWithSources.length
345
+ }, [getWorkspacePaths(root).brainClaimsFile]);
346
+ }
347
+ async function brainStaleCase(id, group, title, root) {
348
+ await scanBrain(root);
349
+ await fs.appendFile(path.join(root, "src", "core", "release-preflight.ts"), "\n// changed for brain stale eval\n", "utf8");
350
+ const stale = await staleBrain(root);
351
+ return makeCase(id, group, title, stale.freshness.suspect + stale.freshness.stale + stale.freshness.warnings.length > 0 ? "pass" : "fail", {
352
+ suspect: stale.freshness.suspect,
353
+ stale: stale.freshness.stale,
354
+ warnings: stale.freshness.warnings
355
+ }, [getWorkspacePaths(root).brainFreshnessFile]);
356
+ }
357
+ async function brainRuleCase(id, group, title, root) {
358
+ await scanBrain(root);
359
+ const result = await rulesFromBrain(root);
360
+ const linked = result.rules.every((rule) => rule.sourceClaimIds.length > 0 || (rule.sourceDecisionIds?.length ?? 0) > 0);
361
+ return makeCase(id, group, title, result.rules.length > 0 && linked ? "pass" : "fail", {
362
+ rules: result.rules.length,
363
+ linked
364
+ }, [result.markdownPath, getWorkspacePaths(root).brainRulesFile]);
365
+ }
366
+ async function brainBriefCase(id, group, title, root) {
367
+ await scanBrain(root);
368
+ await reverseGaps(root);
369
+ await rulesFromBrain(root);
370
+ const result = await exportBrain("codex", root);
371
+ const ok = result.content.includes("Verified Claims")
372
+ && result.content.includes("Active Rules")
373
+ && result.content.includes("Known Gaps")
374
+ && result.content.includes("Safe Commands")
375
+ && result.content.includes("Do not overclaim");
376
+ return makeCase(id, group, title, ok ? "pass" : "fail", { path: result.path }, [result.path]);
377
+ }
378
+ async function reverseSpecCase(id, group, title, root) {
379
+ await reverseScan("./src", root);
380
+ await reverseClaims("./src", root);
381
+ const specs = await reverseSpecs("./src", root);
382
+ const contents = await Promise.all(specs.paths.map((specPath) => fs.readFile(specPath, "utf8")));
383
+ const ok = contents.some((content) => content.includes("## Source Claims") && content.includes("## Acceptance Criteria"));
384
+ return makeCase(id, group, title, ok ? "pass" : "fail", { specs: specs.paths.length }, specs.paths);
385
+ }
386
+ async function reverseGapCase(id, group, title, root) {
387
+ await scanBrain(root);
388
+ const gaps = await reverseGaps(root);
389
+ const exported = await reverseExport("agent", root);
390
+ return makeCase(id, group, title, gaps.gaps.length > 0 && exported.path.endsWith("reverse-agent-brief.md") ? "pass" : "warn", {
391
+ gaps: gaps.gaps.length,
392
+ export: exported.path
393
+ }, [gaps.markdownPath, exported.path]);
394
+ }
395
+ async function brainRecallCase(id, group, title, root) {
396
+ await scanBrain(root);
397
+ const recall = await recallBrain("release notes docs releases", root);
398
+ const ok = recall.includes("Release notes") && recall.includes("Status/confidence") && recall.includes("Reason:") && recall.includes("Source:");
399
+ return makeCase(id, group, title, ok ? "pass" : "fail", { recall: summarizeText(recall, 500) }, [getWorkspacePaths(root).brainClaimsFile]);
400
+ }
401
+ async function brainDedupCase(id, group, title, root) {
402
+ await scanBrain(root);
403
+ const paths = getWorkspacePaths(root);
404
+ const claims = await readJsonl(paths.brainClaimsFile);
405
+ const releaseClaim = claims.find((claim) => String(claim["claim"]).includes("Release notes live under docs/releases"));
406
+ if (releaseClaim) {
407
+ await appendJsonl(paths.brainClaimsFile, { ...releaseClaim, id: "claim_eval_duplicate_release_notes" });
408
+ }
409
+ const result = await consolidateBrain(root, { dryRun: true });
410
+ return makeCase(id, group, title, result.report.duplicateGroups > 0 && result.report.mergedClaims > 0 ? "pass" : "fail", {
411
+ duplicateGroups: result.report.duplicateGroups,
412
+ mergedClaims: result.report.mergedClaims
413
+ }, [getWorkspacePaths(root).brainConsolidationReportMd]);
414
+ }
415
+ async function brainRepairCase(id, group, title, root) {
416
+ await scanBrain(root);
417
+ await fs.writeFile(path.join(root, "src", "core", "release-preflight.ts"), "export const releaseNotesPath = \"docs/notes/RELEASE.md\";\n", "utf8");
418
+ const result = await staleBrain(root, { repairPlan: true });
419
+ const repair = await fs.readFile(getWorkspacePaths(root).brainRepairPlanMd, "utf8");
420
+ return makeCase(id, group, title, repair.includes("recommended_command") && repair.includes("human_action") ? "pass" : "fail", {
421
+ suggestions: result.repairPlan?.suggestions.length ?? 0
422
+ }, [getWorkspacePaths(root).brainRepairPlanMd]);
423
+ }
424
+ async function brainBriefSafetyCase(id, group, title, root) {
425
+ await scanBrain(root);
426
+ const paths = getWorkspacePaths(root);
427
+ const claims = await readJsonl(paths.brainClaimsFile);
428
+ const releaseClaim = claims.find((claim) => String(claim["claim"]).includes("Release notes live under docs/releases"));
429
+ if (releaseClaim) {
430
+ await appendJsonl(paths.brainClaimsFile, { ...releaseClaim, id: "claim_eval_stale_release_notes", status: "stale" });
431
+ }
432
+ const result = await exportBrain("codex", root, { limit: 5 });
433
+ const verifiedSection = result.content.split("## Verified Claims")[1]?.split("## Active Rules")[0] ?? "";
434
+ const staleSection = result.content.split("## Stale Claims")[1]?.split("## Safe Commands")[0] ?? "";
435
+ const ok = !verifiedSection.includes("claim_eval_stale_release_notes") && staleSection.includes("claim_eval_stale_release_notes");
436
+ return makeCase(id, group, title, ok ? "pass" : "fail", { path: result.path }, [result.path]);
437
+ }
438
+ async function brainRelocationCase(id, group, title, root) {
439
+ await scanBrain(root);
440
+ await fs.writeFile(path.join(root, "src", "core", "release-preflight.ts"), [
441
+ "// unrelated header",
442
+ "export const other = true;",
443
+ "",
444
+ "// Release notes live under docs/releases/.",
445
+ "export const releaseNotesPath = \"docs/releases/RELEASE_NOTES_v1.2.3.md\";",
446
+ ""
447
+ ].join("\n"), "utf8");
448
+ const result = await staleBrain(root, { repairPlan: true });
449
+ const relocated = result.freshness.events.some((event) => event.status === "relocated" && event.candidateRange);
450
+ return makeCase(id, group, title, relocated ? "pass" : "warn", {
451
+ events: result.freshness.events.map((event) => ({ id: event.recordId, status: event.status, reason: event.reason, similarity: event.similarity }))
452
+ }, [getWorkspacePaths(root).brainFreshnessFile]);
453
+ }
454
+ async function brainRuleIntegrityCase(id, group, title, root) {
455
+ await scanBrain(root);
456
+ const paths = getWorkspacePaths(root);
457
+ const claims = await readJsonl(paths.brainClaimsFile);
458
+ const releaseClaim = claims.find((claim) => String(claim["claim"]).includes("Release notes live under docs/releases"));
459
+ if (releaseClaim) {
460
+ await appendJsonl(paths.brainStaleEventsFile, {
461
+ schemaVersion: "soturail.brain.stale-event.v1",
462
+ id: "stale_eval_release_notes",
463
+ recordId: releaseClaim["id"],
464
+ reason: "eval stale source",
465
+ previousHash: "sha256-old",
466
+ currentHash: "sha256-new",
467
+ status: "stale",
468
+ createdAt: new Date().toISOString()
469
+ });
470
+ }
471
+ const result = await rulesFromBrain(root);
472
+ const linked = result.rules.every((rule) => rule.sourceClaimIds.length > 0 || (rule.sourceDecisionIds?.length ?? 0) > 0);
473
+ const staleExcluded = !result.rules.some((rule) => rule.status === "active" && rule.sourceClaimIds.includes(String(releaseClaim?.["id"] ?? "")));
474
+ return makeCase(id, group, title, linked && staleExcluded ? "pass" : "fail", {
475
+ linked,
476
+ staleExcluded,
477
+ rules: result.rules.length
478
+ }, [result.markdownPath, result.jsonPath]);
479
+ }
480
+ async function brainDoctorActionabilityCase(id, group, title, root) {
481
+ await scanBrain(root);
482
+ const result = await brainDoctor(root, { repairPlan: true });
483
+ const ok = result.output.includes("soturail brain consolidate --dry-run")
484
+ && result.output.includes("soturail brain stale --repair-plan")
485
+ && result.output.includes("soturail eval run --suite brain");
486
+ return makeCase(id, group, title, ok ? "pass" : "fail", { output: summarizeText(result.output, 500) }, [getWorkspacePaths(root).brainDoctorFile]);
487
+ }
488
+ async function brainExportLimitCase(id, group, title, root) {
489
+ await scanBrain(root);
490
+ const result = await exportBrain("codex", root, { limit: 3 });
491
+ const verifiedSection = result.content.split("## Verified Claims")[1]?.split("## Active Rules")[0] ?? "";
492
+ const bullets = verifiedSection.split(/\r?\n/).filter((line) => line.startsWith("- ")).length;
493
+ return makeCase(id, group, title, bullets <= 3 ? "pass" : "fail", { bullets }, [result.path]);
494
+ }
271
495
  function makeCase(id, group, title, result, details, evidence) {
272
496
  return { id, group, title, result, details, evidence };
273
497
  }
274
498
  async function createEvalProject() {
275
499
  const root = await fs.mkdtemp(path.join(os.tmpdir(), "soturail-eval-"));
276
500
  await fs.mkdir(path.join(root, "src"), { recursive: true });
501
+ await fs.mkdir(path.join(root, "src", "core"), { recursive: true });
502
+ await fs.mkdir(path.join(root, "src", "commands"), { recursive: true });
277
503
  await fs.mkdir(path.join(root, "docs"), { recursive: true });
504
+ await fs.mkdir(path.join(root, "docs", "releases"), { recursive: true });
278
505
  await fs.mkdir(path.join(root, "tests"), { recursive: true });
279
506
  await fs.writeFile(path.join(root, "README.md"), "# Eval Project\n\nSotuRail local-first Context OS evaluation fixture.\n", "utf8");
280
- await fs.writeFile(path.join(root, "package.json"), "{\"scripts\":{\"test\":\"vitest run\",\"build\":\"tsc\"}}\n", "utf8");
507
+ await fs.writeFile(path.join(root, "package.json"), "{\"name\":\"soturail-eval\",\"version\":\"1.2.3\",\"scripts\":{\"test\":\"vitest run\",\"build\":\"tsc\"}}\n", "utf8");
508
+ await fs.writeFile(path.join(root, "src", "cli.ts"), "registerBrainCommand(program);\nregisterReverseCommand(program);\nregisterWorkflowCommand(program);\n", "utf8");
509
+ await fs.writeFile(path.join(root, "src", "core", "version.ts"), "export const SOTURAIL_VERSION = \"1.2.3\";\n", "utf8");
510
+ await fs.writeFile(path.join(root, "src", "core", "release-preflight.ts"), "export const releaseNotesPath = \"docs/releases/RELEASE_NOTES_v1.2.3.md\";\n", "utf8");
511
+ await fs.writeFile(path.join(root, "src", "core", "agent-runtime.ts"), "export const policy = \"No arbitrary shell execution through MCP by default.\";\n", "utf8");
512
+ await fs.writeFile(path.join(root, "src", "core", "workflow-store.ts"), "export const workflowStorage = \".soturail/workflows/\";\n", "utf8");
513
+ await fs.writeFile(path.join(root, "src", "core", "diagram-validator.ts"), "export const diagramNote = \"lightweight Mermaid validation, not a full parser\";\n", "utf8");
514
+ await fs.writeFile(path.join(root, "src", "core", "evaluation-suite.ts"), "export const evalPath = \".soturail/eval/latest.json\";\n", "utf8");
515
+ await fs.writeFile(path.join(root, "src", "commands", "brain.ts"), "program.command(\"brain\");\n", "utf8");
516
+ await fs.writeFile(path.join(root, "src", "commands", "reverse.ts"), "program.command(\"reverse\");\n", "utf8");
517
+ await fs.writeFile(path.join(root, "docs", "releases", "README.md"), "# Release Notes\n\nRelease notes live under docs/releases/.\n", "utf8");
518
+ await fs.writeFile(path.join(root, "docs", "releases", "RELEASE_NOTES_v1.2.3.md"), "# Notes\n", "utf8");
519
+ await fs.writeFile(path.join(root, "docs", "diagram-rail.md"), "# Diagram Rail\n\nNo full Mermaid parser is available yet.\n", "utf8");
281
520
  await fs.writeFile(path.join(root, "src", "refund-policy.ts"), [
282
521
  "export function validateRefund() {",
283
522
  " // Rule R08: refunds must preserve release evidence.",
@@ -1 +1 @@
1
- {"version":3,"file":"evaluation-suite.js","sourceRoot":"","sources":["../../src/core/evaluation-suite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluation-suite.js","sourceRoot":"","sources":["../../src/core/evaluation-suite.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { promises as fs } from "node:fs";
3
3
  import path from "node:path";
4
4
  import { promisify } from "node:util";
5
5
  import { ensureWorkspace, getWorkspacePaths, readJsonl, relativeToRoot } from "./config.js";
6
+ import { readBrainCounts } from "./project-brain.js";
6
7
  import { makeRailId } from "./rail-utils.js";
7
8
  import { readWorkflow } from "./workflow-store.js";
8
9
  import { SOTURAIL_VERSION } from "./version.js";
@@ -26,6 +27,7 @@ export async function buildWorkflowEvidence(id, root = process.cwd()) {
26
27
  const diagramValidationPath = path.join(paths.diagramsDir, "validation.json");
27
28
  const offloadIds = await listOffloadIds(paths.contextOffloadDir);
28
29
  const packageVersion = await readPackageVersion(root);
30
+ const brainCounts = await readBrainCounts(root).catch(() => null);
29
31
  const releaseNotesPath = packageVersion ? path.join(root, "docs", "releases", `RELEASE_NOTES_v${packageVersion}.md`) : "";
30
32
  const reportId = makeRailId("evidence", id);
31
33
  const reportPath = path.join(paths.reportsDir, `${reportId}.md`);
@@ -87,6 +89,15 @@ export async function buildWorkflowEvidence(id, root = process.cwd()) {
87
89
  `- diagram_validation: ${await exists(diagramValidationPath) ? relativeToRoot(root, diagramValidationPath) : "missing"}`,
88
90
  `- eval_report: ${await exists(evalReportPath) ? relativeToRoot(root, evalReportPath) : "missing"}`,
89
91
  "",
92
+ "## Project Brain Evidence",
93
+ "",
94
+ `- brain_profile: ${await exists(paths.brainProjectProfileFile) ? relativeToRoot(root, paths.brainProjectProfileFile) : "missing"}`,
95
+ `- brain_claims: ${brainCounts?.claims ?? 0}`,
96
+ `- brain_gaps: ${brainCounts?.gaps ?? 0}`,
97
+ `- brain_stale_events: ${brainCounts?.staleEvents ?? 0}`,
98
+ `- brain_suspect_or_stale: ${brainCounts?.suspectOrStale ?? 0}`,
99
+ `- brain_doctor: ${await exists(paths.brainDoctorFile) ? relativeToRoot(root, paths.brainDoctorFile) : "missing"}`,
100
+ "",
90
101
  "## Release Evidence",
91
102
  "",
92
103
  `- package_version: ${packageVersion ?? "unknown"}`,