@llm4ts/flow 2.31.1 → 2.32.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 (86) hide show
  1. package/dist/Approval.d.ts +1 -1
  2. package/dist/Approval.d.ts.map +1 -1
  3. package/dist/Artifacts.d.ts +2 -2
  4. package/dist/Artifacts.d.ts.map +1 -1
  5. package/dist/BenchReport.d.ts +2 -2
  6. package/dist/BenchReport.d.ts.map +1 -1
  7. package/dist/Chat.d.ts +5 -2
  8. package/dist/Chat.d.ts.map +1 -1
  9. package/dist/Chat.js +7 -4
  10. package/dist/Chat.js.map +1 -1
  11. package/dist/CostLedger.d.ts +2 -2
  12. package/dist/CostLedger.d.ts.map +1 -1
  13. package/dist/Equiv.d.ts +3 -3
  14. package/dist/Equiv.d.ts.map +1 -1
  15. package/dist/Flow.d.ts +16 -1
  16. package/dist/Flow.d.ts.map +1 -1
  17. package/dist/Flow.js +29 -3
  18. package/dist/Flow.js.map +1 -1
  19. package/dist/FlowError.d.ts +15 -2
  20. package/dist/FlowError.d.ts.map +1 -1
  21. package/dist/FlowError.js +15 -0
  22. package/dist/FlowError.js.map +1 -1
  23. package/dist/FlowEvents.d.ts +12 -1
  24. package/dist/FlowEvents.d.ts.map +1 -1
  25. package/dist/FlowEvents.js +11 -0
  26. package/dist/FlowEvents.js.map +1 -1
  27. package/dist/Gates.d.ts +1 -1
  28. package/dist/Gates.d.ts.map +1 -1
  29. package/dist/Judgment.d.ts +2 -2
  30. package/dist/Judgment.d.ts.map +1 -1
  31. package/dist/Landing.d.ts +1 -1
  32. package/dist/Landing.d.ts.map +1 -1
  33. package/dist/NodePreflight.d.ts +1 -1
  34. package/dist/NodePreflight.d.ts.map +1 -1
  35. package/dist/Pack.d.ts +9 -1
  36. package/dist/Pack.d.ts.map +1 -1
  37. package/dist/Pack.js +26 -2
  38. package/dist/Pack.js.map +1 -1
  39. package/dist/Persistence.d.ts +2 -2
  40. package/dist/Persistence.d.ts.map +1 -1
  41. package/dist/PlanExecution.d.ts +1 -1
  42. package/dist/PlanExecution.d.ts.map +1 -1
  43. package/dist/ProgramJudge.d.ts +1 -1
  44. package/dist/ProgramJudge.d.ts.map +1 -1
  45. package/dist/ProgramJudge.js +6 -3
  46. package/dist/ProgramJudge.js.map +1 -1
  47. package/dist/Replay.d.ts +2 -2
  48. package/dist/Replay.d.ts.map +1 -1
  49. package/dist/Retro.d.ts +51 -4
  50. package/dist/Retro.d.ts.map +1 -1
  51. package/dist/Retro.js +196 -11
  52. package/dist/Retro.js.map +1 -1
  53. package/dist/Review.d.ts +38 -6
  54. package/dist/Review.d.ts.map +1 -1
  55. package/dist/Review.js +147 -8
  56. package/dist/Review.js.map +1 -1
  57. package/dist/ReviewCache.d.ts +1 -1
  58. package/dist/ReviewCache.d.ts.map +1 -1
  59. package/dist/Reviewer.d.ts +2 -0
  60. package/dist/Reviewer.d.ts.map +1 -1
  61. package/dist/Reviewer.js +3 -1
  62. package/dist/Reviewer.js.map +1 -1
  63. package/dist/Roster.d.ts +1 -1
  64. package/dist/Roster.d.ts.map +1 -1
  65. package/dist/RosterSeats.d.ts +1 -1
  66. package/dist/RosterSeats.d.ts.map +1 -1
  67. package/dist/Stall.d.ts +29 -0
  68. package/dist/Stall.d.ts.map +1 -0
  69. package/dist/Stall.js +49 -0
  70. package/dist/Stall.js.map +1 -0
  71. package/dist/Stories.d.ts +8 -1
  72. package/dist/Stories.d.ts.map +1 -1
  73. package/dist/Stories.js +7 -1
  74. package/dist/Stories.js.map +1 -1
  75. package/package.json +3 -2
  76. package/src/Chat.ts +15 -7
  77. package/src/Flow.ts +48 -3
  78. package/src/FlowError.ts +16 -0
  79. package/src/FlowEvents.ts +14 -0
  80. package/src/Pack.ts +34 -1
  81. package/src/ProgramJudge.ts +3 -0
  82. package/src/Retro.ts +229 -4
  83. package/src/Review.ts +202 -8
  84. package/src/Reviewer.ts +3 -1
  85. package/src/Stall.ts +85 -0
  86. package/src/Stories.ts +14 -0
