@lcv-ideas-software/cross-review 4.0.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 (122) hide show
  1. package/CHANGELOG.md +2568 -0
  2. package/LICENSE +201 -0
  3. package/NOTICE +26 -0
  4. package/README.md +208 -0
  5. package/SECURITY.md +52 -0
  6. package/dist/scripts/api-streaming-smoke.d.ts +1 -0
  7. package/dist/scripts/api-streaming-smoke.js +78 -0
  8. package/dist/scripts/api-streaming-smoke.js.map +1 -0
  9. package/dist/scripts/runtime-default-smoke.d.ts +1 -0
  10. package/dist/scripts/runtime-default-smoke.js +88 -0
  11. package/dist/scripts/runtime-default-smoke.js.map +1 -0
  12. package/dist/scripts/runtime-smoke.d.ts +1 -0
  13. package/dist/scripts/runtime-smoke.js +148 -0
  14. package/dist/scripts/runtime-smoke.js.map +1 -0
  15. package/dist/scripts/smoke.d.ts +1 -0
  16. package/dist/scripts/smoke.js +6156 -0
  17. package/dist/scripts/smoke.js.map +1 -0
  18. package/dist/src/core/cache-manifest.d.ts +22 -0
  19. package/dist/src/core/cache-manifest.js +133 -0
  20. package/dist/src/core/cache-manifest.js.map +1 -0
  21. package/dist/src/core/caller-tokens.d.ts +32 -0
  22. package/dist/src/core/caller-tokens.js +240 -0
  23. package/dist/src/core/caller-tokens.js.map +1 -0
  24. package/dist/src/core/config.d.ts +9 -0
  25. package/dist/src/core/config.js +643 -0
  26. package/dist/src/core/config.js.map +1 -0
  27. package/dist/src/core/convergence.d.ts +5 -0
  28. package/dist/src/core/convergence.js +186 -0
  29. package/dist/src/core/convergence.js.map +1 -0
  30. package/dist/src/core/cost.d.ts +59 -0
  31. package/dist/src/core/cost.js +359 -0
  32. package/dist/src/core/cost.js.map +1 -0
  33. package/dist/src/core/file-config.d.ts +316 -0
  34. package/dist/src/core/file-config.js +490 -0
  35. package/dist/src/core/file-config.js.map +1 -0
  36. package/dist/src/core/orchestrator.d.ts +199 -0
  37. package/dist/src/core/orchestrator.js +3430 -0
  38. package/dist/src/core/orchestrator.js.map +1 -0
  39. package/dist/src/core/prompt-parts.d.ts +58 -0
  40. package/dist/src/core/prompt-parts.js +122 -0
  41. package/dist/src/core/prompt-parts.js.map +1 -0
  42. package/dist/src/core/relator-lottery.d.ts +23 -0
  43. package/dist/src/core/relator-lottery.js +112 -0
  44. package/dist/src/core/relator-lottery.js.map +1 -0
  45. package/dist/src/core/reports.d.ts +2 -0
  46. package/dist/src/core/reports.js +82 -0
  47. package/dist/src/core/reports.js.map +1 -0
  48. package/dist/src/core/session-store.d.ts +149 -0
  49. package/dist/src/core/session-store.js +1923 -0
  50. package/dist/src/core/session-store.js.map +1 -0
  51. package/dist/src/core/status.d.ts +61 -0
  52. package/dist/src/core/status.js +249 -0
  53. package/dist/src/core/status.js.map +1 -0
  54. package/dist/src/core/timeouts.d.ts +2 -0
  55. package/dist/src/core/timeouts.js +3 -0
  56. package/dist/src/core/timeouts.js.map +1 -0
  57. package/dist/src/core/types.d.ts +604 -0
  58. package/dist/src/core/types.js +36 -0
  59. package/dist/src/core/types.js.map +1 -0
  60. package/dist/src/dashboard/server.d.ts +2 -0
  61. package/dist/src/dashboard/server.js +339 -0
  62. package/dist/src/dashboard/server.js.map +1 -0
  63. package/dist/src/mcp/server.d.ts +54 -0
  64. package/dist/src/mcp/server.js +1584 -0
  65. package/dist/src/mcp/server.js.map +1 -0
  66. package/dist/src/observability/logger.d.ts +9 -0
  67. package/dist/src/observability/logger.js +24 -0
  68. package/dist/src/observability/logger.js.map +1 -0
  69. package/dist/src/peers/anthropic.d.ts +14 -0
  70. package/dist/src/peers/anthropic.js +290 -0
  71. package/dist/src/peers/anthropic.js.map +1 -0
  72. package/dist/src/peers/base.d.ts +72 -0
  73. package/dist/src/peers/base.js +416 -0
  74. package/dist/src/peers/base.js.map +1 -0
  75. package/dist/src/peers/deepseek.d.ts +12 -0
  76. package/dist/src/peers/deepseek.js +246 -0
  77. package/dist/src/peers/deepseek.js.map +1 -0
  78. package/dist/src/peers/errors.d.ts +2 -0
  79. package/dist/src/peers/errors.js +185 -0
  80. package/dist/src/peers/errors.js.map +1 -0
  81. package/dist/src/peers/gemini.d.ts +13 -0
  82. package/dist/src/peers/gemini.js +215 -0
  83. package/dist/src/peers/gemini.js.map +1 -0
  84. package/dist/src/peers/grok.d.ts +17 -0
  85. package/dist/src/peers/grok.js +346 -0
  86. package/dist/src/peers/grok.js.map +1 -0
  87. package/dist/src/peers/model-selection.d.ts +4 -0
  88. package/dist/src/peers/model-selection.js +260 -0
  89. package/dist/src/peers/model-selection.js.map +1 -0
  90. package/dist/src/peers/openai.d.ts +14 -0
  91. package/dist/src/peers/openai.js +299 -0
  92. package/dist/src/peers/openai.js.map +1 -0
  93. package/dist/src/peers/perplexity.d.ts +18 -0
  94. package/dist/src/peers/perplexity.js +375 -0
  95. package/dist/src/peers/perplexity.js.map +1 -0
  96. package/dist/src/peers/registry.d.ts +3 -0
  97. package/dist/src/peers/registry.js +77 -0
  98. package/dist/src/peers/registry.js.map +1 -0
  99. package/dist/src/peers/retry.d.ts +2 -0
  100. package/dist/src/peers/retry.js +36 -0
  101. package/dist/src/peers/retry.js.map +1 -0
  102. package/dist/src/peers/stub.d.ts +13 -0
  103. package/dist/src/peers/stub.js +344 -0
  104. package/dist/src/peers/stub.js.map +1 -0
  105. package/dist/src/peers/text.d.ts +18 -0
  106. package/dist/src/peers/text.js +39 -0
  107. package/dist/src/peers/text.js.map +1 -0
  108. package/dist/src/security/redact.d.ts +2 -0
  109. package/dist/src/security/redact.js +128 -0
  110. package/dist/src/security/redact.js.map +1 -0
  111. package/docs/api-keys.md +34 -0
  112. package/docs/architecture.md +118 -0
  113. package/docs/caching.md +135 -0
  114. package/docs/costs.md +40 -0
  115. package/docs/evidence-preflight.md +88 -0
  116. package/docs/github-security-baseline.md +32 -0
  117. package/docs/model-selection.md +105 -0
  118. package/docs/reports/cross-review-v2-api-capability-smoke-2026-04-30.md +354 -0
  119. package/docs/reports/cross-review-v2-format-recovery-findings-2026-04-28.md +223 -0
  120. package/docs/reports/cross-review-v2-official-provider-docs-refresh-2026-05-05.md +60 -0
  121. package/docs/reports/cross-review-v2-token-streaming-smoke-2026-04-30.md +119 -0
  122. package/package.json +88 -0
