ralph-research 0.1.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 (174) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +98 -0
  3. package/dist/adapters/extractor/command-extractor.d.ts +9 -0
  4. package/dist/adapters/extractor/command-extractor.js +93 -0
  5. package/dist/adapters/extractor/command-extractor.js.map +1 -0
  6. package/dist/adapters/extractor/llm-judge-extractor.d.ts +9 -0
  7. package/dist/adapters/extractor/llm-judge-extractor.js +12 -0
  8. package/dist/adapters/extractor/llm-judge-extractor.js.map +1 -0
  9. package/dist/adapters/fs/json-file-decision-store.d.ts +10 -0
  10. package/dist/adapters/fs/json-file-decision-store.js +53 -0
  11. package/dist/adapters/fs/json-file-decision-store.js.map +1 -0
  12. package/dist/adapters/fs/json-file-frontier-store.d.ts +8 -0
  13. package/dist/adapters/fs/json-file-frontier-store.js +29 -0
  14. package/dist/adapters/fs/json-file-frontier-store.js.map +1 -0
  15. package/dist/adapters/fs/json-file-run-store.d.ts +10 -0
  16. package/dist/adapters/fs/json-file-run-store.js +53 -0
  17. package/dist/adapters/fs/json-file-run-store.js.map +1 -0
  18. package/dist/adapters/fs/lockfile.d.ts +24 -0
  19. package/dist/adapters/fs/lockfile.js +110 -0
  20. package/dist/adapters/fs/lockfile.js.map +1 -0
  21. package/dist/adapters/fs/manifest-loader.d.ts +10 -0
  22. package/dist/adapters/fs/manifest-loader.js +43 -0
  23. package/dist/adapters/fs/manifest-loader.js.map +1 -0
  24. package/dist/adapters/git/git-client.d.ts +9 -0
  25. package/dist/adapters/git/git-client.js +23 -0
  26. package/dist/adapters/git/git-client.js.map +1 -0
  27. package/dist/adapters/index.d.ts +1 -0
  28. package/dist/adapters/index.js +3 -0
  29. package/dist/adapters/index.js.map +1 -0
  30. package/dist/adapters/judge/llm-judge-provider.d.ts +33 -0
  31. package/dist/adapters/judge/llm-judge-provider.js +90 -0
  32. package/dist/adapters/judge/llm-judge-provider.js.map +1 -0
  33. package/dist/adapters/proposer/command-proposer.d.ts +15 -0
  34. package/dist/adapters/proposer/command-proposer.js +29 -0
  35. package/dist/adapters/proposer/command-proposer.js.map +1 -0
  36. package/dist/app/context.d.ts +5 -0
  37. package/dist/app/context.js +7 -0
  38. package/dist/app/context.js.map +1 -0
  39. package/dist/app/services/manual-decision-service.d.ts +20 -0
  40. package/dist/app/services/manual-decision-service.js +143 -0
  41. package/dist/app/services/manual-decision-service.js.map +1 -0
  42. package/dist/app/services/project-state-service.d.ts +52 -0
  43. package/dist/app/services/project-state-service.js +92 -0
  44. package/dist/app/services/project-state-service.js.map +1 -0
  45. package/dist/app/services/run-cycle-service.d.ts +25 -0
  46. package/dist/app/services/run-cycle-service.js +69 -0
  47. package/dist/app/services/run-cycle-service.js.map +1 -0
  48. package/dist/cli/commands/accept.d.ts +10 -0
  49. package/dist/cli/commands/accept.js +54 -0
  50. package/dist/cli/commands/accept.js.map +1 -0
  51. package/dist/cli/commands/demo.d.ts +9 -0
  52. package/dist/cli/commands/demo.js +108 -0
  53. package/dist/cli/commands/demo.js.map +1 -0
  54. package/dist/cli/commands/frontier.d.ts +8 -0
  55. package/dist/cli/commands/frontier.js +48 -0
  56. package/dist/cli/commands/frontier.js.map +1 -0
  57. package/dist/cli/commands/init.d.ts +10 -0
  58. package/dist/cli/commands/init.js +123 -0
  59. package/dist/cli/commands/init.js.map +1 -0
  60. package/dist/cli/commands/inspect.d.ts +8 -0
  61. package/dist/cli/commands/inspect.js +55 -0
  62. package/dist/cli/commands/inspect.js.map +1 -0
  63. package/dist/cli/commands/reject.d.ts +10 -0
  64. package/dist/cli/commands/reject.js +54 -0
  65. package/dist/cli/commands/reject.js.map +1 -0
  66. package/dist/cli/commands/run.d.ts +13 -0
  67. package/dist/cli/commands/run.js +71 -0
  68. package/dist/cli/commands/run.js.map +1 -0
  69. package/dist/cli/commands/serve-mcp.d.ts +7 -0
  70. package/dist/cli/commands/serve-mcp.js +32 -0
  71. package/dist/cli/commands/serve-mcp.js.map +1 -0
  72. package/dist/cli/commands/status.d.ts +8 -0
  73. package/dist/cli/commands/status.js +53 -0
  74. package/dist/cli/commands/status.js.map +1 -0
  75. package/dist/cli/commands/validate.d.ts +11 -0
  76. package/dist/cli/commands/validate.js +56 -0
  77. package/dist/cli/commands/validate.js.map +1 -0
  78. package/dist/cli/main.d.ts +2 -0
  79. package/dist/cli/main.js +38 -0
  80. package/dist/cli/main.js.map +1 -0
  81. package/dist/core/engine/anchor-checker.d.ts +35 -0
  82. package/dist/core/engine/anchor-checker.js +84 -0
  83. package/dist/core/engine/anchor-checker.js.map +1 -0
  84. package/dist/core/engine/audit-sampler.d.ts +16 -0
  85. package/dist/core/engine/audit-sampler.js +25 -0
  86. package/dist/core/engine/audit-sampler.js.map +1 -0
  87. package/dist/core/engine/change-budget.d.ts +11 -0
  88. package/dist/core/engine/change-budget.js +10 -0
  89. package/dist/core/engine/change-budget.js.map +1 -0
  90. package/dist/core/engine/cycle-runner.d.ts +39 -0
  91. package/dist/core/engine/cycle-runner.js +652 -0
  92. package/dist/core/engine/cycle-runner.js.map +1 -0
  93. package/dist/core/engine/experiment-runner.d.ts +13 -0
  94. package/dist/core/engine/experiment-runner.js +24 -0
  95. package/dist/core/engine/experiment-runner.js.map +1 -0
  96. package/dist/core/engine/history-compactor.d.ts +15 -0
  97. package/dist/core/engine/history-compactor.js +76 -0
  98. package/dist/core/engine/history-compactor.js.map +1 -0
  99. package/dist/core/engine/judge-pack.d.ts +44 -0
  100. package/dist/core/engine/judge-pack.js +111 -0
  101. package/dist/core/engine/judge-pack.js.map +1 -0
  102. package/dist/core/engine/parallel-proposer.d.ts +21 -0
  103. package/dist/core/engine/parallel-proposer.js +58 -0
  104. package/dist/core/engine/parallel-proposer.js.map +1 -0
  105. package/dist/core/engine/scope-checker.d.ts +35 -0
  106. package/dist/core/engine/scope-checker.js +166 -0
  107. package/dist/core/engine/scope-checker.js.map +1 -0
  108. package/dist/core/engine/workspace-manager.d.ts +32 -0
  109. package/dist/core/engine/workspace-manager.js +145 -0
  110. package/dist/core/engine/workspace-manager.js.map +1 -0
  111. package/dist/core/index.d.ts +1 -0
  112. package/dist/core/index.js +3 -0
  113. package/dist/core/index.js.map +1 -0
  114. package/dist/core/manifest/defaults.d.ts +55 -0
  115. package/dist/core/manifest/defaults.js +56 -0
  116. package/dist/core/manifest/defaults.js.map +1 -0
  117. package/dist/core/manifest/schema.d.ts +647 -0
  118. package/dist/core/manifest/schema.js +254 -0
  119. package/dist/core/manifest/schema.js.map +1 -0
  120. package/dist/core/model/decision-record.d.ts +38 -0
  121. package/dist/core/model/decision-record.js +29 -0
  122. package/dist/core/model/decision-record.js.map +1 -0
  123. package/dist/core/model/frontier-entry.d.ts +24 -0
  124. package/dist/core/model/frontier-entry.js +15 -0
  125. package/dist/core/model/frontier-entry.js.map +1 -0
  126. package/dist/core/model/metric.d.ts +13 -0
  127. package/dist/core/model/metric.js +10 -0
  128. package/dist/core/model/metric.js.map +1 -0
  129. package/dist/core/model/run-record.d.ts +110 -0
  130. package/dist/core/model/run-record.js +104 -0
  131. package/dist/core/model/run-record.js.map +1 -0
  132. package/dist/core/ports/decision-store.d.ts +6 -0
  133. package/dist/core/ports/decision-store.js +2 -0
  134. package/dist/core/ports/decision-store.js.map +1 -0
  135. package/dist/core/ports/frontier-store.d.ts +5 -0
  136. package/dist/core/ports/frontier-store.js +2 -0
  137. package/dist/core/ports/frontier-store.js.map +1 -0
  138. package/dist/core/ports/run-store.d.ts +6 -0
  139. package/dist/core/ports/run-store.js +2 -0
  140. package/dist/core/ports/run-store.js.map +1 -0
  141. package/dist/core/state/constraint-engine.d.ts +18 -0
  142. package/dist/core/state/constraint-engine.js +42 -0
  143. package/dist/core/state/constraint-engine.js.map +1 -0
  144. package/dist/core/state/frontier-engine.d.ts +24 -0
  145. package/dist/core/state/frontier-engine.js +178 -0
  146. package/dist/core/state/frontier-engine.js.map +1 -0
  147. package/dist/core/state/ratchet-engine.d.ts +28 -0
  148. package/dist/core/state/ratchet-engine.js +177 -0
  149. package/dist/core/state/ratchet-engine.js.map +1 -0
  150. package/dist/core/state/run-state-machine.d.ts +17 -0
  151. package/dist/core/state/run-state-machine.js +94 -0
  152. package/dist/core/state/run-state-machine.js.map +1 -0
  153. package/dist/mcp/main.d.ts +1 -0
  154. package/dist/mcp/main.js +8 -0
  155. package/dist/mcp/main.js.map +1 -0
  156. package/dist/mcp/server.d.ts +6 -0
  157. package/dist/mcp/server.js +97 -0
  158. package/dist/mcp/server.js.map +1 -0
  159. package/dist/shared/fs-errors.d.ts +1 -0
  160. package/dist/shared/fs-errors.js +4 -0
  161. package/dist/shared/fs-errors.js.map +1 -0
  162. package/dist/shared/logger.d.ts +2 -0
  163. package/dist/shared/logger.js +5 -0
  164. package/dist/shared/logger.js.map +1 -0
  165. package/dist/shared/template-utils.d.ts +9 -0
  166. package/dist/shared/template-utils.js +50 -0
  167. package/dist/shared/template-utils.js.map +1 -0
  168. package/package.json +44 -0
  169. package/templates/writing/docs/draft.md +1 -0
  170. package/templates/writing/prompts/judge.md +15 -0
  171. package/templates/writing/ralph.yaml +63 -0
  172. package/templates/writing/scripts/experiment.mjs +6 -0
  173. package/templates/writing/scripts/metric.mjs +24 -0
  174. package/templates/writing/scripts/propose.mjs +13 -0