package/dist/Retro.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Retro.js","sourceRoot":"","sources":["../src/Retro.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Retro.js","sourceRoot":"","sources":["../src/Retro.ts"],"names":[],"mappings":"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"}
package/dist/Review.d.ts CHANGED
@@ -6,7 +6,7 @@ import type { LlmServiceShape } from "@llm4ts/core/LlmService";
6
6
  import type { JsonSchema } from "@llm4ts/core/Models";
7
7
  import type { ProcessExecutorShape } from "@llm4ts/core/ProcessExecutor";
8
8
  import type { Chat } from "./Chat.ts";
9
- import { FlowLlmError, ProcessError, type FlowError } from "./FlowError.ts";
9
+ import { FlowLlmError, ProcessError, Stalled, type FlowError } from "./FlowError.ts";
10
10
  import type { PlainFileStoreShape } from "./Persistence.ts";
11
11
  import { GateBaseline } from "./GateTriage.ts";
12
12
  import { type OracleRules } from "./OracleGuard.ts";
@@ -44,6 +44,16 @@ export declare class ReviewResult extends ReviewResult_base {
44
44
  get isClean(): boolean;
45
45
  }
46
46
  export declare const reviewJsonSchema: JsonSchema;
47
+ /**
48
+ * Rules with teeth (ADR 0027 decision 9), in front of every lens and the
49
+ * judge rubric: what no reviewer accepts whatever its concern. A pack's
50
+ * `## Review rules` extends it; `preamble: off` leaves it out.
51
+ */
52
+ export declare const reviewRulesPreamble: string;
53
+ /** The one lens whose job is the Bun port's reviewer brief: find why the diff does not work. */
54
+ export declare const adversarialReviewer: Reviewer;
55
+ /** The prompt a lens is asked with: the preamble (unless the lens opts out), then its own rules. */
56
+ export declare const lensPrompt: (lens: Reviewer) => string;
47
57
  export declare const correctnessReviewer: Reviewer;
48
58
  export declare const readabilityReviewer: Reviewer;
49
59
  export declare const testReviewer: Reviewer;
