nexus-agents 8.89.4 → 8.91.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.
- package/dist/{ast-rule-runner-NOWNF5QY.js → ast-rule-runner-SD665GB7.js} +3 -3
- package/dist/{child-mcp-config-UBKF4SOL.js → child-mcp-config-BG3QNALD.js} +2 -2
- package/dist/{chunk-SXS2YQUK.js → chunk-2N7XWZPW.js} +4 -4
- package/dist/{chunk-4W4S6OBP.js → chunk-4KMNLWAC.js} +4 -4
- package/dist/{chunk-DGW6C2PT.js → chunk-5GI6Z5VE.js} +5 -4
- package/dist/chunk-5GI6Z5VE.js.map +1 -0
- package/dist/{chunk-U2C6V65K.js → chunk-C3HMZJ3R.js} +2 -2
- package/dist/{chunk-YYVBEHM3.js → chunk-C6Q2NUIH.js} +4 -4
- package/dist/{chunk-NRSAOTT7.js → chunk-ERTDJU7Y.js} +26 -12
- package/dist/chunk-ERTDJU7Y.js.map +1 -0
- package/dist/{chunk-P2RI4DGX.js → chunk-F2H3MCEV.js} +31 -8
- package/dist/{chunk-P2RI4DGX.js.map → chunk-F2H3MCEV.js.map} +1 -1
- package/dist/{chunk-XM2GVJPE.js → chunk-FPX55ON5.js} +7 -7
- package/dist/{chunk-6YQ55DOE.js → chunk-HBXAYO3C.js} +5 -5
- package/dist/{chunk-H7PL2D5A.js → chunk-HD3FTCV4.js} +5 -5
- package/dist/{chunk-6ZPHMRJQ.js → chunk-HPE3UQLT.js} +3 -3
- package/dist/{chunk-GPEGBNGB.js → chunk-HUCILYVO.js} +2 -2
- package/dist/{chunk-RQBI56JN.js → chunk-IDASIJE6.js} +2 -2
- package/dist/{chunk-3E4BZR3V.js → chunk-JWHIFEI3.js} +2 -2
- package/dist/{chunk-UR2KFP6P.js → chunk-KCWEMSU2.js} +2 -2
- package/dist/{chunk-SFHIXQGK.js → chunk-NFP7WQ22.js} +2 -2
- package/dist/{chunk-K6IVHUEK.js → chunk-NMJDOOYZ.js} +3 -3
- package/dist/{chunk-YBW45NIZ.js → chunk-NMZ5ZKEO.js} +2 -2
- package/dist/{chunk-YT7EP2B6.js → chunk-O3MSZUQM.js} +2 -2
- package/dist/{chunk-5JZ635RM.js → chunk-OJM75DDY.js} +3 -3
- package/dist/{chunk-GLG667IV.js → chunk-QCWY3GTZ.js} +2 -2
- package/dist/{chunk-YG3UYPKL.js → chunk-RMDG3OFS.js} +2 -2
- package/dist/{chunk-F3PIVN3B.js → chunk-S6FK47MZ.js} +2 -2
- package/dist/{chunk-LBYA22G5.js → chunk-SJH5U5XT.js} +10 -10
- package/dist/{chunk-2C5ABWLK.js → chunk-SMKBETIX.js} +2 -2
- package/dist/{chunk-NBVYSGSS.js → chunk-UWYNIMDF.js} +99 -63
- package/dist/{chunk-NBVYSGSS.js.map → chunk-UWYNIMDF.js.map} +1 -1
- package/dist/{chunk-5XCRXV43.js → chunk-VI5TF3KF.js} +2 -2
- package/dist/{chunk-P5ND7MWI.js → chunk-VIDSDHSQ.js} +8 -8
- package/dist/{chunk-LVL6WCWK.js → chunk-VLBXRQIA.js} +2 -2
- package/dist/{chunk-PEN5XFMP.js → chunk-WDGEJIWW.js} +2 -2
- package/dist/{chunk-XS3IJG4V.js → chunk-XT7VZSS3.js} +5 -3
- package/dist/chunk-XT7VZSS3.js.map +1 -0
- package/dist/{chunk-R57JPKHJ.js → chunk-ZP7LYABJ.js} +2 -2
- package/dist/{chunk-TFZDHQ45.js → chunk-ZVHJMROO.js} +4 -4
- package/dist/{cli-circuit-breaker-IFVKXCHQ.js → cli-circuit-breaker-GOH6U32K.js} +3 -3
- package/dist/cli.d.ts +1 -1
- package/dist/cli.js +88 -84
- package/dist/cli.js.map +1 -1
- package/dist/{composite-router-7LFS4CMF.js → composite-router-RMEHBA3J.js} +2 -2
- package/dist/{consensus-vote-SA2KVDQA.js → consensus-vote-BO7S3XSQ.js} +16 -16
- package/dist/{consensus-vote-types-DhmacUE7.d.ts → consensus-vote-types-BdptpuQK.d.ts} +6 -0
- package/dist/{context-retriever-V7OWZW7R.js → context-retriever-TWAN22PW.js} +8 -8
- package/dist/{doctor-deep-GJPTXS2N.js → doctor-deep-HRZ77NYS.js} +3 -3
- package/dist/{doctor-live-ET5O7O2D.js → doctor-live-VGOABDSJ.js} +10 -10
- package/dist/{expert-bridge-G656VGZG.js → expert-bridge-PFR7ZNWK.js} +4 -4
- package/dist/{factory-BQBFECEV.js → factory-DJPYG3WR.js} +9 -9
- package/dist/{factory-N34PTEMW.js → factory-JCVKAI7P.js} +5 -5
- package/dist/{improvement-review-YIXDCEX4.js → improvement-review-FXXRLLGX.js} +5 -5
- package/dist/index.d.ts +22 -2
- package/dist/index.js +30 -30
- package/dist/{init-opencode-33EU3PD6.js → init-opencode-KTIHOYIU.js} +5 -5
- package/dist/issue-triage-OCTW33O3.js +16 -0
- package/dist/{pr-reviewer-helpers-ZDAJARQ7.js → pr-reviewer-helpers-V67TZHNM.js} +4 -4
- package/dist/{registry-command-AB7KP7DK.js → registry-command-43IZQOAP.js} +2 -2
- package/dist/{repo-security-plan-YV3ZFKGO.js → repo-security-plan-OXMSNBOS.js} +3 -3
- package/dist/{research-helpers-synthesize-EOHUBGH3.js → research-helpers-synthesize-IBBRMZEY.js} +4 -4
- package/dist/{routing-memory-34JWGSAI.js → routing-memory-S3H3D6Z2.js} +2 -2
- package/dist/{session-memory-QGIJCM7P.js → session-memory-UO42CU2H.js} +3 -3
- package/dist/{setup-config-3KBMBPCN.js → setup-config-RGTKEVTD.js} +3 -3
- package/dist/{setup-custom-api-652FK232.js → setup-custom-api-PQ3PR2RR.js} +4 -4
- package/dist/setup-data-dir-BGG6ETH6.js +32 -0
- package/dist/{tool-memory-SPPCBLKQ.js → tool-memory-ZMLCOQH6.js} +5 -5
- package/dist/{unified-registry-ZOLSOVYN.js → unified-registry-HWBSGSOM.js} +10 -10
- package/dist/{weather-report-OHHDUNX3.js → weather-report-MZCA7Y6K.js} +2 -2
- package/package.json +1 -1
- package/dist/chunk-DGW6C2PT.js.map +0 -1
- package/dist/chunk-NRSAOTT7.js.map +0 -1
- package/dist/chunk-XS3IJG4V.js.map +0 -1
- package/dist/issue-triage-URFEVDIX.js +0 -16
- package/dist/setup-data-dir-XJMN4ALO.js +0 -32
- /package/dist/{ast-rule-runner-NOWNF5QY.js.map → ast-rule-runner-SD665GB7.js.map} +0 -0
- /package/dist/{child-mcp-config-UBKF4SOL.js.map → child-mcp-config-BG3QNALD.js.map} +0 -0
- /package/dist/{chunk-SXS2YQUK.js.map → chunk-2N7XWZPW.js.map} +0 -0
- /package/dist/{chunk-4W4S6OBP.js.map → chunk-4KMNLWAC.js.map} +0 -0
- /package/dist/{chunk-U2C6V65K.js.map → chunk-C3HMZJ3R.js.map} +0 -0
- /package/dist/{chunk-YYVBEHM3.js.map → chunk-C6Q2NUIH.js.map} +0 -0
- /package/dist/{chunk-XM2GVJPE.js.map → chunk-FPX55ON5.js.map} +0 -0
- /package/dist/{chunk-6YQ55DOE.js.map → chunk-HBXAYO3C.js.map} +0 -0
- /package/dist/{chunk-H7PL2D5A.js.map → chunk-HD3FTCV4.js.map} +0 -0
- /package/dist/{chunk-6ZPHMRJQ.js.map → chunk-HPE3UQLT.js.map} +0 -0
- /package/dist/{chunk-GPEGBNGB.js.map → chunk-HUCILYVO.js.map} +0 -0
- /package/dist/{chunk-RQBI56JN.js.map → chunk-IDASIJE6.js.map} +0 -0
- /package/dist/{chunk-3E4BZR3V.js.map → chunk-JWHIFEI3.js.map} +0 -0
- /package/dist/{chunk-UR2KFP6P.js.map → chunk-KCWEMSU2.js.map} +0 -0
- /package/dist/{chunk-SFHIXQGK.js.map → chunk-NFP7WQ22.js.map} +0 -0
- /package/dist/{chunk-K6IVHUEK.js.map → chunk-NMJDOOYZ.js.map} +0 -0
- /package/dist/{chunk-YBW45NIZ.js.map → chunk-NMZ5ZKEO.js.map} +0 -0
- /package/dist/{chunk-YT7EP2B6.js.map → chunk-O3MSZUQM.js.map} +0 -0
- /package/dist/{chunk-5JZ635RM.js.map → chunk-OJM75DDY.js.map} +0 -0
- /package/dist/{chunk-GLG667IV.js.map → chunk-QCWY3GTZ.js.map} +0 -0
- /package/dist/{chunk-YG3UYPKL.js.map → chunk-RMDG3OFS.js.map} +0 -0
- /package/dist/{chunk-F3PIVN3B.js.map → chunk-S6FK47MZ.js.map} +0 -0
- /package/dist/{chunk-LBYA22G5.js.map → chunk-SJH5U5XT.js.map} +0 -0
- /package/dist/{chunk-2C5ABWLK.js.map → chunk-SMKBETIX.js.map} +0 -0
- /package/dist/{chunk-5XCRXV43.js.map → chunk-VI5TF3KF.js.map} +0 -0
- /package/dist/{chunk-P5ND7MWI.js.map → chunk-VIDSDHSQ.js.map} +0 -0
- /package/dist/{chunk-LVL6WCWK.js.map → chunk-VLBXRQIA.js.map} +0 -0
- /package/dist/{chunk-PEN5XFMP.js.map → chunk-WDGEJIWW.js.map} +0 -0
- /package/dist/{chunk-R57JPKHJ.js.map → chunk-ZP7LYABJ.js.map} +0 -0
- /package/dist/{chunk-TFZDHQ45.js.map → chunk-ZVHJMROO.js.map} +0 -0
- /package/dist/{cli-circuit-breaker-IFVKXCHQ.js.map → cli-circuit-breaker-GOH6U32K.js.map} +0 -0
- /package/dist/{composite-router-7LFS4CMF.js.map → composite-router-RMEHBA3J.js.map} +0 -0
- /package/dist/{consensus-vote-SA2KVDQA.js.map → consensus-vote-BO7S3XSQ.js.map} +0 -0
- /package/dist/{context-retriever-V7OWZW7R.js.map → context-retriever-TWAN22PW.js.map} +0 -0
- /package/dist/{doctor-deep-GJPTXS2N.js.map → doctor-deep-HRZ77NYS.js.map} +0 -0
- /package/dist/{doctor-live-ET5O7O2D.js.map → doctor-live-VGOABDSJ.js.map} +0 -0
- /package/dist/{expert-bridge-G656VGZG.js.map → expert-bridge-PFR7ZNWK.js.map} +0 -0
- /package/dist/{factory-BQBFECEV.js.map → factory-DJPYG3WR.js.map} +0 -0
- /package/dist/{factory-N34PTEMW.js.map → factory-JCVKAI7P.js.map} +0 -0
- /package/dist/{improvement-review-YIXDCEX4.js.map → improvement-review-FXXRLLGX.js.map} +0 -0
- /package/dist/{init-opencode-33EU3PD6.js.map → init-opencode-KTIHOYIU.js.map} +0 -0
- /package/dist/{issue-triage-URFEVDIX.js.map → issue-triage-OCTW33O3.js.map} +0 -0
- /package/dist/{pr-reviewer-helpers-ZDAJARQ7.js.map → pr-reviewer-helpers-V67TZHNM.js.map} +0 -0
- /package/dist/{registry-command-AB7KP7DK.js.map → registry-command-43IZQOAP.js.map} +0 -0
- /package/dist/{repo-security-plan-YV3ZFKGO.js.map → repo-security-plan-OXMSNBOS.js.map} +0 -0
- /package/dist/{research-helpers-synthesize-EOHUBGH3.js.map → research-helpers-synthesize-IBBRMZEY.js.map} +0 -0
- /package/dist/{routing-memory-34JWGSAI.js.map → routing-memory-S3H3D6Z2.js.map} +0 -0
- /package/dist/{session-memory-QGIJCM7P.js.map → session-memory-UO42CU2H.js.map} +0 -0
- /package/dist/{setup-config-3KBMBPCN.js.map → setup-config-RGTKEVTD.js.map} +0 -0
- /package/dist/{setup-custom-api-652FK232.js.map → setup-custom-api-PQ3PR2RR.js.map} +0 -0
- /package/dist/{setup-data-dir-XJMN4ALO.js.map → setup-data-dir-BGG6ETH6.js.map} +0 -0
- /package/dist/{tool-memory-SPPCBLKQ.js.map → tool-memory-ZMLCOQH6.js.map} +0 -0
- /package/dist/{unified-registry-ZOLSOVYN.js.map → unified-registry-HWBSGSOM.js.map} +0 -0
- /package/dist/{weather-report-OHHDUNX3.js.map → weather-report-MZCA7Y6K.js.map} +0 -0
|
@@ -9,8 +9,8 @@ import {
|
|
|
9
9
|
getBuiltInAstRulesPath,
|
|
10
10
|
loadRules,
|
|
11
11
|
runAstQaRules
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-O3MSZUQM.js";
|
|
13
|
+
import "./chunk-F2H3MCEV.js";
|
|
14
14
|
import "./chunk-UE7A2XHM.js";
|
|
15
15
|
import "./chunk-LWOX65CP.js";
|
|
16
16
|
import "./chunk-PX6F3LHL.js";
|
|
@@ -26,4 +26,4 @@ export {
|
|
|
26
26
|
loadRules,
|
|
27
27
|
runAstQaRules
|
|
28
28
|
};
|
|
29
|
-
//# sourceMappingURL=ast-rule-runner-
|
|
29
|
+
//# sourceMappingURL=ast-rule-runner-SD665GB7.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-OITVVSWO.js";
|
|
4
4
|
import {
|
|
5
5
|
createLogger
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-F2H3MCEV.js";
|
|
7
7
|
import "./chunk-UE7A2XHM.js";
|
|
8
8
|
import "./chunk-LWOX65CP.js";
|
|
9
9
|
import "./chunk-PX6F3LHL.js";
|
|
@@ -56,4 +56,4 @@ async function generateMcpConfig(options) {
|
|
|
56
56
|
export {
|
|
57
57
|
generateMcpConfig
|
|
58
58
|
};
|
|
59
|
-
//# sourceMappingURL=child-mcp-config-
|
|
59
|
+
//# sourceMappingURL=child-mcp-config-BG3QNALD.js.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
GitHubProvider,
|
|
3
3
|
ScmError
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-JWHIFEI3.js";
|
|
5
5
|
import {
|
|
6
6
|
resolveToken
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-HUCILYVO.js";
|
|
8
8
|
import {
|
|
9
9
|
err,
|
|
10
10
|
ok
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-F2H3MCEV.js";
|
|
12
12
|
|
|
13
13
|
// src/scm/factory.ts
|
|
14
14
|
async function createScmProvider(config) {
|
|
@@ -41,4 +41,4 @@ export {
|
|
|
41
41
|
createScmProvider,
|
|
42
42
|
createGitHubProvider
|
|
43
43
|
};
|
|
44
|
-
//# sourceMappingURL=chunk-
|
|
44
|
+
//# sourceMappingURL=chunk-2N7XWZPW.js.map
|
|
@@ -4,12 +4,12 @@ import {
|
|
|
4
4
|
planOptionalParams,
|
|
5
5
|
requireApiKey,
|
|
6
6
|
validateApiKeyPresence
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-VI5TF3KF.js";
|
|
8
8
|
import {
|
|
9
9
|
assertCustomApiHostResolvesPublic,
|
|
10
10
|
hostnameOf,
|
|
11
11
|
redactApiKey
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-KCWEMSU2.js";
|
|
13
13
|
import {
|
|
14
14
|
sanitizeErrorDetails
|
|
15
15
|
} from "./chunk-2NDA4DHW.js";
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
isEndpointArmId,
|
|
32
32
|
ok,
|
|
33
33
|
recordUsageEvent
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-F2H3MCEV.js";
|
|
35
35
|
|
|
36
36
|
// src/adapters/openai-types.ts
|
|
37
37
|
var OPENAI_MODELS = {
|
|
@@ -886,4 +886,4 @@ export {
|
|
|
886
886
|
discoverModels,
|
|
887
887
|
buildOpenAICompatAdapters
|
|
888
888
|
};
|
|
889
|
-
//# sourceMappingURL=chunk-
|
|
889
|
+
//# sourceMappingURL=chunk-4KMNLWAC.js.map
|
|
@@ -6,8 +6,9 @@ import {
|
|
|
6
6
|
ApiArmIdSchema,
|
|
7
7
|
TASK_CATEGORIES,
|
|
8
8
|
getAdaptiveBonus,
|
|
9
|
-
getOutcomeStore
|
|
10
|
-
|
|
9
|
+
getOutcomeStore,
|
|
10
|
+
hasMeasuredCategory
|
|
11
|
+
} from "./chunk-F2H3MCEV.js";
|
|
11
12
|
|
|
12
13
|
// src/cli/doctor-deep.ts
|
|
13
14
|
var CLI_NAMES = ["claude", "gemini", "codex", "opencode"];
|
|
@@ -45,7 +46,7 @@ function checkDataSufficiency() {
|
|
|
45
46
|
const categoriesWithData = /* @__PURE__ */ new Set();
|
|
46
47
|
const allOutcomes = store.query();
|
|
47
48
|
for (const o of allOutcomes) {
|
|
48
|
-
categoriesWithData.add(o.category);
|
|
49
|
+
if (hasMeasuredCategory(o)) categoriesWithData.add(o.category);
|
|
49
50
|
}
|
|
50
51
|
const missing = TASK_CATEGORIES.filter((c) => !categoriesWithData.has(c));
|
|
51
52
|
return { cliStatus, missingCategories: missing, coldStartThreshold: COLD_START_THRESHOLD };
|
|
@@ -145,4 +146,4 @@ export {
|
|
|
145
146
|
runDeepDiagnostics,
|
|
146
147
|
formatDeepDiagnostics
|
|
147
148
|
};
|
|
148
|
-
//# sourceMappingURL=chunk-
|
|
149
|
+
//# sourceMappingURL=chunk-5GI6Z5VE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/cli/doctor-deep.ts"],"sourcesContent":["/**\n * Deep diagnostics for the doctor command.\n *\n * Surfaces learning loop health, data sufficiency, routing convergence,\n * and memory system status. Opt-in via `--deep` flag.\n *\n * @module cli/doctor-deep\n * (Source: Issue #1031 — Enhanced doctor --deep diagnostics)\n */\n\nimport { getOutcomeStore } from '../orchestration/outcomes/outcome-store.js';\nimport { hasMeasuredCategory } from '../orchestration/outcomes/outcome-types.js';\nimport { TASK_CATEGORIES, type TaskCategory } from '../config/task-specialization-types.js';\nimport { getAdaptiveBonus } from '../mcp/tools/weather-report.js';\nimport { ApiArmIdSchema } from '../cli-adapters/types-core.js';\nimport { allOf, verdictOver } from '../utils/verdict-aggregation.js';\n\n// ============================================================================\n// Types\n// ============================================================================\n\n/** Per-CLI data sufficiency snapshot. */\nexport interface CliDataStatus {\n readonly cli: string;\n readonly taskCount: number;\n readonly aboveThreshold: boolean;\n}\n\n/** Deep diagnostics result. */\nexport interface DeepDiagnostics {\n readonly learningLoop: LearningLoopHealth;\n readonly dataSufficiency: DataSufficiency;\n readonly routingConvergence: RoutingConvergence;\n}\n\nexport interface LearningLoopHealth {\n readonly totalOutcomes: number;\n readonly latestTimestamp: string | null;\n readonly activeBonuses: number;\n readonly totalBonusPairs: number;\n}\n\nexport interface DataSufficiency {\n readonly cliStatus: readonly CliDataStatus[];\n readonly missingCategories: readonly string[];\n readonly coldStartThreshold: number;\n}\n\n/**\n * One arm's success rate. An arm with no outcome rows is `unmeasured` — not a\n * 0% rate, which would claim every attempt failed (#6557).\n */\nexport type ArmSuccessRate =\n | { readonly status: 'measured'; readonly rate: number; readonly sampleCount: number }\n | { readonly status: 'unmeasured' };\n\nexport interface RoutingConvergence {\n /**\n * Mean success rate over MEASURED arms only. `'unmeasured'` when no arm has\n * a row — the empty case, which is neither 0 nor NaN (#6557).\n */\n readonly avgSuccessRate: number | 'unmeasured';\n /** Every routed arm (CLI slots and `api:*` arms), measured or not. */\n readonly armSuccessRates: ReadonlyMap<string, ArmSuccessRate>;\n /** Number of arms with at least one outcome row: the average's divisor. */\n readonly measuredArmCount: number;\n /** Every measured arm has cleared the cold-start threshold; false when none is measured. */\n readonly converged: boolean;\n}\n\n// ============================================================================\n// Constants\n// ============================================================================\n\nconst CLI_NAMES = ['claude', 'gemini', 'codex', 'opencode'] as const;\nconst COLD_START_THRESHOLD = 3;\n\n/**\n * CLI slots plus API arms: every `cli` an attributed outcome row can carry.\n * Routed rows record the arm that ran (`api:anthropic`), not its slot, since\n * #6554. `unknown` is deliberately absent: an unattributed row is no arm's\n * measurement.\n */\nconst ROUTED_ARMS: readonly string[] = [...CLI_NAMES, ...ApiArmIdSchema.options];\n\n// ============================================================================\n// Diagnostics\n// ============================================================================\n\n/** Check learning loop health: outcome count, latest timestamp, bonuses. */\nfunction checkLearningLoop(): LearningLoopHealth {\n const store = getOutcomeStore();\n const outcomes = store.query();\n const latestTimestamp =\n outcomes.length > 0 ? (outcomes[outcomes.length - 1]?.timestamp ?? null) : null;\n\n let activeBonuses = 0;\n const totalPairs = CLI_NAMES.length * TASK_CATEGORIES.length;\n for (const cli of CLI_NAMES) {\n for (const cat of TASK_CATEGORIES) {\n if (getAdaptiveBonus(cli, cat) !== 0) activeBonuses++;\n }\n }\n\n return {\n totalOutcomes: outcomes.length,\n latestTimestamp,\n activeBonuses,\n totalBonusPairs: totalPairs,\n };\n}\n\n/** Check per-CLI data sufficiency against cold-start threshold. */\nfunction checkDataSufficiency(): DataSufficiency {\n const store = getOutcomeStore();\n const cliStatus: CliDataStatus[] = [];\n\n for (const cli of CLI_NAMES) {\n const outcomes = store.query({ cli });\n cliStatus.push({\n cli,\n taskCount: outcomes.length,\n aboveThreshold: outcomes.length >= COLD_START_THRESHOLD,\n });\n }\n\n const categoriesWithData = new Set<TaskCategory>();\n const allOutcomes = store.query();\n for (const o of allOutcomes) {\n // A defaulted category is not coverage of that category (#6549).\n if (hasMeasuredCategory(o)) categoriesWithData.add(o.category);\n }\n const missing = TASK_CATEGORIES.filter((c) => !categoriesWithData.has(c));\n\n return { cliStatus, missingCategories: missing, coldStartThreshold: COLD_START_THRESHOLD };\n}\n\n/** Round a rate to three decimals for display-stable output. */\nfunction roundRate(rate: number): number {\n return Math.round(rate * 1000) / 1000;\n}\n\ninterface MeasuredArm {\n readonly rate: number;\n readonly sampleCount: number;\n}\n\n/** Tally rows per routed arm; rows carrying no routed arm (`unknown`) are skipped. */\nfunction tallyRowsByArm(): Map<string, { total: number; successes: number }> {\n const byArm = new Map<string, { total: number; successes: number }>();\n for (const o of getOutcomeStore().query()) {\n if (!ROUTED_ARMS.includes(o.cli)) continue;\n const tally = byArm.get(o.cli) ?? { total: 0, successes: 0 };\n tally.total++;\n if (o.success) tally.successes++;\n byArm.set(o.cli, tally);\n }\n return byArm;\n}\n\n/**\n * Check routing convergence from outcome success rates (#6557).\n *\n * Covers the arms rows actually carry, CLI and `api:*` alike. An arm with no\n * rows is `unmeasured` and stays out of the average, whose divisor is the\n * number of measured arms, never a fixed list.\n */\nfunction checkConvergence(): RoutingConvergence {\n const rowsByArm = tallyRowsByArm();\n const measured: MeasuredArm[] = [];\n const rates = new Map<string, ArmSuccessRate>();\n for (const arm of ROUTED_ARMS) {\n const tally = rowsByArm.get(arm);\n if (tally === undefined) {\n rates.set(arm, { status: 'unmeasured' });\n continue;\n }\n const rate = tally.successes / tally.total;\n measured.push({ rate, sampleCount: tally.total });\n rates.set(arm, { status: 'measured', rate: roundRate(rate), sampleCount: tally.total });\n }\n\n // Empty case named: with no measured arm there is no rate to average.\n const avgSuccessRate = verdictOver<MeasuredArm, number | 'unmeasured'>(\n measured,\n (arms) => roundRate(arms.reduce((sum, a) => sum + a.rate, 0) / arms.length),\n 'unmeasured'\n );\n // Nothing measured has not converged on anything.\n const converged = allOf(measured, (a) => a.sampleCount >= COLD_START_THRESHOLD, false);\n\n return {\n avgSuccessRate,\n armSuccessRates: rates,\n measuredArmCount: measured.length,\n converged,\n };\n}\n\n// ============================================================================\n// Public API\n// ============================================================================\n\n/** Run all deep diagnostics. */\nexport function runDeepDiagnostics(): DeepDiagnostics {\n return {\n learningLoop: checkLearningLoop(),\n dataSufficiency: checkDataSufficiency(),\n routingConvergence: checkConvergence(),\n };\n}\n\n/** Render convergence rates, naming unmeasured arms rather than showing them as 0%. */\nfunction formatConvergenceRates(rc: RoutingConvergence): string[] {\n const pct = (rate: number): string => `${(rate * 100).toFixed(1)}%`;\n if (rc.avgSuccessRate === 'unmeasured') {\n return [' Avg success rate: unmeasured (no arm has outcome rows)'];\n }\n const noun = rc.measuredArmCount === 1 ? 'arm' : 'arms';\n const lines = [\n ` Avg success rate: ${pct(rc.avgSuccessRate)} over ${String(rc.measuredArmCount)} measured ${noun}`,\n ];\n const unmeasured: string[] = [];\n for (const [arm, r] of rc.armSuccessRates) {\n if (r.status === 'unmeasured') unmeasured.push(arm);\n else lines.push(` ${arm}: ${pct(r.rate)} (${String(r.sampleCount)} runs)`);\n }\n if (unmeasured.length > 0) lines.push(` Unmeasured (no rows): ${unmeasured.join(', ')}`);\n return lines;\n}\n\n/** Format deep diagnostics for CLI output. */\nexport function formatDeepDiagnostics(diag: DeepDiagnostics): string {\n const lines: string[] = ['\\n=== Deep Diagnostics ===\\n'];\n\n // Learning Loop\n const ll = diag.learningLoop;\n lines.push('Learning Loop:');\n const outcomeIcon = ll.totalOutcomes > 0 ? '+' : '-';\n lines.push(` ${outcomeIcon} OutcomeStore: ${String(ll.totalOutcomes)} entries`);\n const bonusIcon = ll.activeBonuses > 0 ? '+' : '-';\n lines.push(\n ` ${bonusIcon} Adaptive bonuses: ${String(ll.activeBonuses)}/${String(ll.totalBonusPairs)} active`\n );\n\n // Data Sufficiency\n lines.push('\\nData Sufficiency:');\n for (const cs of diag.dataSufficiency.cliStatus) {\n const icon = cs.aboveThreshold ? '+' : '!';\n const label = cs.aboveThreshold ? 'above threshold' : 'below threshold';\n lines.push(` ${icon} ${cs.cli}: ${String(cs.taskCount)} tasks (${label})`);\n }\n if (diag.dataSufficiency.missingCategories.length > 0) {\n lines.push(` Missing categories: ${diag.dataSufficiency.missingCategories.join(', ')}`);\n }\n\n // Routing Convergence\n const rc = diag.routingConvergence;\n lines.push('\\nRouting Convergence:');\n lines.push(...formatConvergenceRates(rc));\n lines.push(` Converged: ${rc.converged ? 'yes' : 'no (still below cold-start threshold)'}`);\n\n return lines.join('\\n');\n}\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// src/version.ts
|
|
2
2
|
import semver from "semver";
|
|
3
|
-
var VERSION = true ? "8.
|
|
3
|
+
var VERSION = true ? "8.91.0" : "dev";
|
|
4
4
|
var NODE_ENGINE_RANGE = ">=22.5.0";
|
|
5
5
|
function isNodeVersionSupported(version) {
|
|
6
6
|
return semver.satisfies(version, NODE_ENGINE_RANGE);
|
|
@@ -11,4 +11,4 @@ export {
|
|
|
11
11
|
NODE_ENGINE_RANGE,
|
|
12
12
|
isNodeVersionSupported
|
|
13
13
|
};
|
|
14
|
-
//# sourceMappingURL=chunk-
|
|
14
|
+
//# sourceMappingURL=chunk-C3HMZJ3R.js.map
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createAutoAdapter
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-VIDSDHSQ.js";
|
|
4
4
|
import {
|
|
5
5
|
getDefaultCliCircuitBreakerRegistry,
|
|
6
6
|
mapModelErrorToCategory
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-SMKBETIX.js";
|
|
8
8
|
import {
|
|
9
9
|
CircularBuffer,
|
|
10
10
|
ConfigError,
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
resolveModelIdentitySync,
|
|
29
29
|
toRateLimitError,
|
|
30
30
|
warnIfGatewayCostUndeclared
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-F2H3MCEV.js";
|
|
32
32
|
|
|
33
33
|
// src/config/model-equivalence.ts
|
|
34
34
|
function canonicalModelKey(modelId) {
|
|
@@ -975,4 +975,4 @@ export {
|
|
|
975
975
|
getGlobalRegistry,
|
|
976
976
|
resetGlobalRegistry
|
|
977
977
|
};
|
|
978
|
-
//# sourceMappingURL=chunk-
|
|
978
|
+
//# sourceMappingURL=chunk-C6Q2NUIH.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isGatewayModelAdapter
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-4KMNLWAC.js";
|
|
4
4
|
import {
|
|
5
5
|
allOf
|
|
6
6
|
} from "./chunk-EZNIYU5T.js";
|
|
@@ -25,20 +25,20 @@ import {
|
|
|
25
25
|
toolSuccessStructured,
|
|
26
26
|
withProgressHeartbeat,
|
|
27
27
|
wrapToolWithTimeout
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-NMJDOOYZ.js";
|
|
29
29
|
import {
|
|
30
30
|
VERSION
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-C3HMZJ3R.js";
|
|
32
32
|
import {
|
|
33
33
|
UNRESOLVED_MODEL_ID,
|
|
34
34
|
assessPanelIndependence,
|
|
35
35
|
countDistinctModels,
|
|
36
36
|
createEvent,
|
|
37
37
|
getGlobalRegistry
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-C6Q2NUIH.js";
|
|
39
39
|
import {
|
|
40
40
|
getToolMemory
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-ZVHJMROO.js";
|
|
42
42
|
import {
|
|
43
43
|
authRemediation,
|
|
44
44
|
classifyExtractedError,
|
|
@@ -48,7 +48,7 @@ import {
|
|
|
48
48
|
isTimeoutText,
|
|
49
49
|
sleep,
|
|
50
50
|
withTimeout
|
|
51
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-VIDSDHSQ.js";
|
|
52
52
|
import {
|
|
53
53
|
sanitizeErrorDetails,
|
|
54
54
|
sanitizeOutput
|
|
@@ -88,7 +88,7 @@ import {
|
|
|
88
88
|
resolveClassGuardMs,
|
|
89
89
|
resolveVoteTimeout,
|
|
90
90
|
stepBus
|
|
91
|
-
} from "./chunk-
|
|
91
|
+
} from "./chunk-F2H3MCEV.js";
|
|
92
92
|
import {
|
|
93
93
|
ensureLearningDir,
|
|
94
94
|
getOutcomesFile
|
|
@@ -2146,6 +2146,11 @@ async function launchVotesWithOverallDeadline(input) {
|
|
|
2146
2146
|
return results;
|
|
2147
2147
|
}
|
|
2148
2148
|
|
|
2149
|
+
// src/cli/panel-workspace.ts
|
|
2150
|
+
function resolvePanelWorkspace(workspace) {
|
|
2151
|
+
return workspace ?? process.cwd();
|
|
2152
|
+
}
|
|
2153
|
+
|
|
2149
2154
|
// src/cli/voter-agents.ts
|
|
2150
2155
|
function computeOverallConsensusDeadlineMs(timeoutMs, maxRetries, roleCount, interDelayMs) {
|
|
2151
2156
|
const perVoteBudget = timeoutMs * (maxRetries + 1);
|
|
@@ -2353,7 +2358,7 @@ async function collectRealVotes(options) {
|
|
|
2353
2358
|
return createSimulatedVotes(roles, proposal, "No adapter available");
|
|
2354
2359
|
const roleAdapters = await assignPanelSeats(adapterResult.adapter, options, logger11);
|
|
2355
2360
|
warnIfCodexConcurrencyExceeded(roleAdapters, logger11);
|
|
2356
|
-
const workspace = options.workspace
|
|
2361
|
+
const workspace = resolvePanelWorkspace(options.workspace);
|
|
2357
2362
|
const voteOptions = resolveVoteExecution({ ...options, workspace });
|
|
2358
2363
|
const interDelay = options.interAgentDelayMs ?? DEFAULT_INTER_AGENT_DELAY_MS;
|
|
2359
2364
|
const launchInput = {
|
|
@@ -6258,6 +6263,9 @@ function disclosedProject(input, result) {
|
|
|
6258
6263
|
const { name, source } = result.project ?? resolveVoterProject({ input: input.project, cwd: process.cwd() });
|
|
6259
6264
|
return { name, source };
|
|
6260
6265
|
}
|
|
6266
|
+
function disclosedWorkspace(result) {
|
|
6267
|
+
return result.workspace === void 0 ? {} : { workspace: result.workspace };
|
|
6268
|
+
}
|
|
6261
6269
|
function buildResponse(input, result, costSummary, voteRecord) {
|
|
6262
6270
|
const proposalTruncated = input.proposal.length > 200 ? input.proposal.slice(0, 200) + "..." : input.proposal;
|
|
6263
6271
|
const errorCount = result.votes.filter((v) => v.source === "error").length;
|
|
@@ -6281,6 +6289,7 @@ function buildResponse(input, result, costSummary, voteRecord) {
|
|
|
6281
6289
|
durationMs: result.totalTimeMs,
|
|
6282
6290
|
simulateVotes: result.simulateVotes,
|
|
6283
6291
|
project: disclosedProject(input, result),
|
|
6292
|
+
...disclosedWorkspace(result),
|
|
6284
6293
|
// #6115: always present — a panel nobody answered is explicit zeros.
|
|
6285
6294
|
panelDiversity: panelDiversityOf(result.votes),
|
|
6286
6295
|
// #3991: surface the authentic-vote-record persistence outcome so a skipped
|
|
@@ -6435,7 +6444,7 @@ function logPartialProposal(bounded, log) {
|
|
|
6435
6444
|
}
|
|
6436
6445
|
async function runContrarianCheck(proposal, log, opts) {
|
|
6437
6446
|
try {
|
|
6438
|
-
const { executeExpert } = await import("./expert-bridge-
|
|
6447
|
+
const { executeExpert } = await import("./expert-bridge-PFR7ZNWK.js");
|
|
6439
6448
|
const bounded = boundArtifactForReview(proposal, CONTRARIAN_PROPOSAL_BUDGET, "proposal");
|
|
6440
6449
|
logPartialProposal(bounded, log);
|
|
6441
6450
|
const result = await executeExpert("architecture", buildContrarianPrompt(bounded, opts), {
|
|
@@ -9076,8 +9085,10 @@ function buildPolicyShortCircuitResult(args) {
|
|
|
9076
9085
|
}
|
|
9077
9086
|
async function executeVoting(input, logger11, opts) {
|
|
9078
9087
|
const project = opts?.project ?? resolveAndLogVoterProject(input.project, logger11);
|
|
9079
|
-
const
|
|
9088
|
+
const panelWorkspace = resolvePanelWorkspace(opts?.workspace);
|
|
9089
|
+
const result = await executeVotingInner(input, logger11, { ...opts, project, panelWorkspace });
|
|
9080
9090
|
result.project = project;
|
|
9091
|
+
if (!input.simulateVotes) result.workspace = panelWorkspace;
|
|
9081
9092
|
const correlationAlreadyRecorded = result.decision !== void 0;
|
|
9082
9093
|
const errorCount = result.votes.filter((v) => v.source === "error").length;
|
|
9083
9094
|
applyOptionGate(input, result);
|
|
@@ -9124,7 +9135,7 @@ async function executeVotingInner(input, logger11, opts) {
|
|
|
9124
9135
|
declaredOptions: input.options,
|
|
9125
9136
|
// #6110: every seat's system prompt names the caller's project.
|
|
9126
9137
|
project: opts.project.name,
|
|
9127
|
-
workspace: opts.
|
|
9138
|
+
workspace: opts.panelWorkspace,
|
|
9128
9139
|
workspaceSha: opts.workspaceSha,
|
|
9129
9140
|
signal: opts.signal,
|
|
9130
9141
|
onVoteCollected: opts.onVoteCollected
|
|
@@ -9506,6 +9517,9 @@ var CONSENSUS_VOTE_OUTPUT_SCHEMA = {
|
|
|
9506
9517
|
name: z16.string().max(200),
|
|
9507
9518
|
source: z16.enum(["input", "derived", "default"])
|
|
9508
9519
|
}).optional(),
|
|
9520
|
+
// #6258: the working directory the panel's seats were pointed at. Absent
|
|
9521
|
+
// when no live seat ran (simulated panel) and on the async envelope.
|
|
9522
|
+
workspace: z16.string().max(4096).optional(),
|
|
9509
9523
|
higherOrderMetadata: z16.object({
|
|
9510
9524
|
posteriorApproval: z16.number(),
|
|
9511
9525
|
posteriorRejection: z16.number(),
|
|
@@ -9703,4 +9717,4 @@ export {
|
|
|
9703
9717
|
CONSENSUS_VOTE_TOOL_SCHEMA,
|
|
9704
9718
|
registerConsensusVoteTool
|
|
9705
9719
|
};
|
|
9706
|
-
//# sourceMappingURL=chunk-
|
|
9720
|
+
//# sourceMappingURL=chunk-ERTDJU7Y.js.map
|