@claudexor/orchestrator 3.8.1 → 3.8.3
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.
- package/dist/account-pool.d.ts +1 -0
- package/dist/account-pool.d.ts.map +1 -1
- package/dist/account-pool.js +2 -0
- package/dist/account-pool.js.map +1 -1
- package/dist/account-resolution.d.ts +2 -0
- package/dist/account-resolution.d.ts.map +1 -1
- package/dist/account-resolution.js +15 -11
- package/dist/account-resolution.js.map +1 -1
- package/dist/diffReview.d.ts +2 -1
- package/dist/diffReview.d.ts.map +1 -1
- package/dist/diffReview.js +14 -2
- package/dist/diffReview.js.map +1 -1
- package/dist/orchestrator-credentials.d.ts +13 -2
- package/dist/orchestrator-credentials.d.ts.map +1 -1
- package/dist/orchestrator-credentials.js +64 -3
- package/dist/orchestrator-credentials.js.map +1 -1
- package/dist/orchestrator.d.ts.map +1 -1
- package/dist/orchestrator.js +9 -9
- package/dist/orchestrator.js.map +1 -1
- package/dist/reviewerPanel.d.ts +9 -1
- package/dist/reviewerPanel.d.ts.map +1 -1
- package/dist/reviewerPanel.js +276 -133
- package/dist/reviewerPanel.js.map +1 -1
- package/package.json +17 -17
package/dist/reviewerPanel.d.ts
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* HarnessUnavailableError; the orchestrator turns them into review_preflight
|
|
9
9
|
* failure ARTIFACTS after run-dir creation, before candidates spend money.
|
|
10
10
|
*/
|
|
11
|
-
import type { AuthPreference, ControlReviewerPanelEntry, EffortHint, ProviderFamily } from "@claudexor/schema";
|
|
11
|
+
import type { AuthPreference, ControlReviewerPanelEntry, CredentialProfile, EffortHint, ProviderFamily } from "@claudexor/schema";
|
|
12
12
|
import type { HarnessAdapter } from "@claudexor/core";
|
|
13
13
|
import type { ReviewerSpec } from "@claudexor/review";
|
|
14
14
|
interface PanelHarnessSettings {
|
|
@@ -20,6 +20,14 @@ export interface ReviewerPanelDeps {
|
|
|
20
20
|
registry: Map<string, HarnessAdapter>;
|
|
21
21
|
harnessSettings: Record<string, PanelHarnessSettings | undefined>;
|
|
22
22
|
authPreferenceFor: (harnessId: string) => AuthPreference;
|
|
23
|
+
/** Canonical account-pool owner; explicit pins are strict, null is unpinned. */
|
|
24
|
+
resolveReviewerProfile?: (input: {
|
|
25
|
+
harnessId: string;
|
|
26
|
+
model: string | null;
|
|
27
|
+
authPreference: AuthPreference;
|
|
28
|
+
credentialProfileId: string | null;
|
|
29
|
+
excludedProfileIds?: ReadonlySet<string>;
|
|
30
|
+
}) => Promise<CredentialProfile | null>;
|
|
23
31
|
/** Disclosure sink for a knob the panel dropped instead of refusing (the
|
|
24
32
|
* auto panel's `reviewerEfforts` map). Optional: the drop itself never
|
|
25
33
|
* depends on a listener being wired. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reviewerPanel.d.ts","sourceRoot":"","sources":["../src/reviewerPanel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EACV,cAAc,
|
|
1
|
+
{"version":3,"file":"reviewerPanel.d.ts","sourceRoot":"","sources":["../src/reviewerPanel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EACV,cAAc,EAEd,yBAAyB,EACzB,iBAAiB,EACjB,UAAU,EAGV,cAAc,EACf,MAAM,mBAAmB,CAAC;AAO3B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAKtD,UAAU,oBAAoB;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACtC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,GAAG,SAAS,CAAC,CAAC;IAClE,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,cAAc,CAAC;IACzD,gFAAgF;IAChF,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC/B,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,cAAc,EAAE,cAAc,CAAC;QAC/B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;QACnC,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;KAC1C,KAAK,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IACxC;;4CAEwC;IACxC,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7C;AAwED,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,iBAAiB,EACvB,KAAK,EAAE,yBAAyB,EAAE,GACjC,OAAO,CAAC,YAAY,EAAE,CAAC,CAwMzB;AAED,MAAM,WAAW,0BAA0B;IACzC,cAAc,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;IACzD,eAAe,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC;CAC/D;AAED;;;;;;;;GAQG;AACH,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,iBAAiB,EACvB,SAAS,GAAE,0BAA+B,GACzC,OAAO,CAAC,YAAY,EAAE,CAAC,CAqKzB"}
|
package/dist/reviewerPanel.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { effortLevelsForModel, estimateEffectiveAuthRoute, knownModelIdsForRoute, } from "@claudexor/schema";
|
|
1
|
+
import { ConformanceReport, effortLevelsForModel, estimateEffectiveAuthRoute, knownModelIdsForRoute, } from "@claudexor/schema";
|
|
2
2
|
import { HarnessUnavailableError, validateModel } from "@claudexor/core";
|
|
3
3
|
import { WorkspaceManager } from "@claudexor/workspace";
|
|
4
|
+
import { safeErrorMessage } from "./runSupport.js";
|
|
4
5
|
const MODEL_INVENTORY_RETRY_DELAY_MS = 250;
|
|
5
6
|
/**
|
|
6
7
|
* The reviewer effort gate: a requested level must be one the SELECTED reviewer
|
|
@@ -34,6 +35,28 @@ function reviewerEffortRefusal(harnessId, requestedEffort, capabilities, model)
|
|
|
34
35
|
: ` (harness-wide advertised ladder — no per-model ladder recorded${model ? ` for '${model}'` : ""}: ${supported})`;
|
|
35
36
|
return `reviewer harness '${harnessId}' does not support requested effort '${requestedEffort}'${suffix}`;
|
|
36
37
|
}
|
|
38
|
+
function credentialProfileAuthRoute(profile) {
|
|
39
|
+
return profile.credential_kind === "api_key" ? "api_key" : "local_session";
|
|
40
|
+
}
|
|
41
|
+
function discloseAutoSkip(deps, harnessId, reason) {
|
|
42
|
+
deps.onIgnoredSetting?.(`reviewer family '${harnessId}' skipped: ${reason}`);
|
|
43
|
+
}
|
|
44
|
+
async function readAutoModelInventory(adapter, input) {
|
|
45
|
+
if (typeof adapter.models !== "function")
|
|
46
|
+
return { status: "unknown", reason: "inventory not enumerable" };
|
|
47
|
+
try {
|
|
48
|
+
const models = await adapter.models(input);
|
|
49
|
+
// The adapter contract is fail-soft: [] means that the provider could not
|
|
50
|
+
// establish an inventory as often as it means a genuinely empty catalog.
|
|
51
|
+
// Auto selection must never turn that uncertainty into a model mismatch.
|
|
52
|
+
if (models.length === 0)
|
|
53
|
+
return { status: "unknown", reason: "inventory unavailable" };
|
|
54
|
+
return { status: "available", ids: new Set(models.map((model) => model.id)), source: "api" };
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
return { status: "unknown", reason: `inventory unavailable: ${safeErrorMessage(error)}` };
|
|
58
|
+
}
|
|
59
|
+
}
|
|
37
60
|
export async function resolveExplicitReviewerPanel(deps, panel) {
|
|
38
61
|
const { cwd, registry, harnessSettings } = deps;
|
|
39
62
|
const known = [...registry.keys()].sort().join(", ");
|
|
@@ -55,95 +78,139 @@ export async function resolveExplicitReviewerPanel(deps, panel) {
|
|
|
55
78
|
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' is disabled in settings (harnesses.${entry.harness}.enabled=false)`);
|
|
56
79
|
}
|
|
57
80
|
const authPreference = deps.authPreferenceFor(entry.harness);
|
|
58
|
-
const
|
|
59
|
-
if (!
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
81
|
+
const requestedModel = entry.model ?? harnessSettings[entry.harness]?.default_model ?? null;
|
|
82
|
+
if (entry.credentialProfileId && !deps.resolveReviewerProfile) {
|
|
83
|
+
throw new HarnessUnavailableError(`reviewer credential profile "${entry.credentialProfileId}" cannot be resolved because the account-pool owner is unavailable`);
|
|
84
|
+
}
|
|
85
|
+
const excludedProfileIds = new Set();
|
|
86
|
+
for (;;) {
|
|
87
|
+
const credentialProfile = deps.resolveReviewerProfile
|
|
88
|
+
? await deps.resolveReviewerProfile({
|
|
89
|
+
harnessId: entry.harness,
|
|
90
|
+
model: requestedModel,
|
|
91
|
+
authPreference,
|
|
92
|
+
credentialProfileId: entry.credentialProfileId ?? null,
|
|
93
|
+
...(excludedProfileIds.size > 0 ? { excludedProfileIds } : {}),
|
|
94
|
+
})
|
|
95
|
+
: null;
|
|
96
|
+
if (entry.credentialProfileId && !credentialProfile) {
|
|
97
|
+
throw new HarnessUnavailableError(`reviewer credential profile "${entry.credentialProfileId}" could not be resolved for harness '${entry.harness}'`);
|
|
63
98
|
}
|
|
64
|
-
|
|
65
|
-
|
|
99
|
+
const routeKey = `${entry.harness}\0${authPreference}`;
|
|
100
|
+
const statusKey = credentialProfile
|
|
101
|
+
? `${routeKey}\0${credentialProfile.profile_id}`
|
|
102
|
+
: routeKey;
|
|
103
|
+
if (!statusByRoute.has(statusKey)) {
|
|
104
|
+
let manifest = null;
|
|
105
|
+
try {
|
|
106
|
+
manifest = await adapter.discover();
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
manifest = null;
|
|
110
|
+
}
|
|
111
|
+
if (credentialProfile) {
|
|
112
|
+
statusByRoute.set(statusKey, {
|
|
113
|
+
manifest,
|
|
114
|
+
status: "ok",
|
|
115
|
+
enabledIntents: ["review"],
|
|
116
|
+
reasons: [],
|
|
117
|
+
authSources: [],
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
else
|
|
121
|
+
try {
|
|
122
|
+
const report = await adapter.doctor({ cwd, env: reviewModelEnv(), authPreference });
|
|
123
|
+
statusByRoute.set(statusKey, {
|
|
124
|
+
manifest,
|
|
125
|
+
status: report.status,
|
|
126
|
+
enabledIntents: report.enabled_intents,
|
|
127
|
+
reasons: report.reasons ?? [],
|
|
128
|
+
authSources: report.auth_sources ?? [],
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
catch (err) {
|
|
132
|
+
statusByRoute.set(statusKey, {
|
|
133
|
+
manifest,
|
|
134
|
+
status: "unavailable",
|
|
135
|
+
enabledIntents: [],
|
|
136
|
+
reasons: [err instanceof Error ? err.message : String(err)],
|
|
137
|
+
authSources: [],
|
|
138
|
+
});
|
|
139
|
+
}
|
|
66
140
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
status: report.status,
|
|
72
|
-
enabledIntents: report.enabled_intents,
|
|
73
|
-
reasons: report.reasons ?? [],
|
|
74
|
-
authSources: report.auth_sources ?? [],
|
|
75
|
-
});
|
|
141
|
+
const status = statusByRoute.get(statusKey);
|
|
142
|
+
const manifest = status?.manifest;
|
|
143
|
+
if (!status || !manifest) {
|
|
144
|
+
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' is unavailable`);
|
|
76
145
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
manifest,
|
|
80
|
-
status: "unavailable",
|
|
81
|
-
enabledIntents: [],
|
|
82
|
-
reasons: [err instanceof Error ? err.message : String(err)],
|
|
83
|
-
authSources: [],
|
|
84
|
-
});
|
|
146
|
+
if (manifest.kind === "fake") {
|
|
147
|
+
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' is a fake harness and cannot be used in reviewer panels`);
|
|
85
148
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
if (!status || !manifest) {
|
|
90
|
-
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' is unavailable`);
|
|
91
|
-
}
|
|
92
|
-
if (manifest.kind === "fake") {
|
|
93
|
-
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' is a fake harness and cannot be used in reviewer panels`);
|
|
94
|
-
}
|
|
95
|
-
if (status.status !== "ok") {
|
|
96
|
-
const reason = status.reasons.length > 0 ? `: ${status.reasons.join("; ")}` : "";
|
|
97
|
-
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' is not doctor-ok${reason}`);
|
|
98
|
-
}
|
|
99
|
-
if (!status.enabledIntents.includes("review") ||
|
|
100
|
-
!manifest.capabilities.review ||
|
|
101
|
-
!manifest.access_profiles_supported.includes("readonly")) {
|
|
102
|
-
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' cannot perform readonly review`);
|
|
103
|
-
}
|
|
104
|
-
const requestedModel = entry.model ?? harnessSettings[entry.harness]?.default_model ?? null;
|
|
105
|
-
if (requestedModel) {
|
|
106
|
-
if (typeof adapter.models !== "function") {
|
|
107
|
-
// STRICT: the manifest list is the truth source here; an empty
|
|
108
|
-
// list means the harness cannot verify models and the explicit
|
|
109
|
-
// model is refused (validateModel phrases both refusals).
|
|
110
|
-
const check = validateModel(requestedModel, knownModelIdsForRoute(manifest.capabilities.known_models, estimateEffectiveAuthRoute(authPreference, status.authSources)), "manifest");
|
|
111
|
-
if (check.status !== "ok") {
|
|
112
|
-
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' refused requested model '${requestedModel}': ${check.message}; run \`claudexor models --harness ${entry.harness}\``);
|
|
113
|
-
}
|
|
149
|
+
if (status.status !== "ok") {
|
|
150
|
+
const reason = status.reasons.length > 0 ? `: ${status.reasons.join("; ")}` : "";
|
|
151
|
+
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' is not doctor-ok${reason}`);
|
|
114
152
|
}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
153
|
+
if (!status.enabledIntents.includes("review") ||
|
|
154
|
+
!manifest.capabilities.review ||
|
|
155
|
+
!manifest.access_profiles_supported.includes("readonly")) {
|
|
156
|
+
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' cannot perform readonly review`);
|
|
157
|
+
}
|
|
158
|
+
if (requestedModel) {
|
|
159
|
+
if (typeof adapter.models !== "function") {
|
|
160
|
+
// STRICT: the manifest list is the truth source here; an empty
|
|
161
|
+
// list means the harness cannot verify models and the explicit
|
|
162
|
+
// model is refused (validateModel phrases both refusals).
|
|
163
|
+
const check = validateModel(requestedModel, knownModelIdsForRoute(manifest.capabilities.known_models, credentialProfile
|
|
164
|
+
? credentialProfileAuthRoute(credentialProfile)
|
|
165
|
+
: estimateEffectiveAuthRoute(authPreference, status.authSources)), "manifest");
|
|
166
|
+
if (check.status !== "ok") {
|
|
167
|
+
if (!entry.credentialProfileId && credentialProfile && deps.resolveReviewerProfile) {
|
|
168
|
+
excludedProfileIds.add(credentialProfile.profile_id);
|
|
169
|
+
continue;
|
|
170
|
+
}
|
|
171
|
+
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' refused requested model '${requestedModel}': ${check.message}; run \`claudexor models --harness ${entry.harness}\``);
|
|
172
|
+
}
|
|
125
173
|
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
174
|
+
else {
|
|
175
|
+
const inventoryKey = `${entry.harness}\0${authPreference}\0${credentialProfile?.profile_id ?? "default"}`;
|
|
176
|
+
if (!modelInventory.has(inventoryKey)) {
|
|
177
|
+
modelInventory.set(inventoryKey, await listModelIdsWithRetry(adapter.models.bind(adapter), {
|
|
178
|
+
cwd,
|
|
179
|
+
authPreference,
|
|
180
|
+
credentialProfile,
|
|
181
|
+
env: reviewModelEnv,
|
|
182
|
+
harnessId: entry.harness,
|
|
183
|
+
requestedModel,
|
|
184
|
+
}));
|
|
185
|
+
}
|
|
186
|
+
const models = modelInventory.get(inventoryKey);
|
|
187
|
+
if (models && models.size > 0 && !models.has(requestedModel)) {
|
|
188
|
+
if (!entry.credentialProfileId && credentialProfile && deps.resolveReviewerProfile) {
|
|
189
|
+
excludedProfileIds.add(credentialProfile.profile_id);
|
|
190
|
+
continue;
|
|
191
|
+
}
|
|
192
|
+
const available = [...models].slice(0, 80).join(", ");
|
|
193
|
+
const suffix = models.size > 80 ? `, ... (${models.size} total)` : "";
|
|
194
|
+
throw new HarnessUnavailableError(`reviewer harness '${entry.harness}' does not support requested model '${requestedModel}' on the review route (available: ${available}${suffix}); run \`claudexor models --harness ${entry.harness}\``);
|
|
195
|
+
}
|
|
131
196
|
}
|
|
132
197
|
}
|
|
198
|
+
const requestedEffort = entry.effort ?? null;
|
|
199
|
+
// An EXPLICIT panel entry is a precise owner statement — an unadvertised
|
|
200
|
+
// level stays a hard, typed refusal (never forwarded to die natively).
|
|
201
|
+
const refusal = reviewerEffortRefusal(entry.harness, requestedEffort, manifest.capabilities, requestedModel);
|
|
202
|
+
if (refusal)
|
|
203
|
+
throw new HarnessUnavailableError(refusal);
|
|
204
|
+
specs.push({
|
|
205
|
+
adapter,
|
|
206
|
+
providerFamily: manifest.provider_family,
|
|
207
|
+
requestedModel,
|
|
208
|
+
requestedEffort,
|
|
209
|
+
authPreference,
|
|
210
|
+
...(deps.resolveReviewerProfile ? { credentialProfile } : {}),
|
|
211
|
+
});
|
|
212
|
+
break;
|
|
133
213
|
}
|
|
134
|
-
const requestedEffort = entry.effort ?? null;
|
|
135
|
-
// An EXPLICIT panel entry is a precise owner statement — an unadvertised
|
|
136
|
-
// level stays a hard, typed refusal (never forwarded to die natively).
|
|
137
|
-
const refusal = reviewerEffortRefusal(entry.harness, requestedEffort, manifest.capabilities, requestedModel);
|
|
138
|
-
if (refusal)
|
|
139
|
-
throw new HarnessUnavailableError(refusal);
|
|
140
|
-
specs.push({
|
|
141
|
-
adapter,
|
|
142
|
-
providerFamily: manifest.provider_family,
|
|
143
|
-
requestedModel,
|
|
144
|
-
requestedEffort,
|
|
145
|
-
authPreference,
|
|
146
|
-
});
|
|
147
214
|
}
|
|
148
215
|
}
|
|
149
216
|
finally {
|
|
@@ -166,75 +233,150 @@ export async function resolveAutoReviewerPanel(deps, overrides = {}) {
|
|
|
166
233
|
const seen = new Set();
|
|
167
234
|
const reviewHome = new WorkspaceManager(cwd).readOnlyHomeEnv();
|
|
168
235
|
try {
|
|
169
|
-
for (const adapter of registry.values()) {
|
|
236
|
+
familyLoop: for (const adapter of registry.values()) {
|
|
170
237
|
let m = null;
|
|
171
238
|
try {
|
|
172
239
|
m = await adapter.discover();
|
|
173
240
|
}
|
|
174
|
-
catch {
|
|
241
|
+
catch (error) {
|
|
242
|
+
discloseAutoSkip(deps, adapter.id, `discovery unavailable: ${safeErrorMessage(error)}`);
|
|
175
243
|
continue;
|
|
176
244
|
}
|
|
177
|
-
if (!m
|
|
245
|
+
if (!m) {
|
|
246
|
+
discloseAutoSkip(deps, adapter.id, "discovery returned no manifest");
|
|
178
247
|
continue;
|
|
179
|
-
// Per-harness settings gate reviewers before doctor/model probes: a disabled
|
|
180
|
-
// harness must not spend auth/API-key readiness checks.
|
|
181
|
-
if (harnessSettings[adapter.id]?.enabled === false)
|
|
182
|
-
continue;
|
|
183
|
-
const authPreference = deps.authPreferenceFor(adapter.id);
|
|
184
|
-
let report = null;
|
|
185
|
-
try {
|
|
186
|
-
report = await adapter.doctor({ cwd, env: reviewHome.env, authPreference });
|
|
187
248
|
}
|
|
188
|
-
|
|
249
|
+
if (m.kind === "fake") {
|
|
250
|
+
discloseAutoSkip(deps, adapter.id, "fake harness");
|
|
189
251
|
continue;
|
|
190
252
|
}
|
|
191
|
-
if (
|
|
192
|
-
continue; // reviewer eligibility needs scoped doctor-OK.
|
|
193
|
-
if (!report.enabled_intents.includes("review"))
|
|
253
|
+
if (seen.has(m.provider_family))
|
|
194
254
|
continue;
|
|
195
|
-
|
|
255
|
+
// Per-harness settings gate reviewers before doctor/model probes: a disabled
|
|
256
|
+
// harness must not spend auth/API-key readiness checks.
|
|
257
|
+
if (harnessSettings[adapter.id]?.enabled === false) {
|
|
258
|
+
discloseAutoSkip(deps, adapter.id, "disabled in settings");
|
|
196
259
|
continue;
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
// (accepted_model_arg) on CLIs that never echo their model.
|
|
260
|
+
}
|
|
261
|
+
const authPreference = deps.authPreferenceFor(adapter.id);
|
|
200
262
|
const requestedModel = overrides.reviewerModels?.[m.provider_family] ??
|
|
201
263
|
harnessSettings[adapter.id]?.default_model ??
|
|
202
264
|
null;
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
265
|
+
let credentialProfile = null;
|
|
266
|
+
const excludedProfileIds = new Set();
|
|
267
|
+
for (;;) {
|
|
268
|
+
if (deps.resolveReviewerProfile) {
|
|
269
|
+
try {
|
|
270
|
+
credentialProfile = await deps.resolveReviewerProfile({
|
|
271
|
+
harnessId: adapter.id,
|
|
272
|
+
model: requestedModel,
|
|
273
|
+
authPreference,
|
|
274
|
+
credentialProfileId: null,
|
|
275
|
+
...(excludedProfileIds.size > 0 ? { excludedProfileIds } : {}),
|
|
276
|
+
});
|
|
277
|
+
}
|
|
278
|
+
catch (error) {
|
|
279
|
+
// Automatic panels disclose unavailable families by omission, while
|
|
280
|
+
// keeping the reason in the existing ignored-setting stream instead
|
|
281
|
+
// of inventing a second reviewer ledger.
|
|
282
|
+
discloseAutoSkip(deps, adapter.id, safeErrorMessage(error));
|
|
283
|
+
continue familyLoop;
|
|
284
|
+
}
|
|
213
285
|
}
|
|
286
|
+
let report = null;
|
|
287
|
+
if (credentialProfile) {
|
|
288
|
+
report = ConformanceReport.parse({
|
|
289
|
+
harness_id: adapter.id,
|
|
290
|
+
status: "ok",
|
|
291
|
+
enabled_intents: ["review"],
|
|
292
|
+
});
|
|
293
|
+
}
|
|
294
|
+
else
|
|
295
|
+
try {
|
|
296
|
+
report = await adapter.doctor({ cwd, env: reviewHome.env, authPreference });
|
|
297
|
+
}
|
|
298
|
+
catch (error) {
|
|
299
|
+
discloseAutoSkip(deps, adapter.id, `doctor unavailable: ${safeErrorMessage(error)}`);
|
|
300
|
+
continue familyLoop;
|
|
301
|
+
}
|
|
302
|
+
if (report.status !== "ok") {
|
|
303
|
+
discloseAutoSkip(deps, adapter.id, `doctor status '${report.status}'`);
|
|
304
|
+
continue familyLoop;
|
|
305
|
+
}
|
|
306
|
+
if (!report.enabled_intents.includes("review")) {
|
|
307
|
+
discloseAutoSkip(deps, adapter.id, "review intent unavailable");
|
|
308
|
+
continue familyLoop;
|
|
309
|
+
}
|
|
310
|
+
if (!m.capabilities.review || !m.access_profiles_supported.includes("readonly")) {
|
|
311
|
+
discloseAutoSkip(deps, adapter.id, "readonly review capability unavailable");
|
|
312
|
+
continue familyLoop;
|
|
313
|
+
}
|
|
314
|
+
// STRICT: the auto panel applies the SAME model truth gate as the
|
|
315
|
+
// explicit panel — a doomed reviewer model is refused here, never
|
|
316
|
+
// forwarded to die as an opaque native error mid-review.
|
|
317
|
+
if (requestedModel) {
|
|
318
|
+
const inventory = typeof adapter.models === "function"
|
|
319
|
+
? await readAutoModelInventory(adapter, {
|
|
320
|
+
cwd,
|
|
321
|
+
env: reviewHome.env,
|
|
322
|
+
authPreference,
|
|
323
|
+
...(credentialProfile ? { credentialProfile } : {}),
|
|
324
|
+
})
|
|
325
|
+
: (() => {
|
|
326
|
+
const ids = knownModelIdsForRoute(m.capabilities.known_models, credentialProfile
|
|
327
|
+
? credentialProfileAuthRoute(credentialProfile)
|
|
328
|
+
: estimateEffectiveAuthRoute(authPreference, report.auth_sources));
|
|
329
|
+
return ids.length > 0
|
|
330
|
+
? {
|
|
331
|
+
status: "available",
|
|
332
|
+
ids: new Set(ids),
|
|
333
|
+
source: "manifest",
|
|
334
|
+
}
|
|
335
|
+
: {
|
|
336
|
+
status: "unknown",
|
|
337
|
+
reason: "manifest model inventory unavailable",
|
|
338
|
+
};
|
|
339
|
+
})();
|
|
340
|
+
if (inventory.status === "unknown") {
|
|
341
|
+
discloseAutoSkip(deps, adapter.id, inventory.reason);
|
|
342
|
+
continue familyLoop;
|
|
343
|
+
}
|
|
344
|
+
const check = validateModel(requestedModel, [...inventory.ids], inventory.source);
|
|
345
|
+
if (check.status !== "ok") {
|
|
346
|
+
if (credentialProfile && deps.resolveReviewerProfile) {
|
|
347
|
+
excludedProfileIds.add(credentialProfile.profile_id);
|
|
348
|
+
continue;
|
|
349
|
+
}
|
|
350
|
+
discloseAutoSkip(deps, adapter.id, `requested model '${requestedModel}' is unavailable: ${check.message}`);
|
|
351
|
+
continue familyLoop;
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
// DISCLOSE-AND-DROP, deliberately weaker than the model gate above: the
|
|
355
|
+
// per-family `reviewerEfforts` map also rides stored replay surfaces
|
|
356
|
+
// (Exact Retry params, `ControlRunAgainDraft.request`), so a map recorded
|
|
357
|
+
// before a reviewer/catalog change must not hard-fail a replay that used
|
|
358
|
+
// to run. A fresh request and a replayed draft are indistinguishable at
|
|
359
|
+
// this layer, so the disclosed drop applies everywhere — the honest
|
|
360
|
+
// middle: the panel still reviews, at the reviewer's default effort, and
|
|
361
|
+
// the drop is disclosed instead of a typed refusal killing the run.
|
|
362
|
+
// (Explicit `reviewerPanel[].effort` entries above stay hard refusals.)
|
|
363
|
+
let requestedEffort = overrides.reviewerEfforts?.[m.provider_family] ?? null;
|
|
364
|
+
const dropped = reviewerEffortRefusal(adapter.id, requestedEffort, m.capabilities, requestedModel);
|
|
365
|
+
if (dropped) {
|
|
366
|
+
deps.onIgnoredSetting?.(`reviewer effort dropped: ${dropped}`);
|
|
367
|
+
requestedEffort = null;
|
|
368
|
+
}
|
|
369
|
+
seen.add(m.provider_family);
|
|
370
|
+
specs.push({
|
|
371
|
+
adapter,
|
|
372
|
+
providerFamily: m.provider_family,
|
|
373
|
+
requestedModel,
|
|
374
|
+
requestedEffort,
|
|
375
|
+
authPreference,
|
|
376
|
+
...(deps.resolveReviewerProfile ? { credentialProfile } : {}),
|
|
377
|
+
});
|
|
378
|
+
break;
|
|
214
379
|
}
|
|
215
|
-
// DISCLOSE-AND-DROP, deliberately weaker than the model gate above: the
|
|
216
|
-
// per-family `reviewerEfforts` map also rides stored replay surfaces
|
|
217
|
-
// (Exact Retry params, `ControlRunAgainDraft.request`), so a map recorded
|
|
218
|
-
// before a reviewer/catalog change must not hard-fail a replay that used
|
|
219
|
-
// to run. A fresh request and a replayed draft are indistinguishable at
|
|
220
|
-
// this layer, so the disclosed drop applies everywhere — the honest
|
|
221
|
-
// middle: the panel still reviews, at the reviewer's default effort, and
|
|
222
|
-
// the drop is disclosed instead of a typed refusal killing the run.
|
|
223
|
-
// (Explicit `reviewerPanel[].effort` entries above stay hard refusals.)
|
|
224
|
-
let requestedEffort = overrides.reviewerEfforts?.[m.provider_family] ?? null;
|
|
225
|
-
const dropped = reviewerEffortRefusal(adapter.id, requestedEffort, m.capabilities, requestedModel);
|
|
226
|
-
if (dropped) {
|
|
227
|
-
deps.onIgnoredSetting?.(`reviewer effort dropped: ${dropped}`);
|
|
228
|
-
requestedEffort = null;
|
|
229
|
-
}
|
|
230
|
-
seen.add(m.provider_family);
|
|
231
|
-
specs.push({
|
|
232
|
-
adapter,
|
|
233
|
-
providerFamily: m.provider_family,
|
|
234
|
-
requestedModel,
|
|
235
|
-
requestedEffort,
|
|
236
|
-
authPreference,
|
|
237
|
-
});
|
|
238
380
|
if (specs.length >= 2)
|
|
239
381
|
break;
|
|
240
382
|
}
|
|
@@ -255,6 +397,7 @@ async function listModelIdsWithRetry(listModels, input) {
|
|
|
255
397
|
cwd: input.cwd,
|
|
256
398
|
env: input.env(),
|
|
257
399
|
authPreference: input.authPreference,
|
|
400
|
+
...(input.credentialProfile ? { credentialProfile: input.credentialProfile } : {}),
|
|
258
401
|
});
|
|
259
402
|
if (models.length === 0) {
|
|
260
403
|
throw new Error("model inventory was empty");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reviewerPanel.js","sourceRoot":"","sources":["../src/reviewerPanel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reviewerPanel.js","sourceRoot":"","sources":["../src/reviewerPanel.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@claudexor/orchestrator",
|
|
3
|
-
"version": "3.8.
|
|
3
|
+
"version": "3.8.3",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Hub that composes all subsystems and implements the three canonical intents (ask, plan, agent) with their strategy flags (ask deep-scan, plan solo/council, agent best-of-N race, attempt caps, until-clean, create, delegate).",
|
|
6
6
|
"type": "module",
|
|
@@ -17,24 +17,24 @@
|
|
|
17
17
|
],
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"ajv": "^8.20.0",
|
|
20
|
-
"@claudexor/arbitration": "3.8.
|
|
21
|
-
"@claudexor/artifact-store": "3.8.
|
|
22
|
-
"@claudexor/budget": "3.8.
|
|
23
|
-
"@claudexor/
|
|
24
|
-
"@claudexor/
|
|
25
|
-
"@claudexor/
|
|
26
|
-
"@claudexor/
|
|
27
|
-
"@claudexor/gateway": "3.8.
|
|
28
|
-
"@claudexor/delivery": "3.8.
|
|
29
|
-
"@claudexor/policy": "3.8.
|
|
30
|
-
"@claudexor/review": "3.8.
|
|
31
|
-
"@claudexor/schema": "3.8.
|
|
32
|
-
"@claudexor/
|
|
33
|
-
"@claudexor/
|
|
34
|
-
"@claudexor/workspace": "3.8.
|
|
20
|
+
"@claudexor/arbitration": "3.8.3",
|
|
21
|
+
"@claudexor/artifact-store": "3.8.3",
|
|
22
|
+
"@claudexor/budget": "3.8.3",
|
|
23
|
+
"@claudexor/context": "3.8.3",
|
|
24
|
+
"@claudexor/config": "3.8.3",
|
|
25
|
+
"@claudexor/core": "3.8.3",
|
|
26
|
+
"@claudexor/event-log": "3.8.3",
|
|
27
|
+
"@claudexor/gateway": "3.8.3",
|
|
28
|
+
"@claudexor/delivery": "3.8.3",
|
|
29
|
+
"@claudexor/policy": "3.8.3",
|
|
30
|
+
"@claudexor/review": "3.8.3",
|
|
31
|
+
"@claudexor/schema": "3.8.3",
|
|
32
|
+
"@claudexor/synthesis": "3.8.3",
|
|
33
|
+
"@claudexor/util": "3.8.3",
|
|
34
|
+
"@claudexor/workspace": "3.8.3"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@claudexor/harness-fake": "3.8.
|
|
37
|
+
"@claudexor/harness-fake": "3.8.3"
|
|
38
38
|
},
|
|
39
39
|
"repository": {
|
|
40
40
|
"type": "git",
|