@@ -96,7 +106,7 @@ export interface OracleGateOptions {
96
106
  * Critical issues the fix round can undo. When a count is unknown on either
97
107
  * side the comparison is skipped and said once.
98
108
  */
99
- export declare const withOracle: (lint: ReviewResult, oracle: OracleGateOptions | undefined, events: FlowEventsShape, noted: Ref.Ref<boolean>) => Effect.Effect<ReviewResult, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | ProcessError | FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RefineRefused | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
109
+ export declare const withOracle: (lint: ReviewResult, oracle: OracleGateOptions | undefined, events: FlowEventsShape, noted: Ref.Ref<boolean>) => Effect.Effect<ReviewResult, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | ProcessError | FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RefineRefused | import("./FlowError.ts").RosterExhausted | Stalled | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
100
110
  /**
101
111
  * Charges a lint result only with what the change caused (ADR 0027).
102
112
  * Inherited lines are published once per `reported` set as Info; with
@@ -104,7 +114,7 @@ export declare const withOracle: (lint: ReviewResult, oracle: OracleGateOptions
104
114
  * flaky: published, not charged. Without options or a baseline the result
105
115
  * is returned as is.
106
116
  */
107
- export declare const applyTriage: (lint: ReviewResult, triage: GateTriageOptions | undefined, events: FlowEventsShape, reported: Ref.Ref<ReadonlySet<string>>) => Effect.Effect<ReviewResult, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | ProcessError | FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RefineRefused | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
117
+ export declare const applyTriage: (lint: ReviewResult, triage: GateTriageOptions | undefined, events: FlowEventsShape, reported: Ref.Ref<ReadonlySet<string>>) => Effect.Effect<ReviewResult, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | ProcessError | FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RefineRefused | import("./FlowError.ts").RosterExhausted | Stalled | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
108
118
  export declare const mergeReviewResults: (results: ReadonlyArray<ReviewResult>) => ReviewResult;
109
119
  export interface LintCommandOptions {
110
120
  /** Kill the gate after this long; the issue is then `gateClass: "hang"`. Default: never. */
@@ -115,7 +125,23 @@ export interface LintCommandOptions {
115
125
  readonly path: string;
116
126
  };
117
127
  }
118
- export declare const lintCommand: (process: ProcessExecutorShape, events: FlowEventsShape, command: readonly string[], workDir: string, options?: LintCommandOptions | undefined) => Effect.Effect<ReviewResult, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | ProcessError | FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RefineRefused | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
128
+ export declare const lintCommand: (process: ProcessExecutorShape, events: FlowEventsShape, command: readonly string[], workDir: string, options?: LintCommandOptions | undefined) => Effect.Effect<ReviewResult, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | ProcessError | FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RefineRefused | import("./FlowError.ts").RosterExhausted | Stalled | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
129
+ /**
130
+ * Independent votes of one lens merged (ADR 0027 decision 7): any Critical
131
+ * blocks; Warnings are unioned, one per place; an Info survives only when
132
+ * more than one vote raised it.
133
+ */
134
+ export declare const mergeVotes: (votes: ReadonlyArray<ReviewResult>) => ReviewResult;
135
+ /**
136
+ * Findings that cannot be placed move down (ADR 0027 decision 10): a Critical
137
+ * without a file becomes a Warning, a finding whose file is not in the diff
138
+ * becomes an Info. Nothing is dropped; each move is published. With no
139
+ * changed-file list the result is returned as is.
140
+ */
141
+ export declare const demoteUnplaced: (lens: Reviewer, result: ReviewResult, changed: readonly string[], events: FlowEventsShape) => Effect.Effect<ReviewResult, never, never>;
142
+ /** The repository's own review rules file, loaded as one extra lens; `undefined` when absent. */
143
+ export declare const repoReviewRulesPath = ".llm4ts/review-rules.md";
144
+ export declare const loadRepoReviewRules: (files: PlainFileStoreShape, workDir: string) => Effect.Effect<Reviewer | undefined, FlowError>;
119
145
  export interface ReviewAndFixOptions {
120
146
  readonly reviewers: ReadonlyArray<Reviewer>;
121
147
  readonly reviewerService: LlmServiceShape;
@@ -149,6 +175,12 @@ export interface ReviewAndFixOptions {
149
175
  readonly fix?: FixPromptOptions;
150
176
  /** Fail the round when the change deletes or skips tests (ADR 0027 decision 4). */
151
177
  readonly oracle?: OracleGateOptions;
178
+ /** Independent votes of the adversarial lens per round (ADR 0027 decision 7). Default 1. */
179
+ readonly votes?: number;
180
+ /** Applies a fix prompt somewhere other than the implementer's chat (a separate fixer). */
181
+ readonly fixWith?: (prompt: string) => Effect.Effect<string, FlowError>;
182
+ /** End the task, typed `Stalled`, when a fix round leaves the diff byte-identical (ADR 0027 decision 11). */
183
+ readonly stallOnIdenticalDiff?: boolean;
152
184
  }
153
185
  export interface ReviewCacheLocation {
154
186
  readonly files: PlainFileStoreShape;
@@ -178,8 +210,8 @@ export interface ReviewPrescreenResult {
178
210
  * answered with `act` certainty that the diff has nothing for it; doubt,
179
211
  * failure, and escalation all run the lens. Never skip on doubt.
180
212
  */
181
- export declare const prescreenReviewers: (prescreen: ReviewPrescreen, events: FlowEventsShape, diff: string, lenses: readonly Reviewer[]) => Effect.Effect<ReviewPrescreenResult, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | ProcessError | FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RefineRefused | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
213
+ export declare const prescreenReviewers: (prescreen: ReviewPrescreen, events: FlowEventsShape, diff: string, lenses: readonly Reviewer[]) => Effect.Effect<ReviewPrescreenResult, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | ProcessError | FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RefineRefused | import("./FlowError.ts").RosterExhausted | Stalled | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
182
214
  export declare const reviewWith: (service: LlmServiceShape, events: FlowEventsShape, lens: Reviewer, taskTitle: string, diff: string) => Effect.Effect<ReviewResult, FlowLlmError>;
183
- export declare const reviewAndFixLoop: (options: ReviewAndFixOptions) => Effect.Effect<ReviewResult, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | ProcessError | FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RefineRefused | import("./FlowError.ts").RosterExhausted | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
215
+ export declare const reviewAndFixLoop: (options: ReviewAndFixOptions) => Effect.Effect<ReviewResult, import("./FlowError.ts").PersistenceError | import("./FlowError.ts").PlanParseError | import("./FlowError.ts").UnsupportedSchemaVersion | import("./FlowError.ts").WorkspacePathError | import("./FlowError.ts").WorkspaceLimitError | import("./FlowError.ts").WorkspaceIoError | import("./FlowError.ts").FlowAborted | ProcessError | FlowLlmError | import("./FlowError.ts").FlowCapabilityDenied | import("./FlowError.ts").ColumnNotFound | import("./FlowError.ts").BudgetExceeded | import("./FlowError.ts").StoryPlanInvalid | import("./FlowError.ts").PerimeterViolation | import("./FlowError.ts").MissingDependency | import("./FlowError.ts").MergeConflict | import("./FlowError.ts").EpicCheckoutDirty | import("./FlowError.ts").RosterInvalid | import("./FlowError.ts").EpicIncomplete | import("./FlowError.ts").LandingFailed | import("./FlowError.ts").RefineRefused | import("./FlowError.ts").RosterExhausted | Stalled | import("./FlowError.ts").StoryFailed | import("./FlowError.ts").DecisionsInvalid | import("./FlowError.ts").OpenPointsPending | import("./FlowError.ts").ExtractPackMissing | import("./FlowError.ts").EpicBriefInvalid | import("./FlowError.ts").EpicBriefNotApproved | import("./FlowError.ts").ContractConflict, never>;
184
216
  export {};
185
217
  //# sourceMappingURL=Review.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Review.d.ts","sourceRoot":"","sources":["../src/Review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Review.d.ts","sourceRoot":"","sources":["../src/Review.ts"],"names":[],"mappings":"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"}
package/dist/Review.js CHANGED
@@ -6,13 +6,13 @@ import * as Ref from "effect/Ref";
6
6
  import * as Schema from "effect/Schema";
7
7
  import { Capabilities } from "@llm4ts/core/Capability";
8
8
  import { guarded } from "./CapabilityGuard.js";
9
- import { FlowLlmError, ProcessError, describeFlowError } from "./FlowError.js";
9
+ import { FlowLlmError, ProcessError, Stalled, describeFlowError } from "./FlowError.js";
10
10
  import { GateBaseline, isGateIssue, triageGates } from "./GateTriage.js";
11
11
  import { checkOracle, defaultOracleRules, parseUnifiedDiff, passedCountIn } from "./OracleGuard.js";
12
12
  import { cachedReview, fingerprintOf } from "./ReviewCache.js";
13
- import { Info, JudgmentObserved, ReviewFinding, ReviewFindings, publishJudgmentObserved, Timed } from "./FlowEvents.js";
13
+ import { ReviewFindingDemoted, Info, JudgmentObserved, ReviewFinding, ReviewFindings, publishJudgmentObserved, Timed } from "./FlowEvents.js";
14
14
  import { attr, withKindSpan } from "./Spans.js";
15
- import { Reviewer } from "./Reviewer.js";
15
+ import { Reviewer, parseReviewer } from "./Reviewer.js";
16
16
  import { publishUsage } from "./Usage.js";
17
17
  import { truth } from "@llm4ts/core/judgment/Schemas";
18
18
  import { certaintyOf, decide, defaultJudgmentPolicy } from "./Judgment.js";
@@ -67,6 +67,32 @@ export const reviewJsonSchema = {
67
67
  required: ["issues", "summary"]
68
68
  };
69
69
  const reviewer = (name, systemPrompt, screen, files = ".*") => Reviewer.make({ name, systemPrompt, files, screen });
70
+ /**
71
+ * Rules with teeth (ADR 0027 decision 9), in front of every lens and the
72
+ * judge rubric: what no reviewer accepts whatever its concern. A pack's
73
+ * `## Review rules` extends it; `preamble: off` leaves it out.
74
+ */
75
+ export const reviewRulesPreamble = [
76
+ "Rules every reviewer applies, whatever its concern:",
77
+ "- A stubbed body, a placeholder return, a TODO where logic belongs, or a function that only",
78
+ " satisfies the type checker is a Critical finding.",
79
+ "- A skipped, deleted, weakened or hard-coded test is a Critical finding.",
80
+ "- A layering workaround (a runtime hook where a signature should change, a cast or `any`",
81
+ " to silence a type, a duplicated type to avoid an import) is a Critical finding.",
82
+ "- If the change needs a paragraph-long comment to justify why a workaround is acceptable,",
83
+ " the code is wrong, not the comment; report it."
84
+ ].join("\n");
85
+ /** The one lens whose job is the Bun port's reviewer brief: find why the diff does not work. */
86
+ export const adversarialReviewer = reviewer("adversarial", [
87
+ "Your only job is to find reasons this change does not work. Assume the code is wrong and",
88
+ "look for the evidence: a path that is never taken, an error that is swallowed, a value that",
89
+ "is wrong at a boundary (empty, zero, negative, unicode, concurrent), a promise or effect that",
90
+ "is never awaited or yielded, a resource that leaks, a test that passes without exercising the",
91
+ "change. The diff is the whole subject. Report every concrete way it fails as a finding with",
92
+ "the file and line; an empty list means you looked and found none, not that it is fine."
93
+ ].join("\n"), "The diff plausibly contains a defect an adversarial reader would find: a wrong boundary, an unhandled path, a leaked resource, a test that does not exercise the change.");
94
+ /** The prompt a lens is asked with: the preamble (unless the lens opts out), then its own rules. */
95
+ export const lensPrompt = (lens) => lens.preamble === false ? lens.systemPrompt : `${reviewRulesPreamble}\n\n${lens.systemPrompt}`;
70
96
  export const correctnessReviewer = reviewer("code-functionality", [
71
97
  "Review for functional correctness. Check that the change implements the task's intent,",
72
98
  "handles obvious edge cases, and does not regress existing behavior. Report only concrete",
@@ -85,11 +111,13 @@ export const performanceReviewer = reviewer("performance", "Review for material
85
111
  export const securityReviewer = reviewer("security", "Review trust boundaries, input handling, secrets, authorization, injection risks, and unsafe defaults.", "The diff plausibly touches a trust boundary, secret, authorization check, input parser, or unsafe default.");
86
112
  export const effectReviewer = reviewer("effect-ts", "Review Effect usage: typed errors, scoped resources, service boundaries, interruption, concurrency, and runtime ownership.", "The diff plausibly misuses Effect: an untyped error, an unscoped resource, a leaked service, or unmanaged concurrency.", ".*\\.(ts|tsx|mts|cts)$");
87
113
  export const minimalReviewers = Object.freeze([
114
+ adversarialReviewer,
88
115
  correctnessReviewer,
89
116
  readabilityReviewer,
90
117
  testReviewer
91
118
  ]);
92
119
  export const allReviewers = Object.freeze([
120
+ adversarialReviewer,
93
121
  correctnessReviewer,
94
122
  testReviewer,
95
123
  readabilityReviewer,
@@ -316,6 +344,91 @@ export const lintCommand = Effect.fn("@llm4ts/flow/Review.lintCommand")(function
316
344
  ...(passed === undefined ? {} : { passed })
317
345
  });
318
346
  });
347
+ const placeKey = (issue) => issue.file === undefined
348
+ ? `title:${issue.title.trim().toLowerCase()}`
349
+ : `${issue.file}:${issue.line ?? ""}`;
350
+ /**
351
+ * Independent votes of one lens merged (ADR 0027 decision 7): any Critical
352
+ * blocks; Warnings are unioned, one per place; an Info survives only when
353
+ * more than one vote raised it.
354
+ */
355
+ export const mergeVotes = (votes) => {
356
+ if (votes.length <= 1) {
357
+ return votes[0] ?? ReviewResult.make({ issues: [] });
358
+ }
359
+ const seen = new Map();
360
+ for (const vote of votes) {
361
+ for (const issue of vote.issues) {
362
+ const key = `${issue.severity}|${placeKey(issue)}`;
363
+ const entry = seen.get(key);
364
+ if (entry === undefined) {
365
+ seen.set(key, { issue, count: 1 });
366
+ }
367
+ else {
368
+ entry.count += 1;
369
+ }
370
+ }
371
+ }
372
+ const issues = [...seen.values()]
373
+ .filter(({ issue, count }) => issue.severity !== "Info" || count > 1)
374
+ .map(({ issue }) => issue);
375
+ return ReviewResult.make({
376
+ issues,
377
+ summary: votes
378
+ .map((vote) => vote.summary)
379
+ .filter((summary) => summary.length > 0)
380
+ .join(" | ")
381
+ });
382
+ };
383
+ const inDiff = (file, changed) => {
384
+ const wanted = file.replace(/^\.\//u, "");
385
+ return changed.some((path) => path === wanted || path.endsWith(`/${wanted}`) || wanted.endsWith(`/${path}`));
386
+ };
387
+ /**
388
+ * Findings that cannot be placed move down (ADR 0027 decision 10): a Critical
389
+ * without a file becomes a Warning, a finding whose file is not in the diff
390
+ * becomes an Info. Nothing is dropped; each move is published. With no
391
+ * changed-file list the result is returned as is.
392
+ */
393
+ export const demoteUnplaced = Effect.fn("@llm4ts/flow/Review.demoteUnplaced")(function* (lens, result, changed, events) {
394
+ if (changed.length === 0) {
395
+ return result;
396
+ }
397
+ const issues = [];
398
+ for (const issue of result.issues) {
399
+ let to = issue.severity;
400
+ let reason;
401
+ if (issue.file !== undefined && !inDiff(issue.file, changed)) {
402
+ to = "Info";
403
+ reason = `names ${issue.file}, which the diff does not touch`;
404
+ }
405
+ else if (issue.file === undefined && issue.severity === "Critical") {
406
+ to = "Warning";
407
+ reason = "a Critical with no file";
408
+ }
409
+ if (reason !== undefined && to !== issue.severity) {
410
+ yield* events.publish(ReviewFindingDemoted.make({
411
+ lens: lens.name,
412
+ title: issue.title,
413
+ from: issue.severity,
414
+ to,
415
+ reason
416
+ }));
417
+ issues.push(ReviewIssue.make({ ...issue, severity: to }));
418
+ }
419
+ else {
420
+ issues.push(issue);
421
+ }
422
+ }
423
+ return ReviewResult.make({ issues, summary: result.summary });
424
+ });
425
+ /** The repository's own review rules file, loaded as one extra lens; `undefined` when absent. */
426
+ export const repoReviewRulesPath = ".llm4ts/review-rules.md";
427
+ export const loadRepoReviewRules = (files, workDir) => files
428
+ .read(join(workDir, repoReviewRulesPath))
429
+ .pipe(Effect.map((text) => text === undefined || text.trim().length === 0
430
+ ? undefined
431
+ : parseReviewer("repo-rules", text)));
319
432
  /**
320
433
  * Selected lenses and their answers for publication after review. In act mode
321
434
  * a lens is skipped only when its screen
@@ -364,7 +477,7 @@ export const prescreenReviewers = Effect.fn("@llm4ts/flow/Review.prescreen")(fun
364
477
  return { reviewers: kept, observations };
365
478
  });
366
479
  export const reviewWith = (service, events, lens, taskTitle, diff) => {
367
- const prompt = `${lens.systemPrompt}\n\n${reviewPrompt(taskTitle, diff)}`;
480
+ const prompt = `${lensPrompt(lens)}\n\n${reviewPrompt(taskTitle, diff)}`;
368
481
  // Usage is published per attempt — a schema retry costs real tokens too.
369
482
  const attempt = (text) => service.executeStructuredWithUsage(text, ReviewResult, reviewJsonSchema).pipe(Effect.tap(([, usage, model]) => publishUsage(events, usage, model, "reviewer")), Effect.map(([result]) => result));
370
483
  return attempt(prompt).pipe(Effect.catch((error) => error._tag === "ParseError"
@@ -401,10 +514,19 @@ export const reviewAndFixLoop = Effect.fn("@llm4ts/flow/Review.reviewAndFixLoop"
401
514
  : yield* prescreenReviewers(options.prescreen, options.events, diff, selected);
402
515
  const chosen = screened.reviewers;
403
516
  const cache = options.cache;
404
- const review = (lens) => cache === undefined
517
+ const votes = Math.max(1, options.votes ?? 1);
518
+ const reviewVote = (lens, vote) => cache === undefined
405
519
  ? reviewWith(options.reviewerService, options.events, lens, options.taskTitle, diff)
406
- : cachedReview(cache.files, join(cache.dir, `${fileSlug(lens.name)}.json`), fingerprintOf([lens.name, lens.systemPrompt, options.taskTitle, diff]), reviewWith(options.reviewerService, options.events, lens, options.taskTitle, diff));
407
- const run = (lens) => Effect.map(review(lens), (result) => ({ lens, result }));
520
+ : cachedReview(cache.files, join(cache.dir, `${fileSlug(lens.name)}${vote === 0 ? "" : `-vote${vote}`}.json`), fingerprintOf([lens.name, lensPrompt(lens), String(vote), options.taskTitle, diff]), reviewWith(options.reviewerService, options.events, lens, options.taskTitle, diff));
521
+ // Votes multiply only the adversarial lens: its recall is what independent
522
+ // eyes improve; the concern lenses are cheap scoped questions.
523
+ const review = (lens) => lens.name === adversarialReviewer.name && votes > 1
524
+ ? Effect.map(Effect.forEach(Array.from({ length: votes }, (_, index) => index), (vote) => reviewVote(lens, vote), { concurrency: "unbounded" }), mergeVotes)
525
+ : reviewVote(lens, 0);
526
+ const run = (lens) => Effect.flatMap(review(lens), (result) => Effect.map(demoteUnplaced(lens, result, files, options.events), (placed) => ({
527
+ lens,
528
+ result: placed
529
+ })));
408
530
  const parallelism = options.parallelism ?? 0;
409
531
  const results = parallelism > 0
410
532
  ? yield* Effect.forEach(chosen, run, { concurrency: parallelism })
@@ -437,8 +559,24 @@ export const reviewAndFixLoop = Effect.fn("@llm4ts/flow/Review.reviewAndFixLoop"
437
559
  }
438
560
  return mergeReviewResults(results.map(({ result }) => result));
439
561
  });
562
+ const lastDiff = yield* Ref.make(undefined);
440
563
  const loop = (round, previous) => Effect.gen(function* () {
441
564
  yield* format;
565
+ // A fix round that changed nothing is a loop going nowhere (ADR 0027
566
+ // decision 11): the same diff twice in a row ends the task, typed.
567
+ const diffNow = yield* options.currentDiff;
568
+ const before = yield* Ref.get(lastDiff);
569
+ if (options.stallOnIdenticalDiff === true &&
570
+ round > 1 &&
571
+ before !== undefined &&
572
+ before === diffNow &&
573
+ previous !== undefined) {
574
+ return yield* Stalled.make({
575
+ signal: "identical-diff",
576
+ detail: `review round ${round} found the diff unchanged after the fix for ${previous.issues.length} finding(s)`
577
+ });
578
+ }
579
+ yield* Ref.set(lastDiff, diffNow);
442
580
  const result = yield* reviewOnce(round, previous);
443
581
  const settled = result.isClean || round >= maxRounds;
444
582
  yield* options.events.publish(ReviewFindings.make({
@@ -457,7 +595,8 @@ export const reviewAndFixLoop = Effect.fn("@llm4ts/flow/Review.reviewAndFixLoop"
457
595
  if (settled) {
458
596
  return result;
459
597
  }
460
- yield* options.coder.ask(fixPrompt(result, options.fix));
598
+ const fix = fixPrompt(result, options.fix);
599
+ yield* options.fixWith === undefined ? options.coder.ask(fix) : options.fixWith(fix);
461
600
  return yield* loop(round + 1, result);
462
601
  });
463
602
  return yield* loop(1, undefined);