@llm4ts/flow 2.30.1 → 2.31.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 (74) hide show
  1. package/dist/AutonomyContract.d.ts +12 -0
  2. package/dist/AutonomyContract.d.ts.map +1 -0
  3. package/dist/AutonomyContract.js +51 -0
  4. package/dist/AutonomyContract.js.map +1 -0
  5. package/dist/CarriedNotes.d.ts +10 -0
  6. package/dist/CarriedNotes.d.ts.map +1 -1
  7. package/dist/CarriedNotes.js +27 -2
  8. package/dist/CarriedNotes.js.map +1 -1
  9. package/dist/Evidence.d.ts +12 -0
  10. package/dist/Evidence.d.ts.map +1 -0
  11. package/dist/Evidence.js +30 -0
  12. package/dist/Evidence.js.map +1 -0
  13. package/dist/Flow.d.ts +35 -3
  14. package/dist/Flow.d.ts.map +1 -1
  15. package/dist/Flow.js +58 -4
  16. package/dist/Flow.js.map +1 -1
  17. package/dist/FlowEvents.d.ts +14 -1
  18. package/dist/FlowEvents.d.ts.map +1 -1
  19. package/dist/FlowEvents.js +13 -0
  20. package/dist/FlowEvents.js.map +1 -1
  21. package/dist/GateTriage.d.ts +81 -0
  22. package/dist/GateTriage.d.ts.map +1 -0
  23. package/dist/GateTriage.js +161 -0
  24. package/dist/GateTriage.js.map +1 -0
  25. package/dist/Gates.d.ts +35 -0
  26. package/dist/Gates.d.ts.map +1 -0
  27. package/dist/Gates.js +63 -0
  28. package/dist/Gates.js.map +1 -0
  29. package/dist/OracleGuard.d.ts +53 -0
  30. package/dist/OracleGuard.d.ts.map +1 -0
  31. package/dist/OracleGuard.js +165 -0
  32. package/dist/OracleGuard.js.map +1 -0
  33. package/dist/Pack.d.ts +7 -0
  34. package/dist/Pack.d.ts.map +1 -1
  35. package/dist/Pack.js +9 -0
  36. package/dist/Pack.js.map +1 -1
  37. package/dist/Retro.d.ts.map +1 -1
  38. package/dist/Retro.js +5 -0
  39. package/dist/Retro.js.map +1 -1
  40. package/dist/Review.d.ts +68 -2
  41. package/dist/Review.d.ts.map +1 -1
  42. package/dist/Review.js +158 -27
  43. package/dist/Review.js.map +1 -1
  44. package/dist/Roster.d.ts +2 -0
  45. package/dist/Roster.d.ts.map +1 -1
  46. package/dist/Roster.js +3 -1
  47. package/dist/Roster.js.map +1 -1
  48. package/dist/RosterSeats.d.ts +2 -0
  49. package/dist/RosterSeats.d.ts.map +1 -1
  50. package/dist/RosterSeats.js.map +1 -1
  51. package/dist/Stories.d.ts +36 -2
  52. package/dist/Stories.d.ts.map +1 -1
  53. package/dist/Stories.js +159 -12
  54. package/dist/Stories.js.map +1 -1
  55. package/dist/StoryPlan.d.ts +6 -0
  56. package/dist/StoryPlan.d.ts.map +1 -1
  57. package/dist/StoryPlan.js +9 -2
  58. package/dist/StoryPlan.js.map +1 -1
  59. package/package.json +7 -2
  60. package/src/AutonomyContract.ts +61 -0
  61. package/src/CarriedNotes.ts +37 -2
  62. package/src/Evidence.ts +43 -0
  63. package/src/Flow.ts +109 -3
  64. package/src/FlowEvents.ts +13 -0
  65. package/src/GateTriage.ts +250 -0
  66. package/src/Gates.ts +104 -0
  67. package/src/OracleGuard.ts +205 -0
  68. package/src/Pack.ts +16 -0
  69. package/src/Retro.ts +7 -0
  70. package/src/Review.ts +261 -34
  71. package/src/Roster.ts +3 -1
  72. package/src/RosterSeats.ts +2 -0
  73. package/src/Stories.ts +289 -16
  74. package/src/StoryPlan.ts +11 -1
