nexus-agents 2.159.0 → 2.160.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/{child-mcp-config-72S4OMRK.js → child-mcp-config-XEXFG3LA.js} +2 -2
- package/dist/{chunk-JEUWM2VZ.js → chunk-3QIXGEY7.js} +2 -2
- package/dist/{chunk-VOTYZUEG.js → chunk-4AXOISAP.js} +3 -3
- package/dist/{chunk-I3ROKMFF.js → chunk-5NVU25BA.js} +4 -4
- package/dist/{chunk-VCX3QMZE.js → chunk-7XISTLQP.js} +8 -8
- package/dist/{chunk-7WKSZZAX.js → chunk-AMY4S4VD.js} +2 -2
- package/dist/{chunk-24PRWXLQ.js → chunk-B23GFISN.js} +3 -3
- package/dist/{chunk-FENIEDNW.js → chunk-E7LG7L4O.js} +102 -4
- package/dist/chunk-E7LG7L4O.js.map +1 -0
- package/dist/{chunk-P3FNNFAW.js → chunk-ED6B55WK.js} +3 -3
- package/dist/{chunk-Y7637JDT.js → chunk-FYQSTNG6.js} +5 -5
- package/dist/{chunk-NTVJNSJC.js → chunk-HBLVOFLL.js} +2 -2
- package/dist/{chunk-VQ3ZVDSQ.js → chunk-HT3B6ZWV.js} +2 -2
- package/dist/{chunk-SLQJ746K.js → chunk-I2DK3KSH.js} +2 -2
- package/dist/{chunk-MWTAZEHK.js → chunk-I6NTUVGW.js} +2 -2
- package/dist/{chunk-I4SDEK6H.js → chunk-ICYEG7T4.js} +7 -7
- package/dist/{chunk-ZHGCHS2D.js → chunk-IG2SIC2E.js} +2 -2
- package/dist/{chunk-TMBVOQPL.js → chunk-JYV5MZC6.js} +4 -4
- package/dist/{chunk-GY4XQU2V.js → chunk-MXNIOTDY.js} +3 -3
- package/dist/{chunk-YNKEHMKX.js → chunk-O27ZG7BL.js} +3 -3
- package/dist/{chunk-ZQMTD74M.js → chunk-OQUELE4L.js} +54 -40
- package/dist/{chunk-ZQMTD74M.js.map → chunk-OQUELE4L.js.map} +1 -1
- package/dist/{chunk-AS6TNXKV.js → chunk-Q6EGZKLE.js} +2 -2
- package/dist/{chunk-XPPDWKZI.js → chunk-QD653D5O.js} +7 -7
- package/dist/{chunk-RZDIYKVH.js → chunk-QVIQAIOK.js} +2 -2
- package/dist/{chunk-3YGTLWNA.js → chunk-RNCBSF6I.js} +2 -2
- package/dist/{chunk-BK2IRU3L.js → chunk-RU336IEH.js} +2 -2
- package/dist/{chunk-6IXIKOLR.js → chunk-SHFCJJTY.js} +2 -2
- package/dist/{chunk-TB7GQCIH.js → chunk-SN4Q7TZT.js} +2 -2
- package/dist/{chunk-IYSD4VFM.js → chunk-SNKSSSAR.js} +4 -4
- package/dist/{chunk-DOTCPOLE.js → chunk-VKUP2PG5.js} +7 -7
- package/dist/{chunk-SHKRC6Z7.js → chunk-VWX75FKD.js} +5 -5
- package/dist/{chunk-TOJFRIVM.js → chunk-WP6UBBNJ.js} +4 -4
- package/dist/{chunk-VCFKTNCM.js → chunk-WRISLYLK.js} +2 -2
- package/dist/{chunk-P7SRGOLU.js → chunk-XLEZBTQG.js} +2 -2
- package/dist/{chunk-WTCREQRS.js → chunk-ZBEJITR6.js} +5 -5
- package/dist/{chunk-CY3QSLDQ.js → chunk-ZO54JW4V.js} +3 -3
- package/dist/{cli-circuit-breaker-BWZXZBNW.js → cli-circuit-breaker-SAHRY3BI.js} +4 -4
- package/dist/cli.js +41 -41
- package/dist/{composite-router-NPSNBLX7.js → composite-router-MFJNLR3O.js} +2 -2
- package/dist/{consensus-vote-ZX6NLTI4.js → consensus-vote-Z55357CP.js} +15 -15
- package/dist/{context-retriever-3QKHEA5U.js → context-retriever-Z474PNZ4.js} +8 -8
- package/dist/{doctor-deep-Y2PQCE6G.js → doctor-deep-IESAJDVW.js} +3 -3
- package/dist/{expert-bridge-NXG4Z7U7.js → expert-bridge-JW4DJPH3.js} +4 -4
- package/dist/{factory-JJ4N6YPR.js → factory-6JIXPGRH.js} +8 -8
- package/dist/{factory-YK2QA3TU.js → factory-Z7GGTUK2.js} +5 -5
- package/dist/{improvement-review-6LSV4QFA.js → improvement-review-5DRIOL5K.js} +5 -5
- package/dist/index.d.ts +72 -0
- package/dist/index.js +30 -30
- package/dist/index.js.map +1 -1
- package/dist/{init-opencode-AO2PEKXB.js → init-opencode-T2F5WSLT.js} +6 -6
- package/dist/{issue-triage-ZRRXCDAM.js → issue-triage-RC5VVUAV.js} +6 -6
- package/dist/{pr-reviewer-helpers-NEJJKQ7D.js → pr-reviewer-helpers-G35TGA7R.js} +4 -4
- package/dist/{registry-command-DKNGS752.js → registry-command-47UO65SV.js} +2 -2
- package/dist/{repo-security-plan-DEYYRMTB.js → repo-security-plan-CGXT5CIP.js} +3 -3
- package/dist/{research-helpers-synthesize-54UEJ24R.js → research-helpers-synthesize-37WHCE5I.js} +4 -4
- package/dist/{routing-memory-QFEXYF6G.js → routing-memory-YWPM45FH.js} +2 -2
- package/dist/{session-memory-DYU7XMQO.js → session-memory-ENUULCNK.js} +3 -3
- package/dist/{setup-command-PSYJ4M7Q.js → setup-command-T6I5TRFR.js} +11 -11
- package/dist/{setup-config-CBV4OUOE.js → setup-config-AMGGWQHX.js} +3 -3
- package/dist/{setup-custom-api-IJWYWAHX.js → setup-custom-api-UNAPYLEX.js} +3 -3
- package/dist/{tool-memory-2DI34M5Z.js → tool-memory-QH3DN2SU.js} +5 -5
- package/dist/{unified-registry-VQPPIL6M.js → unified-registry-YXQGTU3P.js} +9 -9
- package/dist/{weather-report-RETBQ4VD.js → weather-report-BUKQ7YPV.js} +6 -2
- package/package.json +1 -1
- package/dist/chunk-FENIEDNW.js.map +0 -1
- /package/dist/{child-mcp-config-72S4OMRK.js.map → child-mcp-config-XEXFG3LA.js.map} +0 -0
- /package/dist/{chunk-JEUWM2VZ.js.map → chunk-3QIXGEY7.js.map} +0 -0
- /package/dist/{chunk-VOTYZUEG.js.map → chunk-4AXOISAP.js.map} +0 -0
- /package/dist/{chunk-I3ROKMFF.js.map → chunk-5NVU25BA.js.map} +0 -0
- /package/dist/{chunk-VCX3QMZE.js.map → chunk-7XISTLQP.js.map} +0 -0
- /package/dist/{chunk-7WKSZZAX.js.map → chunk-AMY4S4VD.js.map} +0 -0
- /package/dist/{chunk-24PRWXLQ.js.map → chunk-B23GFISN.js.map} +0 -0
- /package/dist/{chunk-P3FNNFAW.js.map → chunk-ED6B55WK.js.map} +0 -0
- /package/dist/{chunk-Y7637JDT.js.map → chunk-FYQSTNG6.js.map} +0 -0
- /package/dist/{chunk-NTVJNSJC.js.map → chunk-HBLVOFLL.js.map} +0 -0
- /package/dist/{chunk-VQ3ZVDSQ.js.map → chunk-HT3B6ZWV.js.map} +0 -0
- /package/dist/{chunk-SLQJ746K.js.map → chunk-I2DK3KSH.js.map} +0 -0
- /package/dist/{chunk-MWTAZEHK.js.map → chunk-I6NTUVGW.js.map} +0 -0
- /package/dist/{chunk-I4SDEK6H.js.map → chunk-ICYEG7T4.js.map} +0 -0
- /package/dist/{chunk-ZHGCHS2D.js.map → chunk-IG2SIC2E.js.map} +0 -0
- /package/dist/{chunk-TMBVOQPL.js.map → chunk-JYV5MZC6.js.map} +0 -0
- /package/dist/{chunk-GY4XQU2V.js.map → chunk-MXNIOTDY.js.map} +0 -0
- /package/dist/{chunk-YNKEHMKX.js.map → chunk-O27ZG7BL.js.map} +0 -0
- /package/dist/{chunk-AS6TNXKV.js.map → chunk-Q6EGZKLE.js.map} +0 -0
- /package/dist/{chunk-XPPDWKZI.js.map → chunk-QD653D5O.js.map} +0 -0
- /package/dist/{chunk-RZDIYKVH.js.map → chunk-QVIQAIOK.js.map} +0 -0
- /package/dist/{chunk-3YGTLWNA.js.map → chunk-RNCBSF6I.js.map} +0 -0
- /package/dist/{chunk-BK2IRU3L.js.map → chunk-RU336IEH.js.map} +0 -0
- /package/dist/{chunk-6IXIKOLR.js.map → chunk-SHFCJJTY.js.map} +0 -0
- /package/dist/{chunk-TB7GQCIH.js.map → chunk-SN4Q7TZT.js.map} +0 -0
- /package/dist/{chunk-IYSD4VFM.js.map → chunk-SNKSSSAR.js.map} +0 -0
- /package/dist/{chunk-DOTCPOLE.js.map → chunk-VKUP2PG5.js.map} +0 -0
- /package/dist/{chunk-SHKRC6Z7.js.map → chunk-VWX75FKD.js.map} +0 -0
- /package/dist/{chunk-TOJFRIVM.js.map → chunk-WP6UBBNJ.js.map} +0 -0
- /package/dist/{chunk-VCFKTNCM.js.map → chunk-WRISLYLK.js.map} +0 -0
- /package/dist/{chunk-P7SRGOLU.js.map → chunk-XLEZBTQG.js.map} +0 -0
- /package/dist/{chunk-WTCREQRS.js.map → chunk-ZBEJITR6.js.map} +0 -0
- /package/dist/{chunk-CY3QSLDQ.js.map → chunk-ZO54JW4V.js.map} +0 -0
- /package/dist/{cli-circuit-breaker-BWZXZBNW.js.map → cli-circuit-breaker-SAHRY3BI.js.map} +0 -0
- /package/dist/{composite-router-NPSNBLX7.js.map → composite-router-MFJNLR3O.js.map} +0 -0
- /package/dist/{consensus-vote-ZX6NLTI4.js.map → consensus-vote-Z55357CP.js.map} +0 -0
- /package/dist/{context-retriever-3QKHEA5U.js.map → context-retriever-Z474PNZ4.js.map} +0 -0
- /package/dist/{doctor-deep-Y2PQCE6G.js.map → doctor-deep-IESAJDVW.js.map} +0 -0
- /package/dist/{expert-bridge-NXG4Z7U7.js.map → expert-bridge-JW4DJPH3.js.map} +0 -0
- /package/dist/{factory-JJ4N6YPR.js.map → factory-6JIXPGRH.js.map} +0 -0
- /package/dist/{factory-YK2QA3TU.js.map → factory-Z7GGTUK2.js.map} +0 -0
- /package/dist/{improvement-review-6LSV4QFA.js.map → improvement-review-5DRIOL5K.js.map} +0 -0
- /package/dist/{init-opencode-AO2PEKXB.js.map → init-opencode-T2F5WSLT.js.map} +0 -0
- /package/dist/{issue-triage-ZRRXCDAM.js.map → issue-triage-RC5VVUAV.js.map} +0 -0
- /package/dist/{pr-reviewer-helpers-NEJJKQ7D.js.map → pr-reviewer-helpers-G35TGA7R.js.map} +0 -0
- /package/dist/{registry-command-DKNGS752.js.map → registry-command-47UO65SV.js.map} +0 -0
- /package/dist/{repo-security-plan-DEYYRMTB.js.map → repo-security-plan-CGXT5CIP.js.map} +0 -0
- /package/dist/{research-helpers-synthesize-54UEJ24R.js.map → research-helpers-synthesize-37WHCE5I.js.map} +0 -0
- /package/dist/{routing-memory-QFEXYF6G.js.map → routing-memory-YWPM45FH.js.map} +0 -0
- /package/dist/{session-memory-DYU7XMQO.js.map → session-memory-ENUULCNK.js.map} +0 -0
- /package/dist/{setup-command-PSYJ4M7Q.js.map → setup-command-T6I5TRFR.js.map} +0 -0
- /package/dist/{setup-config-CBV4OUOE.js.map → setup-config-AMGGWQHX.js.map} +0 -0
- /package/dist/{setup-custom-api-IJWYWAHX.js.map → setup-custom-api-UNAPYLEX.js.map} +0 -0
- /package/dist/{tool-memory-2DI34M5Z.js.map → tool-memory-QH3DN2SU.js.map} +0 -0
- /package/dist/{unified-registry-VQPPIL6M.js.map → unified-registry-YXQGTU3P.js.map} +0 -0
- /package/dist/{weather-report-RETBQ4VD.js.map → weather-report-BUKQ7YPV.js.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createLogger
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-E7LG7L4O.js";
|
|
4
4
|
import "./chunk-NL7SZQPW.js";
|
|
5
5
|
import "./chunk-DHVMSIT5.js";
|
|
6
6
|
import "./chunk-ZPWHCABL.js";
|
|
@@ -60,4 +60,4 @@ export {
|
|
|
60
60
|
generateMcpConfig,
|
|
61
61
|
getDefaultAllowedTools
|
|
62
62
|
};
|
|
63
|
-
//# sourceMappingURL=child-mcp-config-
|
|
63
|
+
//# sourceMappingURL=child-mcp-config-XEXFG3LA.js.map
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
getErrorMessage,
|
|
6
6
|
getTimeProvider,
|
|
7
7
|
ok
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-E7LG7L4O.js";
|
|
9
9
|
|
|
10
10
|
// src/cli-adapters/circuit-breaker-types.ts
|
|
11
11
|
var CircuitErrorCode = {
|
|
@@ -375,4 +375,4 @@ export {
|
|
|
375
375
|
mapCliErrorToCategory,
|
|
376
376
|
mapModelErrorToCategory
|
|
377
377
|
};
|
|
378
|
-
//# sourceMappingURL=chunk-
|
|
378
|
+
//# sourceMappingURL=chunk-3QIXGEY7.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
emitClawGuardViolation
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-QVIQAIOK.js";
|
|
4
4
|
import {
|
|
5
5
|
CACHE_TIMEOUTS,
|
|
6
6
|
MCP_TIMEOUTS,
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
getTimeProvider,
|
|
17
17
|
ok,
|
|
18
18
|
resolveToolClassGuardMs
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-E7LG7L4O.js";
|
|
20
20
|
import {
|
|
21
21
|
getNexusDataDir
|
|
22
22
|
} from "./chunk-DHVMSIT5.js";
|
|
@@ -2023,4 +2023,4 @@ export {
|
|
|
2023
2023
|
VOTING_THRESHOLDS,
|
|
2024
2024
|
ConsensusMetricsSchema
|
|
2025
2025
|
};
|
|
2026
|
-
//# sourceMappingURL=chunk-
|
|
2026
|
+
//# sourceMappingURL=chunk-4AXOISAP.js.map
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
GitHubProvider,
|
|
3
3
|
ScmError
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-HT3B6ZWV.js";
|
|
5
5
|
import {
|
|
6
6
|
resolveToken
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-Q6EGZKLE.js";
|
|
8
8
|
import {
|
|
9
9
|
err,
|
|
10
10
|
ok
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-E7LG7L4O.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-5NVU25BA.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
computeCostDetail
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-SN4Q7TZT.js";
|
|
4
4
|
import {
|
|
5
5
|
DEFAULT_CONSENSUS_CONFIG,
|
|
6
6
|
DEFAULT_INCREMENTAL_QUORUM_CONFIG,
|
|
@@ -18,20 +18,20 @@ import {
|
|
|
18
18
|
toolSuccess,
|
|
19
19
|
withProgressHeartbeat,
|
|
20
20
|
wrapToolWithTimeout
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-4AXOISAP.js";
|
|
22
22
|
import {
|
|
23
23
|
getToolMemory
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-WP6UBBNJ.js";
|
|
25
25
|
import {
|
|
26
26
|
createEvent,
|
|
27
27
|
getGlobalRegistry
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-JYV5MZC6.js";
|
|
29
29
|
import {
|
|
30
30
|
authRemediation,
|
|
31
31
|
delay,
|
|
32
32
|
getAvailableClis,
|
|
33
33
|
withTimeout
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-QD653D5O.js";
|
|
35
35
|
import {
|
|
36
36
|
AgentError,
|
|
37
37
|
CLI_NAMES,
|
|
@@ -59,7 +59,7 @@ import {
|
|
|
59
59
|
registerPersistentOutcomeStoreFactory,
|
|
60
60
|
resolveClassGuardMs,
|
|
61
61
|
resolveVoteTimeout
|
|
62
|
-
} from "./chunk-
|
|
62
|
+
} from "./chunk-E7LG7L4O.js";
|
|
63
63
|
import {
|
|
64
64
|
ensureLearningDir,
|
|
65
65
|
getOutcomesFile
|
|
@@ -5866,7 +5866,7 @@ async function processVotesWithCascade(engineVotes, opts) {
|
|
|
5866
5866
|
var CONTRARIAN_ESCALATION_THRESHOLD = 0.8;
|
|
5867
5867
|
async function runContrarianCheck(proposal, log) {
|
|
5868
5868
|
try {
|
|
5869
|
-
const { executeExpert } = await import("./expert-bridge-
|
|
5869
|
+
const { executeExpert } = await import("./expert-bridge-JW4DJPH3.js");
|
|
5870
5870
|
const prompt = [
|
|
5871
5871
|
"You are a contrarian analyst. Your job is to find reasons this proposal should be REJECTED.",
|
|
5872
5872
|
"Look for: YAGNI (not needed), MISALIGNED (wrong tech/architecture), SECURITY_RISK, SCOPE_CREEP.",
|
|
@@ -6382,4 +6382,4 @@ export {
|
|
|
6382
6382
|
CONSENSUS_VOTE_OUTPUT_SCHEMA,
|
|
6383
6383
|
registerConsensusVoteTool
|
|
6384
6384
|
};
|
|
6385
|
-
//# sourceMappingURL=chunk-
|
|
6385
|
+
//# sourceMappingURL=chunk-7XISTLQP.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getErrorMessage
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-E7LG7L4O.js";
|
|
4
4
|
|
|
5
5
|
// src/cli/setup-config.ts
|
|
6
6
|
import { copyFileSync, existsSync, mkdirSync, writeFileSync } from "fs";
|
|
@@ -77,4 +77,4 @@ function ensureBackup(outputPath) {
|
|
|
77
77
|
export {
|
|
78
78
|
runConfigInitSync
|
|
79
79
|
};
|
|
80
|
-
//# sourceMappingURL=chunk-
|
|
80
|
+
//# sourceMappingURL=chunk-AMY4S4VD.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
loadPapersRegistry
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-RNCBSF6I.js";
|
|
4
4
|
import {
|
|
5
5
|
getErrorMessage
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-E7LG7L4O.js";
|
|
7
7
|
|
|
8
8
|
// src/cli/research-helpers-synthesize.ts
|
|
9
9
|
import { z } from "zod";
|
|
@@ -876,4 +876,4 @@ export {
|
|
|
876
876
|
AttributedInsightSchema,
|
|
877
877
|
synthesizeResearch
|
|
878
878
|
};
|
|
879
|
-
//# sourceMappingURL=chunk-
|
|
879
|
+
//# sourceMappingURL=chunk-B23GFISN.js.map
|
|
@@ -2534,7 +2534,7 @@ function setDefaultRegistry(registry) {
|
|
|
2534
2534
|
}
|
|
2535
2535
|
async function reloadDefaultRegistry() {
|
|
2536
2536
|
globalRegistry = buildDefaultRegistry();
|
|
2537
|
-
const { resetGlobalRegistry } = await import("./unified-registry-
|
|
2537
|
+
const { resetGlobalRegistry } = await import("./unified-registry-YXQGTU3P.js");
|
|
2538
2538
|
resetGlobalRegistry();
|
|
2539
2539
|
return globalRegistry;
|
|
2540
2540
|
}
|
|
@@ -6175,6 +6175,8 @@ var LinUCBBandit = class {
|
|
|
6175
6175
|
config;
|
|
6176
6176
|
arms;
|
|
6177
6177
|
armNames;
|
|
6178
|
+
/** Warm-start replay ledger keyed `arm model` (#4194). Telemetry only. */
|
|
6179
|
+
warmStartModelLedger = /* @__PURE__ */ new Map();
|
|
6178
6180
|
constructor(armNames, config) {
|
|
6179
6181
|
this.armNames = armNames;
|
|
6180
6182
|
this.config = LinUCBConfigSchema.parse({
|
|
@@ -6365,10 +6367,33 @@ var LinUCBBandit = class {
|
|
|
6365
6367
|
if (armIndex < 0) continue;
|
|
6366
6368
|
const reward = outcome.success ? SUCCESS_REWARD : FAILURE_REWARD;
|
|
6367
6369
|
this.update(armIndex, neutralContext, reward);
|
|
6370
|
+
this.recordWarmStartModelStat(outcome.cli, outcome.model, outcome.success);
|
|
6368
6371
|
replayed++;
|
|
6369
6372
|
}
|
|
6370
6373
|
return replayed;
|
|
6371
6374
|
}
|
|
6375
|
+
/** Accumulate the per-arm × per-model warm-start ledger (#4194). */
|
|
6376
|
+
recordWarmStartModelStat(arm, model, success) {
|
|
6377
|
+
const key = `${arm} ${model}`;
|
|
6378
|
+
const entry = this.warmStartModelLedger.get(key) ?? {
|
|
6379
|
+
arm,
|
|
6380
|
+
model,
|
|
6381
|
+
replayedCount: 0,
|
|
6382
|
+
successCount: 0
|
|
6383
|
+
};
|
|
6384
|
+
entry.replayedCount++;
|
|
6385
|
+
if (success) entry.successCount++;
|
|
6386
|
+
this.warmStartModelLedger.set(key, entry);
|
|
6387
|
+
}
|
|
6388
|
+
/**
|
|
6389
|
+
* Per-arm × per-model grouping of the outcomes replayed through
|
|
6390
|
+
* {@link warmStart} (#4194). A telemetry surface for per-model outcome
|
|
6391
|
+
* evaluation — arm structure and selection behavior are unchanged.
|
|
6392
|
+
* Sorted by arm, then model, for stable output.
|
|
6393
|
+
*/
|
|
6394
|
+
getWarmStartModelStats() {
|
|
6395
|
+
return [...this.warmStartModelLedger.values()].map((s) => ({ ...s })).sort((a, b) => a.arm.localeCompare(b.arm) || a.model.localeCompare(b.model));
|
|
6396
|
+
}
|
|
6372
6397
|
/**
|
|
6373
6398
|
* Reset all arm statistics.
|
|
6374
6399
|
*/
|
|
@@ -6380,6 +6405,7 @@ var LinUCBBandit = class {
|
|
|
6380
6405
|
arm.pullCount = 0;
|
|
6381
6406
|
arm.cumulativeReward = 0;
|
|
6382
6407
|
}
|
|
6408
|
+
this.warmStartModelLedger.clear();
|
|
6383
6409
|
}
|
|
6384
6410
|
};
|
|
6385
6411
|
|
|
@@ -12060,7 +12086,10 @@ function buildOptionalSections(input, cfg) {
|
|
|
12060
12086
|
expertPerformance,
|
|
12061
12087
|
swarmHealth: buildSwarmHealth(expertPerformance),
|
|
12062
12088
|
triageStats: buildTriageStats(input),
|
|
12063
|
-
recentWindow: buildRecentWindow(cfg)
|
|
12089
|
+
recentWindow: buildRecentWindow(cfg),
|
|
12090
|
+
// Per-model telemetry lens (#4194) — additive optional section; the
|
|
12091
|
+
// routing-visible adaptiveBonuses above stay CLI×category.
|
|
12092
|
+
modelWeather: getModelWeatherSummary(input, cfg)
|
|
12064
12093
|
});
|
|
12065
12094
|
}
|
|
12066
12095
|
function generateWeatherReport(input, config, deps) {
|
|
@@ -12159,6 +12188,73 @@ function queryWithLookback(store, cli, category, cfg) {
|
|
|
12159
12188
|
}
|
|
12160
12189
|
return store.query({ cli, category, excludeQualitySignals: exclude });
|
|
12161
12190
|
}
|
|
12191
|
+
var MODEL_WEATHER_MIN_SAMPLES = 5;
|
|
12192
|
+
var NON_MODEL_PLACEHOLDER_IDS = /* @__PURE__ */ new Set(["unknown", "pipeline"]);
|
|
12193
|
+
function isRealModelId(model) {
|
|
12194
|
+
return !NON_MODEL_PLACEHOLDER_IDS.has(model) && !model.startsWith(WORKER_MODEL_PREFIX);
|
|
12195
|
+
}
|
|
12196
|
+
function buildModelLensFilter(options) {
|
|
12197
|
+
return {
|
|
12198
|
+
...options?.cli !== void 0 && { cli: options.cli },
|
|
12199
|
+
...options?.category !== void 0 && { category: options.category },
|
|
12200
|
+
excludeQualitySignals: ["e2e-eval"]
|
|
12201
|
+
};
|
|
12202
|
+
}
|
|
12203
|
+
function getModelWeatherSummary(options, config) {
|
|
12204
|
+
const cfg = { ...createDefaultWeatherConfig(), ...config };
|
|
12205
|
+
const store = getOutcomeStore();
|
|
12206
|
+
const filter = buildModelLensFilter(options);
|
|
12207
|
+
const entries = [];
|
|
12208
|
+
for (const model of collectObservedModelIds(store, filter)) {
|
|
12209
|
+
const entry = buildModelWeatherEntry(store, model, filter, cfg);
|
|
12210
|
+
if (entry !== void 0) entries.push(entry);
|
|
12211
|
+
}
|
|
12212
|
+
return entries.sort((a, b) => b.sampleCount - a.sampleCount || a.model.localeCompare(b.model));
|
|
12213
|
+
}
|
|
12214
|
+
function collectObservedModelIds(store, filter) {
|
|
12215
|
+
const ids = /* @__PURE__ */ new Set();
|
|
12216
|
+
for (const o of store.query(filter)) {
|
|
12217
|
+
if (isRealModelId(o.model)) ids.add(o.model);
|
|
12218
|
+
}
|
|
12219
|
+
return [...ids];
|
|
12220
|
+
}
|
|
12221
|
+
function queryModelWithLookback(store, model, filter, cfg) {
|
|
12222
|
+
if (cfg.outcomeLookbackMs > 0) {
|
|
12223
|
+
const since = new Date(Date.now() - cfg.outcomeLookbackMs).toISOString();
|
|
12224
|
+
const windowed = store.queryByModelWithFamilyFallback(model, {
|
|
12225
|
+
threshold: MODEL_WEATHER_MIN_SAMPLES,
|
|
12226
|
+
extraFilter: { ...filter, since }
|
|
12227
|
+
});
|
|
12228
|
+
if (windowed.outcomes.length >= MODEL_WEATHER_MIN_SAMPLES) return windowed;
|
|
12229
|
+
}
|
|
12230
|
+
return store.queryByModelWithFamilyFallback(model, {
|
|
12231
|
+
threshold: MODEL_WEATHER_MIN_SAMPLES,
|
|
12232
|
+
extraFilter: filter
|
|
12233
|
+
});
|
|
12234
|
+
}
|
|
12235
|
+
function restrictFallbackScope(model, result) {
|
|
12236
|
+
if (result.scope !== "family") return { outcomes: result.outcomes, scope: "literal" };
|
|
12237
|
+
if (result.vendor !== "unknown" && result.family !== "unknown") {
|
|
12238
|
+
return { outcomes: result.outcomes, scope: "family" };
|
|
12239
|
+
}
|
|
12240
|
+
return { outcomes: result.outcomes.filter((o) => o.model === model), scope: "literal" };
|
|
12241
|
+
}
|
|
12242
|
+
function buildModelWeatherEntry(store, model, filter, cfg) {
|
|
12243
|
+
const result = queryModelWithLookback(store, model, filter, cfg);
|
|
12244
|
+
const { outcomes, scope } = restrictFallbackScope(model, result);
|
|
12245
|
+
if (outcomes.length < MODEL_WEATHER_MIN_SAMPLES) return void 0;
|
|
12246
|
+
const successes = outcomes.filter((o) => o.success).length;
|
|
12247
|
+
const totalDuration = outcomes.reduce((s, o) => s + o.durationMs, 0);
|
|
12248
|
+
return {
|
|
12249
|
+
model,
|
|
12250
|
+
vendor: result.vendor ?? "unknown",
|
|
12251
|
+
family: result.family ?? "unknown",
|
|
12252
|
+
scope,
|
|
12253
|
+
sampleCount: outcomes.length,
|
|
12254
|
+
successRate: round3(successes / outcomes.length),
|
|
12255
|
+
avgDurationMs: Math.round(totalDuration / outcomes.length)
|
|
12256
|
+
};
|
|
12257
|
+
}
|
|
12162
12258
|
function getAdaptiveBonus(cli, category, config) {
|
|
12163
12259
|
const cfg = { ...createDefaultWeatherConfig(), ...config };
|
|
12164
12260
|
const store = getOutcomeStore();
|
|
@@ -13818,7 +13914,7 @@ var CompositeRouter = class _CompositeRouter {
|
|
|
13818
13914
|
*/
|
|
13819
13915
|
async consultUnifiedContext(task) {
|
|
13820
13916
|
try {
|
|
13821
|
-
const { getContextForTask, inferTaskCategory } = await import("./context-retriever-
|
|
13917
|
+
const { getContextForTask, inferTaskCategory } = await import("./context-retriever-Z474PNZ4.js");
|
|
13822
13918
|
const ctx = await getContextForTask({
|
|
13823
13919
|
task: task.content,
|
|
13824
13920
|
category: inferTaskCategory(task.content),
|
|
@@ -15311,6 +15407,8 @@ export {
|
|
|
15311
15407
|
rankStrategiesByManifest,
|
|
15312
15408
|
generateWeatherReport,
|
|
15313
15409
|
queryWithLookback,
|
|
15410
|
+
MODEL_WEATHER_MIN_SAMPLES,
|
|
15411
|
+
getModelWeatherSummary,
|
|
15314
15412
|
getAdaptiveBonus,
|
|
15315
15413
|
shouldExplore,
|
|
15316
15414
|
getFallbackChainForCategory,
|
|
@@ -15321,4 +15419,4 @@ export {
|
|
|
15321
15419
|
AgentCapability,
|
|
15322
15420
|
OrchestratorError
|
|
15323
15421
|
};
|
|
15324
|
-
//# sourceMappingURL=chunk-
|
|
15422
|
+
//# sourceMappingURL=chunk-E7LG7L4O.js.map
|