@@ -0,0 +1,647 @@
1
+ import { z } from "zod";
2
+ import { DEFAULT_MANIFEST_FILENAME } from "./defaults.js";
3
+ export declare const commandSpecSchema: z.ZodObject<{
4
+ command: z.ZodString;
5
+ cwd: z.ZodOptional<z.ZodString>;
6
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
7
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
8
+ }, z.core.$strip>;
9
+ export declare const scopeSchema: z.ZodObject<{
10
+ allowedGlobs: z.ZodDefault<z.ZodArray<z.ZodString>>;
11
+ maxFilesChanged: z.ZodDefault<z.ZodNumber>;
12
+ maxLineDelta: z.ZodDefault<z.ZodNumber>;
13
+ }, z.core.$strip>;
14
+ export declare const projectSchema: z.ZodObject<{
15
+ name: z.ZodString;
16
+ artifact: z.ZodEnum<{
17
+ code: "code";
18
+ manuscript: "manuscript";
19
+ literature_review: "literature_review";
20
+ prompt: "prompt";
21
+ generic: "generic";
22
+ }>;
23
+ baselineRef: z.ZodDefault<z.ZodString>;
24
+ workspace: z.ZodDefault<z.ZodEnum<{
25
+ git: "git";
26
+ copy: "copy";
27
+ }>>;
28
+ }, z.core.$strip>;
29
+ export declare const proposerHistorySchema: z.ZodObject<{
30
+ enabled: z.ZodDefault<z.ZodBoolean>;
31
+ maxRuns: z.ZodDefault<z.ZodNumber>;
32
+ }, z.core.$strip>;
33
+ export declare const commandProposerSchema: z.ZodObject<{
34
+ history: z.ZodDefault<z.ZodObject<{
35
+ enabled: z.ZodDefault<z.ZodBoolean>;
36
+ maxRuns: z.ZodDefault<z.ZodNumber>;
37
+ }, z.core.$strip>>;
38
+ command: z.ZodString;
39
+ cwd: z.ZodOptional<z.ZodString>;
40
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
41
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
42
+ type: z.ZodLiteral<"command">;
43
+ }, z.core.$strip>;
44
+ export declare const operatorLlmProposerSchema: z.ZodObject<{
45
+ type: z.ZodLiteral<"operator_llm">;
46
+ model: z.ZodString;
47
+ prompt: z.ZodString;
48
+ operators: z.ZodArray<z.ZodString>;
49
+ explorationRatio: z.ZodDefault<z.ZodNumber>;
50
+ stagnationAfterRejections: z.ZodDefault<z.ZodNumber>;
51
+ maxPatchCount: z.ZodDefault<z.ZodNumber>;
52
+ history: z.ZodDefault<z.ZodObject<{
53
+ enabled: z.ZodDefault<z.ZodBoolean>;
54
+ maxRuns: z.ZodDefault<z.ZodNumber>;
55
+ }, z.core.$strip>>;
56
+ }, z.core.$strip>;
57
+ declare const leafProposerSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
58
+ history: z.ZodDefault<z.ZodObject<{
59
+ enabled: z.ZodDefault<z.ZodBoolean>;
60
+ maxRuns: z.ZodDefault<z.ZodNumber>;
61
+ }, z.core.$strip>>;
62
+ command: z.ZodString;
63
+ cwd: z.ZodOptional<z.ZodString>;
64
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
65
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
66
+ type: z.ZodLiteral<"command">;
67
+ }, z.core.$strip>, z.ZodObject<{
68
+ type: z.ZodLiteral<"operator_llm">;
69
+ model: z.ZodString;
70
+ prompt: z.ZodString;
71
+ operators: z.ZodArray<z.ZodString>;
72
+ explorationRatio: z.ZodDefault<z.ZodNumber>;
73
+ stagnationAfterRejections: z.ZodDefault<z.ZodNumber>;
74
+ maxPatchCount: z.ZodDefault<z.ZodNumber>;
75
+ history: z.ZodDefault<z.ZodObject<{
76
+ enabled: z.ZodDefault<z.ZodBoolean>;
77
+ maxRuns: z.ZodDefault<z.ZodNumber>;
78
+ }, z.core.$strip>>;
79
+ }, z.core.$strip>], "type">;
80
+ export declare const parallelProposerSchema: z.ZodObject<{
81
+ type: z.ZodLiteral<"parallel">;
82
+ strategies: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
83
+ history: z.ZodDefault<z.ZodObject<{
84
+ enabled: z.ZodDefault<z.ZodBoolean>;
85
+ maxRuns: z.ZodDefault<z.ZodNumber>;
86
+ }, z.core.$strip>>;
87
+ command: z.ZodString;
88
+ cwd: z.ZodOptional<z.ZodString>;
89
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
90
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
91
+ type: z.ZodLiteral<"command">;
92
+ }, z.core.$strip>, z.ZodObject<{
93
+ type: z.ZodLiteral<"operator_llm">;
94
+ model: z.ZodString;
95
+ prompt: z.ZodString;
96
+ operators: z.ZodArray<z.ZodString>;
97
+ explorationRatio: z.ZodDefault<z.ZodNumber>;
98
+ stagnationAfterRejections: z.ZodDefault<z.ZodNumber>;
99
+ maxPatchCount: z.ZodDefault<z.ZodNumber>;
100
+ history: z.ZodDefault<z.ZodObject<{
101
+ enabled: z.ZodDefault<z.ZodBoolean>;
102
+ maxRuns: z.ZodDefault<z.ZodNumber>;
103
+ }, z.core.$strip>>;
104
+ }, z.core.$strip>], "type">>;
105
+ pickBest: z.ZodEnum<{
106
+ highest_metric: "highest_metric";
107
+ judge_pairwise: "judge_pairwise";
108
+ }>;
109
+ history: z.ZodDefault<z.ZodObject<{
110
+ enabled: z.ZodDefault<z.ZodBoolean>;
111
+ maxRuns: z.ZodDefault<z.ZodNumber>;
112
+ }, z.core.$strip>>;
113
+ }, z.core.$strip>;
114
+ export declare const proposerSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
115
+ history: z.ZodDefault<z.ZodObject<{
116
+ enabled: z.ZodDefault<z.ZodBoolean>;
117
+ maxRuns: z.ZodDefault<z.ZodNumber>;
118
+ }, z.core.$strip>>;
119
+ command: z.ZodString;
120
+ cwd: z.ZodOptional<z.ZodString>;
121
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
122
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
123
+ type: z.ZodLiteral<"command">;
124
+ }, z.core.$strip>, z.ZodObject<{
125
+ type: z.ZodLiteral<"operator_llm">;
126
+ model: z.ZodString;
127
+ prompt: z.ZodString;
128
+ operators: z.ZodArray<z.ZodString>;
129
+ explorationRatio: z.ZodDefault<z.ZodNumber>;
130
+ stagnationAfterRejections: z.ZodDefault<z.ZodNumber>;
131
+ maxPatchCount: z.ZodDefault<z.ZodNumber>;
132
+ history: z.ZodDefault<z.ZodObject<{
133
+ enabled: z.ZodDefault<z.ZodBoolean>;
134
+ maxRuns: z.ZodDefault<z.ZodNumber>;
135
+ }, z.core.$strip>>;
136
+ }, z.core.$strip>, z.ZodObject<{
137
+ type: z.ZodLiteral<"parallel">;
138
+ strategies: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
139
+ history: z.ZodDefault<z.ZodObject<{
140
+ enabled: z.ZodDefault<z.ZodBoolean>;
141
+ maxRuns: z.ZodDefault<z.ZodNumber>;
142
+ }, z.core.$strip>>;
143
+ command: z.ZodString;
144
+ cwd: z.ZodOptional<z.ZodString>;
145
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
146
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
147
+ type: z.ZodLiteral<"command">;
148
+ }, z.core.$strip>, z.ZodObject<{
149
+ type: z.ZodLiteral<"operator_llm">;
150
+ model: z.ZodString;
151
+ prompt: z.ZodString;
152
+ operators: z.ZodArray<z.ZodString>;
153
+ explorationRatio: z.ZodDefault<z.ZodNumber>;
154
+ stagnationAfterRejections: z.ZodDefault<z.ZodNumber>;
155
+ maxPatchCount: z.ZodDefault<z.ZodNumber>;
156
+ history: z.ZodDefault<z.ZodObject<{
157
+ enabled: z.ZodDefault<z.ZodBoolean>;
158
+ maxRuns: z.ZodDefault<z.ZodNumber>;
159
+ }, z.core.$strip>>;
160
+ }, z.core.$strip>], "type">>;
161
+ pickBest: z.ZodEnum<{
162
+ highest_metric: "highest_metric";
163
+ judge_pairwise: "judge_pairwise";
164
+ }>;
165
+ history: z.ZodDefault<z.ZodObject<{
166
+ enabled: z.ZodDefault<z.ZodBoolean>;
167
+ maxRuns: z.ZodDefault<z.ZodNumber>;
168
+ }, z.core.$strip>>;
169
+ }, z.core.$strip>], "type">;
170
+ export declare const experimentSchema: z.ZodObject<{
171
+ run: z.ZodObject<{
172
+ command: z.ZodString;
173
+ cwd: z.ZodOptional<z.ZodString>;
174
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
175
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
176
+ }, z.core.$strip>;
177
+ outputs: z.ZodDefault<z.ZodArray<z.ZodObject<{
178
+ id: z.ZodString;
179
+ path: z.ZodString;
180
+ }, z.core.$strip>>>;
181
+ }, z.core.$strip>;
182
+ export declare const judgePackSchema: z.ZodObject<{
183
+ id: z.ZodString;
184
+ mode: z.ZodEnum<{
185
+ absolute: "absolute";
186
+ pairwise: "pairwise";
187
+ }>;
188
+ blindPairwise: z.ZodDefault<z.ZodBoolean>;
189
+ orderRandomized: z.ZodDefault<z.ZodBoolean>;
190
+ repeats: z.ZodDefault<z.ZodNumber>;
191
+ aggregation: z.ZodDefault<z.ZodEnum<{
192
+ mean: "mean";
193
+ median: "median";
194
+ majority_vote: "majority_vote";
195
+ sign_test: "sign_test";
196
+ }>>;
197
+ judges: z.ZodArray<z.ZodObject<{
198
+ model: z.ZodString;
199
+ weight: z.ZodDefault<z.ZodNumber>;
200
+ }, z.core.$strip>>;
201
+ lowConfidenceThreshold: z.ZodDefault<z.ZodNumber>;
202
+ anchors: z.ZodOptional<z.ZodObject<{
203
+ path: z.ZodString;
204
+ minAgreementWithHuman: z.ZodDefault<z.ZodNumber>;
205
+ }, z.core.$strip>>;
206
+ audit: z.ZodDefault<z.ZodObject<{
207
+ sampleRate: z.ZodDefault<z.ZodNumber>;
208
+ freezeAutoAcceptIfAnchorFails: z.ZodDefault<z.ZodBoolean>;
209
+ }, z.core.$strip>>;
210
+ }, z.core.$strip>;
211
+ export declare const commandMetricExtractorSchema: z.ZodObject<{
212
+ parser: z.ZodDefault<z.ZodEnum<{
213
+ json_path: "json_path";
214
+ regex: "regex";
215
+ plain_number: "plain_number";
216
+ }>>;
217
+ valuePath: z.ZodOptional<z.ZodString>;
218
+ pattern: z.ZodOptional<z.ZodString>;
219
+ command: z.ZodString;
220
+ cwd: z.ZodOptional<z.ZodString>;
221
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
222
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
223
+ type: z.ZodLiteral<"command">;
224
+ }, z.core.$strip>;
225
+ export declare const llmJudgeMetricExtractorSchema: z.ZodObject<{
226
+ type: z.ZodLiteral<"llm_judge">;
227
+ judgePack: z.ZodString;
228
+ prompt: z.ZodString;
229
+ mode: z.ZodDefault<z.ZodEnum<{
230
+ absolute: "absolute";
231
+ pairwise: "pairwise";
232
+ }>>;
233
+ compareAgainst: z.ZodDefault<z.ZodEnum<{
234
+ "frontier.best": "frontier.best";
235
+ none: "none";
236
+ }>>;
237
+ inputs: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
238
+ outputKey: z.ZodDefault<z.ZodString>;
239
+ }, z.core.$strip>;
240
+ export declare const metricExtractorSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
241
+ parser: z.ZodDefault<z.ZodEnum<{
242
+ json_path: "json_path";
243
+ regex: "regex";
244
+ plain_number: "plain_number";
245
+ }>>;
246
+ valuePath: z.ZodOptional<z.ZodString>;
247
+ pattern: z.ZodOptional<z.ZodString>;
248
+ command: z.ZodString;
249
+ cwd: z.ZodOptional<z.ZodString>;
250
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
251
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
252
+ type: z.ZodLiteral<"command">;
253
+ }, z.core.$strip>, z.ZodObject<{
254
+ type: z.ZodLiteral<"llm_judge">;
255
+ judgePack: z.ZodString;
256
+ prompt: z.ZodString;
257
+ mode: z.ZodDefault<z.ZodEnum<{
258
+ absolute: "absolute";
259
+ pairwise: "pairwise";
260
+ }>>;
261
+ compareAgainst: z.ZodDefault<z.ZodEnum<{
262
+ "frontier.best": "frontier.best";
263
+ none: "none";
264
+ }>>;
265
+ inputs: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
266
+ outputKey: z.ZodDefault<z.ZodString>;
267
+ }, z.core.$strip>], "type">;
268
+ export declare const numericMetricDefinitionSchema: z.ZodObject<{
269
+ id: z.ZodString;
270
+ direction: z.ZodEnum<{
271
+ maximize: "maximize";
272
+ minimize: "minimize";
273
+ }>;
274
+ kind: z.ZodLiteral<"numeric">;
275
+ extractor: z.ZodObject<{
276
+ parser: z.ZodDefault<z.ZodEnum<{
277
+ json_path: "json_path";
278
+ regex: "regex";
279
+ plain_number: "plain_number";
280
+ }>>;
281
+ valuePath: z.ZodOptional<z.ZodString>;
282
+ pattern: z.ZodOptional<z.ZodString>;
283
+ command: z.ZodString;
284
+ cwd: z.ZodOptional<z.ZodString>;
285
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
286
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
287
+ type: z.ZodLiteral<"command">;
288
+ }, z.core.$strip>;
289
+ }, z.core.$strip>;
290
+ export declare const llmScoreMetricDefinitionSchema: z.ZodObject<{
291
+ id: z.ZodString;
292
+ direction: z.ZodEnum<{
293
+ maximize: "maximize";
294
+ minimize: "minimize";
295
+ }>;
296
+ kind: z.ZodLiteral<"llm_score">;
297
+ extractor: z.ZodObject<{
298
+ type: z.ZodLiteral<"llm_judge">;
299
+ judgePack: z.ZodString;
300
+ prompt: z.ZodString;
301
+ mode: z.ZodDefault<z.ZodEnum<{
302
+ absolute: "absolute";
303
+ pairwise: "pairwise";
304
+ }>>;
305
+ compareAgainst: z.ZodDefault<z.ZodEnum<{
306
+ "frontier.best": "frontier.best";
307
+ none: "none";
308
+ }>>;
309
+ inputs: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
310
+ outputKey: z.ZodDefault<z.ZodString>;
311
+ }, z.core.$strip>;
312
+ }, z.core.$strip>;
313
+ export declare const metricDefinitionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
314
+ id: z.ZodString;
315
+ direction: z.ZodEnum<{
316
+ maximize: "maximize";
317
+ minimize: "minimize";
318
+ }>;
319
+ kind: z.ZodLiteral<"numeric">;
320
+ extractor: z.ZodObject<{
321
+ parser: z.ZodDefault<z.ZodEnum<{
322
+ json_path: "json_path";
323
+ regex: "regex";
324
+ plain_number: "plain_number";
325
+ }>>;
326
+ valuePath: z.ZodOptional<z.ZodString>;
327
+ pattern: z.ZodOptional<z.ZodString>;
328
+ command: z.ZodString;
329
+ cwd: z.ZodOptional<z.ZodString>;
330
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
331
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
332
+ type: z.ZodLiteral<"command">;
333
+ }, z.core.$strip>;
334
+ }, z.core.$strip>, z.ZodObject<{
335
+ id: z.ZodString;
336
+ direction: z.ZodEnum<{
337
+ maximize: "maximize";
338
+ minimize: "minimize";
339
+ }>;
340
+ kind: z.ZodLiteral<"llm_score">;
341
+ extractor: z.ZodObject<{
342
+ type: z.ZodLiteral<"llm_judge">;
343
+ judgePack: z.ZodString;
344
+ prompt: z.ZodString;
345
+ mode: z.ZodDefault<z.ZodEnum<{
346
+ absolute: "absolute";
347
+ pairwise: "pairwise";
348
+ }>>;
349
+ compareAgainst: z.ZodDefault<z.ZodEnum<{
350
+ "frontier.best": "frontier.best";
351
+ none: "none";
352
+ }>>;
353
+ inputs: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
354
+ outputKey: z.ZodDefault<z.ZodString>;
355
+ }, z.core.$strip>;
356
+ }, z.core.$strip>], "kind">;
357
+ export declare const constraintSchema: z.ZodObject<{
358
+ metric: z.ZodString;
359
+ op: z.ZodEnum<{
360
+ ">=": ">=";
361
+ ">": ">";
362
+ "<=": "<=";
363
+ "<": "<";
364
+ "==": "==";
365
+ }>;
366
+ value: z.ZodNumber;
367
+ }, z.core.$strip>;
368
+ export declare const paretoObjectiveSchema: z.ZodObject<{
369
+ metric: z.ZodString;
370
+ epsilon: z.ZodDefault<z.ZodNumber>;
371
+ }, z.core.$strip>;
372
+ export declare const frontierSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
373
+ strategy: z.ZodLiteral<"single_best">;
374
+ primaryMetric: z.ZodString;
375
+ }, z.core.$strip>, z.ZodObject<{
376
+ strategy: z.ZodLiteral<"pareto">;
377
+ objectives: z.ZodArray<z.ZodObject<{
378
+ metric: z.ZodString;
379
+ epsilon: z.ZodDefault<z.ZodNumber>;
380
+ }, z.core.$strip>>;
381
+ tieBreaker: z.ZodDefault<z.ZodEnum<{
382
+ none: "none";
383
+ hypervolume: "hypervolume";
384
+ }>>;
385
+ referencePoint: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
386
+ }, z.core.$strip>], "strategy">;
387
+ export declare const epsilonImproveRatchetSchema: z.ZodObject<{
388
+ type: z.ZodLiteral<"epsilon_improve">;
389
+ metric: z.ZodOptional<z.ZodString>;
390
+ epsilon: z.ZodDefault<z.ZodNumber>;
391
+ }, z.core.$strip>;
392
+ export declare const approvalGateRatchetSchema: z.ZodObject<{
393
+ type: z.ZodLiteral<"approval_gate">;
394
+ metric: z.ZodOptional<z.ZodString>;
395
+ minConfidence: z.ZodDefault<z.ZodNumber>;
396
+ graduation: z.ZodOptional<z.ZodObject<{
397
+ consecutiveAccepts: z.ZodNumber;
398
+ epsilon: z.ZodDefault<z.ZodNumber>;
399
+ }, z.core.$strip>>;
400
+ }, z.core.$strip>;
401
+ export declare const paretoDominanceRatchetSchema: z.ZodObject<{
402
+ type: z.ZodLiteral<"pareto_dominance">;
403
+ }, z.core.$strip>;
404
+ export declare const ratchetSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
405
+ type: z.ZodLiteral<"epsilon_improve">;
406
+ metric: z.ZodOptional<z.ZodString>;
407
+ epsilon: z.ZodDefault<z.ZodNumber>;
408
+ }, z.core.$strip>, z.ZodObject<{
409
+ type: z.ZodLiteral<"approval_gate">;
410
+ metric: z.ZodOptional<z.ZodString>;
411
+ minConfidence: z.ZodDefault<z.ZodNumber>;
412
+ graduation: z.ZodOptional<z.ZodObject<{
413
+ consecutiveAccepts: z.ZodNumber;
414
+ epsilon: z.ZodDefault<z.ZodNumber>;
415
+ }, z.core.$strip>>;
416
+ }, z.core.$strip>, z.ZodObject<{
417
+ type: z.ZodLiteral<"pareto_dominance">;
418
+ }, z.core.$strip>], "type">;
419
+ export declare const storageSchema: z.ZodObject<{
420
+ root: z.ZodDefault<z.ZodString>;
421
+ }, z.core.$strip>;
422
+ export declare const RalphManifestSchema: z.ZodObject<{
423
+ schemaVersion: z.ZodLiteral<"0.1">;
424
+ project: z.ZodObject<{
425
+ name: z.ZodString;
426
+ artifact: z.ZodEnum<{
427
+ code: "code";
428
+ manuscript: "manuscript";
429
+ literature_review: "literature_review";
430
+ prompt: "prompt";
431
+ generic: "generic";
432
+ }>;
433
+ baselineRef: z.ZodDefault<z.ZodString>;
434
+ workspace: z.ZodDefault<z.ZodEnum<{
435
+ git: "git";
436
+ copy: "copy";
437
+ }>>;
438
+ }, z.core.$strip>;
439
+ scope: z.ZodDefault<z.ZodObject<{
440
+ allowedGlobs: z.ZodDefault<z.ZodArray<z.ZodString>>;
441
+ maxFilesChanged: z.ZodDefault<z.ZodNumber>;
442
+ maxLineDelta: z.ZodDefault<z.ZodNumber>;
443
+ }, z.core.$strip>>;
444
+ proposer: z.ZodDiscriminatedUnion<[z.ZodObject<{
445
+ history: z.ZodDefault<z.ZodObject<{
446
+ enabled: z.ZodDefault<z.ZodBoolean>;
447
+ maxRuns: z.ZodDefault<z.ZodNumber>;
448
+ }, z.core.$strip>>;
449
+ command: z.ZodString;
450
+ cwd: z.ZodOptional<z.ZodString>;
451
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
452
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
453
+ type: z.ZodLiteral<"command">;
454
+ }, z.core.$strip>, z.ZodObject<{
455
+ type: z.ZodLiteral<"operator_llm">;
456
+ model: z.ZodString;
457
+ prompt: z.ZodString;
458
+ operators: z.ZodArray<z.ZodString>;
459
+ explorationRatio: z.ZodDefault<z.ZodNumber>;
460
+ stagnationAfterRejections: z.ZodDefault<z.ZodNumber>;
461
+ maxPatchCount: z.ZodDefault<z.ZodNumber>;
462
+ history: z.ZodDefault<z.ZodObject<{
463
+ enabled: z.ZodDefault<z.ZodBoolean>;
464
+ maxRuns: z.ZodDefault<z.ZodNumber>;
465
+ }, z.core.$strip>>;
466
+ }, z.core.$strip>, z.ZodObject<{
467
+ type: z.ZodLiteral<"parallel">;
468
+ strategies: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
469
+ history: z.ZodDefault<z.ZodObject<{
470
+ enabled: z.ZodDefault<z.ZodBoolean>;
471
+ maxRuns: z.ZodDefault<z.ZodNumber>;
472
+ }, z.core.$strip>>;
473
+ command: z.ZodString;
474
+ cwd: z.ZodOptional<z.ZodString>;
475
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
476
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
477
+ type: z.ZodLiteral<"command">;
478
+ }, z.core.$strip>, z.ZodObject<{
479
+ type: z.ZodLiteral<"operator_llm">;
480
+ model: z.ZodString;
481
+ prompt: z.ZodString;
482
+ operators: z.ZodArray<z.ZodString>;
483
+ explorationRatio: z.ZodDefault<z.ZodNumber>;
484
+ stagnationAfterRejections: z.ZodDefault<z.ZodNumber>;
485
+ maxPatchCount: z.ZodDefault<z.ZodNumber>;
486
+ history: z.ZodDefault<z.ZodObject<{
487
+ enabled: z.ZodDefault<z.ZodBoolean>;
488
+ maxRuns: z.ZodDefault<z.ZodNumber>;
489
+ }, z.core.$strip>>;
490
+ }, z.core.$strip>], "type">>;
491
+ pickBest: z.ZodEnum<{
492
+ highest_metric: "highest_metric";
493
+ judge_pairwise: "judge_pairwise";
494
+ }>;
495
+ history: z.ZodDefault<z.ZodObject<{
496
+ enabled: z.ZodDefault<z.ZodBoolean>;
497
+ maxRuns: z.ZodDefault<z.ZodNumber>;
498
+ }, z.core.$strip>>;
499
+ }, z.core.$strip>], "type">;
500
+ experiment: z.ZodObject<{
501
+ run: z.ZodObject<{
502
+ command: z.ZodString;
503
+ cwd: z.ZodOptional<z.ZodString>;
504
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
505
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
506
+ }, z.core.$strip>;
507
+ outputs: z.ZodDefault<z.ZodArray<z.ZodObject<{
508
+ id: z.ZodString;
509
+ path: z.ZodString;
510
+ }, z.core.$strip>>>;
511
+ }, z.core.$strip>;
512
+ judgePacks: z.ZodDefault<z.ZodArray<z.ZodObject<{
513
+ id: z.ZodString;
514
+ mode: z.ZodEnum<{
515
+ absolute: "absolute";
516
+ pairwise: "pairwise";
517
+ }>;
518
+ blindPairwise: z.ZodDefault<z.ZodBoolean>;
519
+ orderRandomized: z.ZodDefault<z.ZodBoolean>;
520
+ repeats: z.ZodDefault<z.ZodNumber>;
521
+ aggregation: z.ZodDefault<z.ZodEnum<{
522
+ mean: "mean";
523
+ median: "median";
524
+ majority_vote: "majority_vote";
525
+ sign_test: "sign_test";
526
+ }>>;
527
+ judges: z.ZodArray<z.ZodObject<{
528
+ model: z.ZodString;
529
+ weight: z.ZodDefault<z.ZodNumber>;
530
+ }, z.core.$strip>>;
531
+ lowConfidenceThreshold: z.ZodDefault<z.ZodNumber>;
532
+ anchors: z.ZodOptional<z.ZodObject<{
533
+ path: z.ZodString;
534
+ minAgreementWithHuman: z.ZodDefault<z.ZodNumber>;
535
+ }, z.core.$strip>>;
536
+ audit: z.ZodDefault<z.ZodObject<{
537
+ sampleRate: z.ZodDefault<z.ZodNumber>;
538
+ freezeAutoAcceptIfAnchorFails: z.ZodDefault<z.ZodBoolean>;
539
+ }, z.core.$strip>>;
540
+ }, z.core.$strip>>>;
541
+ metrics: z.ZodObject<{
542
+ catalog: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
543
+ id: z.ZodString;
544
+ direction: z.ZodEnum<{
545
+ maximize: "maximize";
546
+ minimize: "minimize";
547
+ }>;
548
+ kind: z.ZodLiteral<"numeric">;
549
+ extractor: z.ZodObject<{
550
+ parser: z.ZodDefault<z.ZodEnum<{
551
+ json_path: "json_path";
552
+ regex: "regex";
553
+ plain_number: "plain_number";
554
+ }>>;
555
+ valuePath: z.ZodOptional<z.ZodString>;
556
+ pattern: z.ZodOptional<z.ZodString>;
557
+ command: z.ZodString;
558
+ cwd: z.ZodOptional<z.ZodString>;
559
+ env: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
560
+ timeoutSec: z.ZodDefault<z.ZodNumber>;
561
+ type: z.ZodLiteral<"command">;
562
+ }, z.core.$strip>;
563
+ }, z.core.$strip>, z.ZodObject<{
564
+ id: z.ZodString;
565
+ direction: z.ZodEnum<{
566
+ maximize: "maximize";
567
+ minimize: "minimize";
568
+ }>;
569
+ kind: z.ZodLiteral<"llm_score">;
570
+ extractor: z.ZodObject<{
571
+ type: z.ZodLiteral<"llm_judge">;
572
+ judgePack: z.ZodString;
573
+ prompt: z.ZodString;
574
+ mode: z.ZodDefault<z.ZodEnum<{
575
+ absolute: "absolute";
576
+ pairwise: "pairwise";
577
+ }>>;
578
+ compareAgainst: z.ZodDefault<z.ZodEnum<{
579
+ "frontier.best": "frontier.best";
580
+ none: "none";
581
+ }>>;
582
+ inputs: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
583
+ outputKey: z.ZodDefault<z.ZodString>;
584
+ }, z.core.$strip>;
585
+ }, z.core.$strip>], "kind">>;
586
+ }, z.core.$strip>;
587
+ constraints: z.ZodDefault<z.ZodArray<z.ZodObject<{
588
+ metric: z.ZodString;
589
+ op: z.ZodEnum<{
590
+ ">=": ">=";
591
+ ">": ">";
592
+ "<=": "<=";
593
+ "<": "<";
594
+ "==": "==";
595
+ }>;
596
+ value: z.ZodNumber;
597
+ }, z.core.$strip>>>;
598
+ frontier: z.ZodDiscriminatedUnion<[z.ZodObject<{
599
+ strategy: z.ZodLiteral<"single_best">;
600
+ primaryMetric: z.ZodString;
601
+ }, z.core.$strip>, z.ZodObject<{
602
+ strategy: z.ZodLiteral<"pareto">;
603
+ objectives: z.ZodArray<z.ZodObject<{
604
+ metric: z.ZodString;
605
+ epsilon: z.ZodDefault<z.ZodNumber>;
606
+ }, z.core.$strip>>;
607
+ tieBreaker: z.ZodDefault<z.ZodEnum<{
608
+ none: "none";
609
+ hypervolume: "hypervolume";
610
+ }>>;
611
+ referencePoint: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
612
+ }, z.core.$strip>], "strategy">;
613
+ ratchet: z.ZodDiscriminatedUnion<[z.ZodObject<{
614
+ type: z.ZodLiteral<"epsilon_improve">;
615
+ metric: z.ZodOptional<z.ZodString>;
616
+ epsilon: z.ZodDefault<z.ZodNumber>;
617
+ }, z.core.$strip>, z.ZodObject<{
618
+ type: z.ZodLiteral<"approval_gate">;
619
+ metric: z.ZodOptional<z.ZodString>;
620
+ minConfidence: z.ZodDefault<z.ZodNumber>;
621
+ graduation: z.ZodOptional<z.ZodObject<{
622
+ consecutiveAccepts: z.ZodNumber;
623
+ epsilon: z.ZodDefault<z.ZodNumber>;
624
+ }, z.core.$strip>>;
625
+ }, z.core.$strip>, z.ZodObject<{
626
+ type: z.ZodLiteral<"pareto_dominance">;
627
+ }, z.core.$strip>], "type">;
628
+ storage: z.ZodDefault<z.ZodObject<{
629
+ root: z.ZodDefault<z.ZodString>;
630
+ }, z.core.$strip>>;
631
+ }, z.core.$strip>;
632
+ export type RalphManifest = z.infer<typeof RalphManifestSchema>;
633
+ export type ProposerConfig = z.infer<typeof proposerSchema>;
634
+ export type MetricExtractor = z.infer<typeof metricExtractorSchema>;
635
+ export type JudgePack = z.infer<typeof judgePackSchema>;
636
+ export type FrontierConfig = z.infer<typeof frontierSchema>;
637
+ export type RatchetConfig = z.infer<typeof ratchetSchema>;
638
+ export type CommandProposerConfig = z.infer<typeof commandProposerSchema>;
639
+ export type ParallelProposerConfig = z.infer<typeof parallelProposerSchema>;
640
+ export type CommandMetricExtractorConfig = z.infer<typeof commandMetricExtractorSchema>;
641
+ export type CommandSpecConfig = z.infer<typeof commandSpecSchema>;
642
+ export type ScopeConfig = z.infer<typeof scopeSchema>;
643
+ export type LlmJudgeMetricExtractorConfig = z.infer<typeof llmJudgeMetricExtractorSchema>;
644
+ export type ProposerHistoryConfig = z.infer<typeof proposerHistorySchema>;
645
+ export type ParetoObjectiveConfig = z.infer<typeof paretoObjectiveSchema>;
646
+ export type LeafProposerConfig = z.infer<typeof leafProposerSchema>;
647
+ export { DEFAULT_MANIFEST_FILENAME };