@@ -1 +1 @@
1
- {"version":3,"file":"RosterSeats.js","sourceRoot":"","sources":["../src/RosterSeats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RosterSeats.js","sourceRoot":"","sources":["../src/RosterSeats.ts"],"names":[],"mappings":"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"}
package/dist/Stories.d.ts CHANGED
@@ -5,18 +5,22 @@ import type * as Scope from "effect/Scope";
5
5
  import type { LlmServiceShape } from "@llm4ts/core/LlmService";
6
6
  import type { TokenUsage } from "@llm4ts/core/Models";
7
7
  import { type BoardSyncShape } from "./BoardSync.ts";
8
+ import { type GateLogDir } from "./Gates.ts";
8
9
  import type { ContextOptions, FlowContextShape } from "./FlowContext.ts";
9
10
  import { EpicCheckoutDirty, MissingDependency, PerimeterViolation, StoryFailed, type FlowError } from "./FlowError.ts";
10
11
  import { type FlowEventsShape } from "./FlowEvents.ts";
11
12
  import { type GitToolShape } from "./GitTool.ts";
12
13
  import { type PlainFileStoreShape } from "./Persistence.ts";
13
14
  import { Plan } from "./Plan.ts";
14
- import { ReviewIssue, ReviewResult } from "./Review.ts";
15
+ import { ReviewIssue, ReviewResult, type FixPromptOptions } from "./Review.ts";
16
+ import { type OracleRules } from "./OracleGuard.ts";
17
+ import { type ContractProfile } from "./AutonomyContract.ts";
15
18
  import type { Reviewer } from "./Reviewer.ts";
16
19
  import { type Story, type StoryPlan } from "./StoryPlan.ts";
17
20
  declare const StoryVerdict_base: Schema.Class<StoryVerdict, Schema.Struct<{
18
21
  readonly issues: Schema.$Array<typeof ReviewIssue>;
19
22
  readonly summary: Schema.withDecodingDefaultKey<Schema.withConstructorDefault<Schema.String>, never>;
23
+ readonly passed: Schema.optionalKey<Schema.Int>;
20
24
  dimensions: Schema.$Array<Schema.Struct<{
21
25
  readonly id: Schema.String;
22
26
  readonly score: Schema.Number;
@@ -65,6 +69,8 @@ declare const StoryOutcome_base: Schema.Class<StoryOutcome, Schema.Struct<{
65
69
  /** ESTIMATES, never measurements (ADR 0012). */
66
70
  readonly estimatedTokens: Schema.optionalKey<Schema.Int>;
67
71
  readonly estimatedCostUsd: Schema.optionalKey<Schema.Number>;
72
+ /** Gate failures already red on the story's base, not charged to it (ADR 0027). */
73
+ readonly inherited: Schema.optionalKey<Schema.$Array<Schema.String>>;
68
74
  }>, {}>;
69
75
  export declare class StoryOutcome extends StoryOutcome_base {
70
76
  }
@@ -173,7 +179,35 @@ export interface StoriesOptions {
173
179
  * The target's gates in a directory. `events` is the story's lane, so a
174
180
  * gate's timing names its story; a gate may ignore it.
175
181
  */
176
- readonly gates: (workDir: string, events?: FlowEventsShape) => Effect.Effect<ReviewResult, FlowError>;
182
+ readonly gates: (workDir: string, events?: FlowEventsShape,
183
+ /** Where to write one log per gate command for this run; absent writes none. */
184
+ log?: GateLogDir) => Effect.Effect<ReviewResult, FlowError>;
185
+ /**
186
+ * The gate commands as configured and the application directory (ADR 0027):
187
+ * with them, the gates' result on each epic head is recorded as a baseline
188
+ * and a story is charged only with the failing lines it added. Without
189
+ * them every red line blocks, as before.
190
+ */
191
+ readonly gateCommands?: ReadonlyArray<ReadonlyArray<string>>;
192
+ readonly appDir?: string;
193
+ /** The test gate alone, for one rerun that tells a flaky line from a new one; omit to never rerun. */
194
+ readonly testGate?: (workDir: string, events?: FlowEventsShape) => Effect.Effect<ReviewResult, FlowError>;
195
+ /** How gate output reaches the coder in the fix prompt. */
196
+ readonly fix?: FixPromptOptions;
197
+ /** Test-file and marker patterns for the oracle guard; default rules when absent (ADR 0027). */
198
+ readonly oracleRules?: OracleRules;
199
+ /**
200
+ * The autonomy contract profile for the coder's system prompt (ADR 0027
201
+ * decision 5). Default: the roster executor's `contract`, else `full`.
202
+ */
203
+ readonly contract?: ContractProfile;
204
+ /**
205
+ * The arguments of every tool call the story's coder made since `since`
206
+ * (epoch ms), from the run's transcript; `undefined` when the run keeps
207
+ * none for it. With it, a task's `verified:` claims are checked
208
+ * (ADR 0027 decision 6).
209
+ */
210
+ readonly toolCalls?: (story: Story, since: number) => Effect.Effect<ReadonlyArray<string> | undefined, FlowError>;
177
211
  /** Story-level judge over the branch's diff against the epic branch; omit to skip. */
178
212
  readonly judge?: (story: Story, diff: string, seats: StorySeats,
179
213
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Stories.d.ts","sourceRoot":"","sources":["../src/Stories.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Stories.d.ts","sourceRoot":"","sources":["../src/Stories.ts"],"names":[],"mappings":"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"}
package/dist/Stories.js CHANGED
@@ -16,8 +16,9 @@ import { cap } from "./Context.js";
16
16
  import { BoardItem } from "./BoardSync.js";
17
17
  import { makeChat } from "./Chat.js";
18
18
  import { implementPlanFlow } from "./Flow.js";
19
+ import { GateBaseline, baselineKey, ensureBaseline as ensureStoredBaseline, failingLinesOf, storyGateLogDir, triageGates, writeBaseline } from "./Gates.js";
19
20
  import { describeFlowError, rosterExhaustedPrefix, EpicCheckoutDirty, MissingDependency, PerimeterViolation, StoryFailed } from "./FlowError.js";
20
- import { Info, JudgedDimension, StoryJudged, Timed, withLane } from "./FlowEvents.js";
21
+ import { EvidenceChecked, Info, JudgedDimension, StoryJudged, Timed, withLane } from "./FlowEvents.js";
21
22
  import { timeEffect, withTimedRole } from "./Timing.js";
22
23
  import { statusPaths } from "./GitTool.js";
23
24
  import { checkPerimeter, enforcePerimeter, isWithinPerimeter, perimeterGate, strayTasks } from "./Perimeter.js";
@@ -25,8 +26,11 @@ import { loadVersioned, makePlanStore, saveVersioned } from "./Persistence.js";
25
26
  import { Plan, Task } from "./Plan.js";
26
27
  import { stage } from "./PlanExecution.js";
27
28
  import { planFrom } from "./Planner.js";
28
- import { ReviewIssue, ReviewResult } from "./Review.js";
29
+ import { ReviewIssue, ReviewResult, applyTriage } from "./Review.js";
30
+ import { checkOracle, defaultOracleRules, parseUnifiedDiff } from "./OracleGuard.js";
29
31
  import { cachedValue, fingerprintOf } from "./ReviewCache.js";
32
+ import { withContract } from "./AutonomyContract.js";
33
+ import { fabricatedStatusIssues, unverifiedClaims } from "./Evidence.js";
30
34
  import { dependentsOf, ownerOf, pathsNamedIn, readyStories, relationOf, storyHash, topologicalWaves, validateStoryPlan } from "./StoryPlan.js";
31
35
  import { isOutageMessage } from "./TransientRetry.js";
32
36
  import { attr, withKindSpan } from "./Spans.js";
@@ -70,7 +74,9 @@ export class StoryOutcome extends Schema.Class("StoryOutcome")({
70
74
  executor: Schema.optionalKey(Schema.String),
71
75
  /** ESTIMATES, never measurements (ADR 0012). */
72
76
  estimatedTokens: Schema.optionalKey(Schema.Int),
73
- estimatedCostUsd: Schema.optionalKey(Schema.Number)
77
+ estimatedCostUsd: Schema.optionalKey(Schema.Number),
78
+ /** Gate failures already red on the story's base, not charged to it (ADR 0027). */
79
+ inherited: Schema.optionalKey(Schema.Array(Schema.String))
74
80
  }) {
75
81
  }
76
82
  export class EpicReport extends Schema.Class("EpicReport")({
@@ -111,6 +117,18 @@ export const renderEpicReport = (report) => {
111
117
  if (cost.length > 0) {
112
118
  lines.push(`- Estimated cost: ${money(cost.reduce((sum, value) => sum + value, 0))}`);
113
119
  }
120
+ const inherited = new Map();
121
+ for (const story of report.stories) {
122
+ for (const line of story.inherited ?? []) {
123
+ inherited.set(line, [...(inherited.get(line) ?? []), story.id]);
124
+ }
125
+ }
126
+ if (inherited.size > 0) {
127
+ lines.push("", "## Inherited gate failures", "", "Red on the base before the story ran; not charged to it. A cleanup story may own them.", "");
128
+ for (const [line, stories] of inherited) {
129
+ lines.push(`- ${line} (stories: ${stories.join(", ")})`);
130
+ }
131
+ }
114
132
  const coded = report.stories.filter((story) => story.executor !== undefined);
115
133
  if (coded.length > 0) {
116
134
  // A story is counted for the executor that finished it; a handover chain
@@ -426,6 +444,36 @@ export const implementStoriesFlow = Effect.fn("@llm4ts/flow/Stories.implement")(
426
444
  const findingsPath = (story) => join(options.stateDir, `stories/${story.id}.findings.md`);
427
445
  /** What the coder's tasks learned, carried into the next task of the same story. */
428
446
  const notesPath = (story) => join(options.stateDir, `stories/${story.id}.notes.md`);
447
+ // Gates with a memory (ADR 0027): baselines are keyed by the commit a
448
+ // change started from, the app dir and the commands; without commands
449
+ // nothing is recorded and every red line blocks, as before.
450
+ const appDir = options.appDir ?? ".";
451
+ const gateCommands = options.gateCommands;
452
+ const rootsOf = (workDir) => [join(workDir, appDir), workDir];
453
+ const keyFor = (commit) => baselineKey({ baseCommit: commit, appDir, commands: gateCommands ?? [] });
454
+ const baselineOf = (commit, result, workDir) => Effect.map(Clock.currentTimeMillis, (recordedAt) => GateBaseline.make({
455
+ baseCommit: commit,
456
+ appDir,
457
+ commands: (gateCommands ?? []).map((command) => command.join(" ")),
458
+ failingLines: failingLinesOf(result, rootsOf(workDir)),
459
+ ...(result.passed === undefined ? {} : { passedCount: result.passed }),
460
+ recordedAt
461
+ }));
462
+ /** The baseline for `commit`, recording one from `run` when none is stored. */
463
+ const ensureBaseline = (commit, run, workDir) => gateCommands === undefined
464
+ ? Effect.succeed(undefined)
465
+ : ensureStoredBaseline({
466
+ files,
467
+ stateDir: options.stateDir,
468
+ commit,
469
+ appDir,
470
+ commands: gateCommands,
471
+ run,
472
+ roots: rootsOf(workDir),
473
+ now: Clock.currentTimeMillis
474
+ });
475
+ /** What each story inherited, for its outcome. */
476
+ const inheritedByStory = new Map();
429
477
  const findingLines = (result) => result.issues.map((issue) => {
430
478
  const where = issue.file === undefined
431
479
  ? ""
@@ -469,6 +517,11 @@ export const implementStoriesFlow = Effect.fn("@llm4ts/flow/Stories.implement")(
469
517
  };
470
518
  yield* epicCheckoutClean();
471
519
  yield* stage(events, "epic branch", context.git.checkoutOrCreate(epicBranch));
520
+ if (gateCommands !== undefined) {
521
+ // The gates as the epic head stands: what every story may inherit.
522
+ const epicHead = yield* context.git.checkpoint;
523
+ yield* ensureBaseline(epicHead, options.gates(context.workDir, events), context.workDir);
524
+ }
472
525
  const waves = topologicalWaves(plan);
473
526
  const waveOf = (id) => {
474
527
  const index = waves.findIndex((wave) => wave.includes(id));
@@ -494,10 +547,18 @@ export const implementStoriesFlow = Effect.fn("@llm4ts/flow/Stories.implement")(
494
547
  const checkpoint = yield* context.git.checkpoint;
495
548
  yield* timeEffect(lane, context.git.merge(branch, `${plan.epicId}: merge story ${story.id}`), (ms, failed) => Timed.make({ kind: "merge", label: "merge", ms, ...(failed ? { failed } : {}) }));
496
549
  const gate = yield* options.gates(context.workDir, lane);
497
- if (!gate.isClean) {
550
+ // Charged only with what the merge added: the head before it had
551
+ // a baseline (run start or the previous merge).
552
+ const before = yield* ensureBaseline(checkpoint, Effect.succeed(ReviewResult.make({ issues: [] })), context.workDir);
553
+ const verdict = triageGates(gate, before, rootsOf(context.workDir));
554
+ if (!verdict.blocking.isClean) {
498
555
  // Never leave a red epic head for the next story to inherit.
499
556
  yield* context.git.rollback(checkpoint);
500
- return yield* failed(story, `epic gates failed after merging; merge undone:\n${issueLines(gate)}`);
557
+ return yield* failed(story, `epic gates failed after merging; merge undone:\n${issueLines(verdict.blocking)}`);
558
+ }
559
+ if (gateCommands !== undefined) {
560
+ const mergedHead = yield* context.git.checkpoint;
561
+ yield* writeBaseline(files, options.stateDir, keyFor(mergedHead), yield* baselineOf(mergedHead, gate, context.workDir));
501
562
  }
502
563
  yield* laneOf(story).publish(Info.make({ message: `story ${story.id}: merged into ${epicBranch}` }));
503
564
  })));
@@ -601,13 +662,48 @@ export const implementStoriesFlow = Effect.fn("@llm4ts/flow/Stories.implement")(
601
662
  const git = storyContext.git;
602
663
  const watchedSeats = { ...seats, context: storyContext };
603
664
  const extra = options.system === undefined ? undefined : yield* options.system(story);
604
- const system = [
665
+ const contractProfile = options.contract ??
666
+ (coderExecutor === undefined ? undefined : roster?.contractOf?.(coderExecutor)) ??
667
+ "full";
668
+ const system = withContract([
605
669
  perimeterRules(story, { plan, worktree: state.worktree, epicCheckout: context.workDir }),
606
670
  gateRules,
607
671
  extra
608
672
  ]
609
673
  .filter((part) => part !== undefined && part.trim().length > 0)
610
- .join("\n\n");
674
+ .join("\n\n"), contractProfile);
675
+ /** What the coder claimed to have run and did not, task by task, for the judge. */
676
+ const evidenceNotes = [];
677
+ const checkEvidence = (task, trailer, startedAt) => Effect.gen(function* () {
678
+ const calls = options.toolCalls === undefined ? undefined : yield* options.toolCalls(story, startedAt);
679
+ const confidence = trailer.confidence === undefined ? {} : { confidence: trailer.confidence };
680
+ if (calls === undefined) {
681
+ yield* laneOf(story).publish(EvidenceChecked.make({
682
+ task: task.title,
683
+ claimed: trailer.verified.length,
684
+ unverified: 0,
685
+ unchecked: true,
686
+ lane: story.id,
687
+ ...confidence
688
+ }));
689
+ return;
690
+ }
691
+ const unverified = unverifiedClaims(trailer.verified, calls);
692
+ yield* laneOf(story).publish(EvidenceChecked.make({
693
+ task: task.title,
694
+ claimed: trailer.verified.length,
695
+ unverified: unverified.length,
696
+ lane: story.id,
697
+ ...confidence
698
+ }));
699
+ if (unverified.length > 0) {
700
+ evidenceNotes.push(`task "${task.title}": claimed ${unverified.map((command) => `\`${command}\``).join(", ")} — no tool call ran it`);
701
+ yield* appendFindings(story, `evidence "${task.title}" — ${unverified.length} claimed command(s) never ran`, ReviewResult.make({ issues: fabricatedStatusIssues(unverified), summary: "" }));
702
+ }
703
+ if (trailer.confidence === "low") {
704
+ evidenceNotes.push(`task "${task.title}": the coder said confidence: low`);
705
+ }
706
+ });
611
707
  const prompt = storyPrompt(story);
612
708
  // Catch up before setup: the epic may have changed the manifest too.
613
709
  yield* catchUp(story, git);
@@ -632,14 +728,49 @@ export const implementStoriesFlow = Effect.fn("@llm4ts/flow/Stories.implement")(
632
728
  }
633
729
  // The target's gates plus the perimeter: a stray path is a gate failure
634
730
  // the task review loop hands back to the coder before anything commits.
731
+ // The epic head this worktree started from: what the story may inherit.
732
+ const storyBase = yield* git.checkpoint;
733
+ const storyBaseline = ensureBaseline(storyBase, options.gates(state.worktree, laneOf(story)), state.worktree);
734
+ // The oracle guard over the story's whole change against the epic:
735
+ // committed on the branch and uncommitted in the worktree (ADR 0027).
736
+ const oracleGate = (target) => story.testsChange
737
+ ? Effect.succeed(ReviewResult.make({ issues: [] }))
738
+ : Effect.gen(function* () {
739
+ const committed = yield* git.diffVsBase(epicBranch);
740
+ const uncommitted = yield* git.diffAll;
741
+ const base = gateCommands === undefined ? undefined : (yield* storyBaseline)?.passedCount;
742
+ const issues = checkOracle(parseUnifiedDiff(`${committed}\n${uncommitted}`), { base, current: target.passed }, options.oracleRules ?? defaultOracleRules, false);
743
+ return ReviewResult.make({ issues, summary: issues.length === 0 ? "" : "oracle guard" });
744
+ });
635
745
  const gates = Effect.gen(function* () {
636
- const target = yield* options.gates(state.worktree, laneOf(story));
746
+ const target = yield* options.gates(state.worktree, laneOf(story), {
747
+ files,
748
+ dir: storyGateLogDir(options.stateDir, story.id)
749
+ });
637
750
  const changed = yield* perimeterNow(story, git);
638
- return combined(target, perimeterGate([...changed.sharedReadOnly, ...changed.outside], story));
751
+ return combined(combined(target, perimeterGate([...changed.sharedReadOnly, ...changed.outside], story)), yield* oracleGate(target));
639
752
  });
753
+ const triage = {
754
+ baseline: storyBaseline,
755
+ roots: rootsOf(state.worktree),
756
+ ...(options.testGate === undefined
757
+ ? {}
758
+ : { rerunTest: options.testGate(state.worktree, laneOf(story)) })
759
+ };
760
+ if (gateCommands !== undefined) {
761
+ const inherited = (yield* storyBaseline)?.failingLines ?? [];
762
+ if (inherited.length > 0) {
763
+ inheritedByStory.set(story.id, inherited);
764
+ yield* appendFindings(story, "gate failures inherited from the base (not charged to this story)", ReviewResult.make({
765
+ issues: inherited.map((line) => ReviewIssue.make({ severity: "Info", title: line, description: "", origin: "base" })),
766
+ summary: ""
767
+ }));
768
+ }
769
+ }
640
770
  const coderTurn = (text) => Effect.flatMap(makeChat(storyContext.coder, { system, events, agent: "coder" }), (chat) => chat.ask(text));
641
771
  const commitGreen = (message, why) => Effect.gen(function* () {
642
- const regated = yield* gates;
772
+ const reported = yield* Ref.make(new Set());
773
+ const regated = yield* applyTriage(yield* gates, triage, laneOf(story), reported);
643
774
  if (!regated.isClean) {
644
775
  return yield* failed(story, `gates broke ${why}:\n${issueLines(regated)}`);
645
776
  }
@@ -740,6 +871,8 @@ export const implementStoriesFlow = Effect.fn("@llm4ts/flow/Stories.implement")(
740
871
  },
741
872
  checkoutBranch: false,
742
873
  lint: gates,
874
+ triage,
875
+ ...(options.fix === undefined ? {} : { fix: options.fix }),
743
876
  // A story's final state is judged and gated downstream (judge round,
744
877
  // perimeter check, epic gates), so a task the coder finds already
745
878
  // satisfied — without saying the exact sentinel — must not sink the
@@ -750,6 +883,7 @@ export const implementStoriesFlow = Effect.fn("@llm4ts/flow/Stories.implement")(
750
883
  // the story's findings log for people to read.
751
884
  reviewCache: { files, dir: reviewCacheDir(story) },
752
885
  onReview: (task, round, result, settled) => appendFindings(story, `review "${task.title}" round ${round} — ${result.isClean ? "clean" : `${result.issues.length} issue(s)`}${settled ? "" : ", fixing"}`, result),
886
+ onTaskReply: (task, _reply, trailer, startedAt) => checkEvidence(task, trailer, startedAt),
753
887
  ...(options.reviewers === undefined ? {} : { reviewers: options.reviewers }),
754
888
  ...(options.maxRounds === undefined ? {} : { maxRounds: options.maxRounds })
755
889
  });
@@ -794,7 +928,18 @@ export const implementStoriesFlow = Effect.fn("@llm4ts/flow/Stories.implement")(
794
928
  // be on the epic (an earlier story or run put it there). Judge that
795
929
  // code instead: the owned paths against the empty tree.
796
930
  const empty = diff.trim().length === 0;
797
- const subject = empty ? yield* git.diffVsBaseScoped(emptyTree, story.owned, false) : diff;
931
+ const judgedCode = empty ? yield* git.diffVsBaseScoped(emptyTree, story.owned, false) : diff;
932
+ // What the coder claimed and could not show travels with the subject
933
+ // (ADR 0027 decision 6): the judge weighs the code knowing the
934
+ // story's own account of its testing is not evidence.
935
+ const subject = evidenceNotes.length === 0
936
+ ? judgedCode
937
+ : [
938
+ "Evidence notes from the run (not part of the diff):",
939
+ ...evidenceNotes.map((note) => `- ${note}`),
940
+ "",
941
+ judgedCode
942
+ ].join("\n");
798
943
  // The verdict is kept beside a fingerprint of what was judged: a
799
944
  // rerun that finds the same diff gets the same answer without a
800
945
  // model call, and the last verdict is on disk to read. Only the
@@ -918,6 +1063,7 @@ export const implementStoriesFlow = Effect.fn("@llm4ts/flow/Stories.implement")(
918
1063
  status: "merged",
919
1064
  ...(last === undefined ? {} : { executor: last })
920
1065
  }));
1066
+ const inherited = inheritedByStory.get(story.id);
921
1067
  return StoryOutcome.make({
922
1068
  id: story.id,
923
1069
  title: story.title,
@@ -926,7 +1072,8 @@ export const implementStoriesFlow = Effect.fn("@llm4ts/flow/Stories.implement")(
926
1072
  ...(result.judge === undefined ? {} : { judge: result.judge }),
927
1073
  ...(result.executor === undefined ? {} : { executor: result.executor }),
928
1074
  ...(result.totals === undefined ? {} : { estimatedTokens: result.totals.total }),
929
- ...(result.totals?.costUsd === undefined ? {} : { estimatedCostUsd: result.totals.costUsd })
1075
+ ...(result.totals?.costUsd === undefined ? {} : { estimatedCostUsd: result.totals.costUsd }),
1076
+ ...(inherited === undefined ? {} : { inherited })
930
1077
  });
931
1078
  });
932
1079
  /** A story's run as a completion — failures become outcomes, never fiber deaths. */