@@ -0,0 +1,316 @@
1
+ import { z } from "zod";
2
+ export declare const FileConfigSchema: z.ZodObject<{
3
+ version: z.ZodOptional<z.ZodString>;
4
+ log_level: z.ZodOptional<z.ZodEnum<{
5
+ info: "info";
6
+ error: "error";
7
+ debug: "debug";
8
+ warn: "warn";
9
+ }>>;
10
+ stub: z.ZodOptional<z.ZodBoolean>;
11
+ dashboard_port: z.ZodOptional<z.ZodNumber>;
12
+ max_output_tokens: z.ZodOptional<z.ZodNumber>;
13
+ models: z.ZodOptional<z.ZodObject<{
14
+ codex: z.ZodOptional<z.ZodString>;
15
+ claude: z.ZodOptional<z.ZodString>;
16
+ gemini: z.ZodOptional<z.ZodString>;
17
+ deepseek: z.ZodOptional<z.ZodString>;
18
+ grok: z.ZodOptional<z.ZodString>;
19
+ perplexity: z.ZodOptional<z.ZodString>;
20
+ }, z.core.$strict>>;
21
+ fallback_models: z.ZodOptional<z.ZodObject<{
22
+ codex: z.ZodOptional<z.ZodArray<z.ZodString>>;
23
+ claude: z.ZodOptional<z.ZodArray<z.ZodString>>;
24
+ gemini: z.ZodOptional<z.ZodArray<z.ZodString>>;
25
+ deepseek: z.ZodOptional<z.ZodArray<z.ZodString>>;
26
+ grok: z.ZodOptional<z.ZodArray<z.ZodString>>;
27
+ perplexity: z.ZodOptional<z.ZodArray<z.ZodString>>;
28
+ }, z.core.$strict>>;
29
+ reasoning_effort: z.ZodOptional<z.ZodObject<{
30
+ codex: z.ZodOptional<z.ZodEnum<{
31
+ none: "none";
32
+ minimal: "minimal";
33
+ low: "low";
34
+ medium: "medium";
35
+ high: "high";
36
+ xhigh: "xhigh";
37
+ max: "max";
38
+ }>>;
39
+ claude: z.ZodOptional<z.ZodEnum<{
40
+ none: "none";
41
+ minimal: "minimal";
42
+ low: "low";
43
+ medium: "medium";
44
+ high: "high";
45
+ xhigh: "xhigh";
46
+ max: "max";
47
+ }>>;
48
+ gemini: z.ZodOptional<z.ZodEnum<{
49
+ none: "none";
50
+ minimal: "minimal";
51
+ low: "low";
52
+ medium: "medium";
53
+ high: "high";
54
+ xhigh: "xhigh";
55
+ max: "max";
56
+ }>>;
57
+ deepseek: z.ZodOptional<z.ZodEnum<{
58
+ none: "none";
59
+ minimal: "minimal";
60
+ low: "low";
61
+ medium: "medium";
62
+ high: "high";
63
+ xhigh: "xhigh";
64
+ max: "max";
65
+ }>>;
66
+ grok: z.ZodOptional<z.ZodEnum<{
67
+ none: "none";
68
+ minimal: "minimal";
69
+ low: "low";
70
+ medium: "medium";
71
+ high: "high";
72
+ xhigh: "xhigh";
73
+ max: "max";
74
+ }>>;
75
+ perplexity: z.ZodOptional<z.ZodEnum<{
76
+ none: "none";
77
+ minimal: "minimal";
78
+ low: "low";
79
+ medium: "medium";
80
+ high: "high";
81
+ xhigh: "xhigh";
82
+ max: "max";
83
+ }>>;
84
+ }, z.core.$strict>>;
85
+ peer_enabled: z.ZodOptional<z.ZodObject<{
86
+ codex: z.ZodOptional<z.ZodBoolean>;
87
+ claude: z.ZodOptional<z.ZodBoolean>;
88
+ gemini: z.ZodOptional<z.ZodBoolean>;
89
+ deepseek: z.ZodOptional<z.ZodBoolean>;
90
+ grok: z.ZodOptional<z.ZodBoolean>;
91
+ perplexity: z.ZodOptional<z.ZodBoolean>;
92
+ }, z.core.$strict>>;
93
+ cost_rates: z.ZodOptional<z.ZodObject<{
94
+ codex: z.ZodOptional<z.ZodObject<{
95
+ input_per_million: z.ZodOptional<z.ZodNumber>;
96
+ output_per_million: z.ZodOptional<z.ZodNumber>;
97
+ cache_read_per_million: z.ZodOptional<z.ZodNumber>;
98
+ cache_write_per_million: z.ZodOptional<z.ZodNumber>;
99
+ input_extended_per_million: z.ZodOptional<z.ZodNumber>;
100
+ output_extended_per_million: z.ZodOptional<z.ZodNumber>;
101
+ cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
102
+ cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
103
+ threshold_tokens: z.ZodOptional<z.ZodNumber>;
104
+ promo_input_per_million: z.ZodOptional<z.ZodNumber>;
105
+ promo_output_per_million: z.ZodOptional<z.ZodNumber>;
106
+ promo_input_extended_per_million: z.ZodOptional<z.ZodNumber>;
107
+ promo_output_extended_per_million: z.ZodOptional<z.ZodNumber>;
108
+ promo_cache_read_per_million: z.ZodOptional<z.ZodNumber>;
109
+ promo_cache_write_per_million: z.ZodOptional<z.ZodNumber>;
110
+ promo_cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
111
+ promo_cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
112
+ promo_expires_at_utc: z.ZodOptional<z.ZodString>;
113
+ request_fee_low_per_1000: z.ZodOptional<z.ZodNumber>;
114
+ request_fee_medium_per_1000: z.ZodOptional<z.ZodNumber>;
115
+ request_fee_high_per_1000: z.ZodOptional<z.ZodNumber>;
116
+ citation_tokens_per_million: z.ZodOptional<z.ZodNumber>;
117
+ deep_research_reasoning_tokens_per_million: z.ZodOptional<z.ZodNumber>;
118
+ search_queries_per_1000: z.ZodOptional<z.ZodNumber>;
119
+ }, z.core.$strict>>;
120
+ claude: z.ZodOptional<z.ZodObject<{
121
+ input_per_million: z.ZodOptional<z.ZodNumber>;
122
+ output_per_million: z.ZodOptional<z.ZodNumber>;
123
+ cache_read_per_million: z.ZodOptional<z.ZodNumber>;
124
+ cache_write_per_million: z.ZodOptional<z.ZodNumber>;
125
+ input_extended_per_million: z.ZodOptional<z.ZodNumber>;
126
+ output_extended_per_million: z.ZodOptional<z.ZodNumber>;
127
+ cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
128
+ cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
129
+ threshold_tokens: z.ZodOptional<z.ZodNumber>;
130
+ promo_input_per_million: z.ZodOptional<z.ZodNumber>;
131
+ promo_output_per_million: z.ZodOptional<z.ZodNumber>;
132
+ promo_input_extended_per_million: z.ZodOptional<z.ZodNumber>;
133
+ promo_output_extended_per_million: z.ZodOptional<z.ZodNumber>;
134
+ promo_cache_read_per_million: z.ZodOptional<z.ZodNumber>;
135
+ promo_cache_write_per_million: z.ZodOptional<z.ZodNumber>;
136
+ promo_cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
137
+ promo_cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
138
+ promo_expires_at_utc: z.ZodOptional<z.ZodString>;
139
+ request_fee_low_per_1000: z.ZodOptional<z.ZodNumber>;
140
+ request_fee_medium_per_1000: z.ZodOptional<z.ZodNumber>;
141
+ request_fee_high_per_1000: z.ZodOptional<z.ZodNumber>;
142
+ citation_tokens_per_million: z.ZodOptional<z.ZodNumber>;
143
+ deep_research_reasoning_tokens_per_million: z.ZodOptional<z.ZodNumber>;
144
+ search_queries_per_1000: z.ZodOptional<z.ZodNumber>;
145
+ }, z.core.$strict>>;
146
+ gemini: z.ZodOptional<z.ZodObject<{
147
+ input_per_million: z.ZodOptional<z.ZodNumber>;
148
+ output_per_million: z.ZodOptional<z.ZodNumber>;
149
+ cache_read_per_million: z.ZodOptional<z.ZodNumber>;
150
+ cache_write_per_million: z.ZodOptional<z.ZodNumber>;
151
+ input_extended_per_million: z.ZodOptional<z.ZodNumber>;
152
+ output_extended_per_million: z.ZodOptional<z.ZodNumber>;
153
+ cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
154
+ cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
155
+ threshold_tokens: z.ZodOptional<z.ZodNumber>;
156
+ promo_input_per_million: z.ZodOptional<z.ZodNumber>;
157
+ promo_output_per_million: z.ZodOptional<z.ZodNumber>;
158
+ promo_input_extended_per_million: z.ZodOptional<z.ZodNumber>;
159
+ promo_output_extended_per_million: z.ZodOptional<z.ZodNumber>;
160
+ promo_cache_read_per_million: z.ZodOptional<z.ZodNumber>;
161
+ promo_cache_write_per_million: z.ZodOptional<z.ZodNumber>;
162
+ promo_cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
163
+ promo_cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
164
+ promo_expires_at_utc: z.ZodOptional<z.ZodString>;
165
+ request_fee_low_per_1000: z.ZodOptional<z.ZodNumber>;
166
+ request_fee_medium_per_1000: z.ZodOptional<z.ZodNumber>;
167
+ request_fee_high_per_1000: z.ZodOptional<z.ZodNumber>;
168
+ citation_tokens_per_million: z.ZodOptional<z.ZodNumber>;
169
+ deep_research_reasoning_tokens_per_million: z.ZodOptional<z.ZodNumber>;
170
+ search_queries_per_1000: z.ZodOptional<z.ZodNumber>;
171
+ }, z.core.$strict>>;
172
+ deepseek: z.ZodOptional<z.ZodObject<{
173
+ input_per_million: z.ZodOptional<z.ZodNumber>;
174
+ output_per_million: z.ZodOptional<z.ZodNumber>;
175
+ cache_read_per_million: z.ZodOptional<z.ZodNumber>;
176
+ cache_write_per_million: z.ZodOptional<z.ZodNumber>;
177
+ input_extended_per_million: z.ZodOptional<z.ZodNumber>;
178
+ output_extended_per_million: z.ZodOptional<z.ZodNumber>;
179
+ cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
180
+ cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
181
+ threshold_tokens: z.ZodOptional<z.ZodNumber>;
182
+ promo_input_per_million: z.ZodOptional<z.ZodNumber>;
183
+ promo_output_per_million: z.ZodOptional<z.ZodNumber>;
184
+ promo_input_extended_per_million: z.ZodOptional<z.ZodNumber>;
185
+ promo_output_extended_per_million: z.ZodOptional<z.ZodNumber>;
186
+ promo_cache_read_per_million: z.ZodOptional<z.ZodNumber>;
187
+ promo_cache_write_per_million: z.ZodOptional<z.ZodNumber>;
188
+ promo_cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
189
+ promo_cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
190
+ promo_expires_at_utc: z.ZodOptional<z.ZodString>;
191
+ request_fee_low_per_1000: z.ZodOptional<z.ZodNumber>;
192
+ request_fee_medium_per_1000: z.ZodOptional<z.ZodNumber>;
193
+ request_fee_high_per_1000: z.ZodOptional<z.ZodNumber>;
194
+ citation_tokens_per_million: z.ZodOptional<z.ZodNumber>;
195
+ deep_research_reasoning_tokens_per_million: z.ZodOptional<z.ZodNumber>;
196
+ search_queries_per_1000: z.ZodOptional<z.ZodNumber>;
197
+ }, z.core.$strict>>;
198
+ grok: z.ZodOptional<z.ZodObject<{
199
+ input_per_million: z.ZodOptional<z.ZodNumber>;
200
+ output_per_million: z.ZodOptional<z.ZodNumber>;
201
+ cache_read_per_million: z.ZodOptional<z.ZodNumber>;
202
+ cache_write_per_million: z.ZodOptional<z.ZodNumber>;
203
+ input_extended_per_million: z.ZodOptional<z.ZodNumber>;
204
+ output_extended_per_million: z.ZodOptional<z.ZodNumber>;
205
+ cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
206
+ cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
207
+ threshold_tokens: z.ZodOptional<z.ZodNumber>;
208
+ promo_input_per_million: z.ZodOptional<z.ZodNumber>;
209
+ promo_output_per_million: z.ZodOptional<z.ZodNumber>;
210
+ promo_input_extended_per_million: z.ZodOptional<z.ZodNumber>;
211
+ promo_output_extended_per_million: z.ZodOptional<z.ZodNumber>;
212
+ promo_cache_read_per_million: z.ZodOptional<z.ZodNumber>;
213
+ promo_cache_write_per_million: z.ZodOptional<z.ZodNumber>;
214
+ promo_cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
215
+ promo_cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
216
+ promo_expires_at_utc: z.ZodOptional<z.ZodString>;
217
+ request_fee_low_per_1000: z.ZodOptional<z.ZodNumber>;
218
+ request_fee_medium_per_1000: z.ZodOptional<z.ZodNumber>;
219
+ request_fee_high_per_1000: z.ZodOptional<z.ZodNumber>;
220
+ citation_tokens_per_million: z.ZodOptional<z.ZodNumber>;
221
+ deep_research_reasoning_tokens_per_million: z.ZodOptional<z.ZodNumber>;
222
+ search_queries_per_1000: z.ZodOptional<z.ZodNumber>;
223
+ }, z.core.$strict>>;
224
+ perplexity: z.ZodOptional<z.ZodObject<{
225
+ input_per_million: z.ZodOptional<z.ZodNumber>;
226
+ output_per_million: z.ZodOptional<z.ZodNumber>;
227
+ cache_read_per_million: z.ZodOptional<z.ZodNumber>;
228
+ cache_write_per_million: z.ZodOptional<z.ZodNumber>;
229
+ input_extended_per_million: z.ZodOptional<z.ZodNumber>;
230
+ output_extended_per_million: z.ZodOptional<z.ZodNumber>;
231
+ cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
232
+ cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
233
+ threshold_tokens: z.ZodOptional<z.ZodNumber>;
234
+ promo_input_per_million: z.ZodOptional<z.ZodNumber>;
235
+ promo_output_per_million: z.ZodOptional<z.ZodNumber>;
236
+ promo_input_extended_per_million: z.ZodOptional<z.ZodNumber>;
237
+ promo_output_extended_per_million: z.ZodOptional<z.ZodNumber>;
238
+ promo_cache_read_per_million: z.ZodOptional<z.ZodNumber>;
239
+ promo_cache_write_per_million: z.ZodOptional<z.ZodNumber>;
240
+ promo_cache_read_extended_per_million: z.ZodOptional<z.ZodNumber>;
241
+ promo_cache_write_extended_per_million: z.ZodOptional<z.ZodNumber>;
242
+ promo_expires_at_utc: z.ZodOptional<z.ZodString>;
243
+ request_fee_low_per_1000: z.ZodOptional<z.ZodNumber>;
244
+ request_fee_medium_per_1000: z.ZodOptional<z.ZodNumber>;
245
+ request_fee_high_per_1000: z.ZodOptional<z.ZodNumber>;
246
+ citation_tokens_per_million: z.ZodOptional<z.ZodNumber>;
247
+ deep_research_reasoning_tokens_per_million: z.ZodOptional<z.ZodNumber>;
248
+ search_queries_per_1000: z.ZodOptional<z.ZodNumber>;
249
+ }, z.core.$strict>>;
250
+ }, z.core.$strict>>;
251
+ budget: z.ZodOptional<z.ZodObject<{
252
+ max_session_cost_usd: z.ZodOptional<z.ZodNumber>;
253
+ until_stopped_max_cost_usd: z.ZodOptional<z.ZodNumber>;
254
+ preflight_max_round_cost_usd: z.ZodOptional<z.ZodNumber>;
255
+ default_max_rounds: z.ZodOptional<z.ZodNumber>;
256
+ circular_max_rotations: z.ZodOptional<z.ZodNumber>;
257
+ }, z.core.$strict>>;
258
+ retry: z.ZodOptional<z.ZodObject<{
259
+ max_attempts: z.ZodOptional<z.ZodNumber>;
260
+ base_delay_ms: z.ZodOptional<z.ZodNumber>;
261
+ max_delay_ms: z.ZodOptional<z.ZodNumber>;
262
+ timeout_ms: z.ZodOptional<z.ZodNumber>;
263
+ }, z.core.$strict>>;
264
+ evidence_judge_autowire: z.ZodOptional<z.ZodObject<{
265
+ mode: z.ZodOptional<z.ZodEnum<{
266
+ off: "off";
267
+ shadow: "shadow";
268
+ active: "active";
269
+ }>>;
270
+ peer: z.ZodOptional<z.ZodString>;
271
+ consensus_peers: z.ZodOptional<z.ZodArray<z.ZodString>>;
272
+ max_items_per_pass: z.ZodOptional<z.ZodNumber>;
273
+ }, z.core.$strict>>;
274
+ cache: z.ZodOptional<z.ZodObject<{
275
+ disable_cache: z.ZodOptional<z.ZodBoolean>;
276
+ schema_version: z.ZodOptional<z.ZodString>;
277
+ ttl_anthropic: z.ZodOptional<z.ZodEnum<{
278
+ "5m": "5m";
279
+ "1h": "1h";
280
+ }>>;
281
+ ttl_openai: z.ZodOptional<z.ZodEnum<{
282
+ "5m": "5m";
283
+ "1h": "1h";
284
+ }>>;
285
+ disable_anthropic: z.ZodOptional<z.ZodBoolean>;
286
+ disable_openai: z.ZodOptional<z.ZodBoolean>;
287
+ disable_gemini: z.ZodOptional<z.ZodBoolean>;
288
+ disable_deepseek: z.ZodOptional<z.ZodBoolean>;
289
+ disable_grok: z.ZodOptional<z.ZodBoolean>;
290
+ disable_perplexity: z.ZodOptional<z.ZodBoolean>;
291
+ }, z.core.$strict>>;
292
+ perplexity: z.ZodOptional<z.ZodObject<{
293
+ search_context_size: z.ZodOptional<z.ZodEnum<{
294
+ low: "low";
295
+ medium: "medium";
296
+ high: "high";
297
+ }>>;
298
+ disable_search: z.ZodOptional<z.ZodBoolean>;
299
+ }, z.core.$strict>>;
300
+ token_streaming: z.ZodOptional<z.ZodObject<{
301
+ chars_threshold: z.ZodOptional<z.ZodNumber>;
302
+ ms_threshold: z.ZodOptional<z.ZodNumber>;
303
+ verbose: z.ZodOptional<z.ZodBoolean>;
304
+ }, z.core.$strict>>;
305
+ }, z.core.$strict>;
306
+ export type FileConfig = z.infer<typeof FileConfigSchema>;
307
+ export declare function flattenFileConfigToEnvMap(config: FileConfig): Record<string, string>;
308
+ export declare function resolveConfigFilePath(dataDir: string, envValue?: (name: string) => string | undefined): string;
309
+ export interface ApplyFileConfigResult {
310
+ applied: boolean;
311
+ path: string;
312
+ fields_applied: number;
313
+ fields_overridden_by_env: number;
314
+ parse_error?: string;
315
+ }
316
+ export declare function applyFileConfigToEnv(dataDir: string, envValue: (name: string) => string | undefined): ApplyFileConfigResult;