nexus-agents 3.9.4 → 3.11.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.
@@ -8,7 +8,7 @@ import {
8
8
  checkSqlite,
9
9
  defaultConfig,
10
10
  initDataDirectories
11
- } from "./chunk-KBX4JSBE.js";
11
+ } from "./chunk-SCI6FKPM.js";
12
12
  import {
13
13
  BUILT_IN_EXPERTS
14
14
  } from "./chunk-YPNQPT2F.js";
@@ -2001,4 +2001,4 @@ export {
2001
2001
  setupCommand,
2002
2002
  setupCommandAsync
2003
2003
  };
2004
- //# sourceMappingURL=chunk-IAEZN2N4.js.map
2004
+ //# sourceMappingURL=chunk-R4ULM2GB.js.map
@@ -52,7 +52,7 @@ import {
52
52
  } from "./chunk-OQLFRJCW.js";
53
53
 
54
54
  // src/version.ts
55
- var VERSION = true ? "3.9.4" : "dev";
55
+ var VERSION = true ? "3.11.0" : "dev";
56
56
 
57
57
  // src/config/schemas-core.ts
58
58
  import { z } from "zod";
@@ -710,6 +710,11 @@ var NexusEnvSchema = z10.object({
710
710
  // to context for structural tasks (#4254, getRepoMapForTask); pull-shaped +
711
711
  // rank-gated, off by default.
712
712
  NEXUS_REPO_MAP: z10.enum(["0", "1"]).optional(),
713
+ // Allow LLM-based pipeline classification when keyword scoring finds no
714
+ // evidence (#4677). Off by default: fixing the confidence floor made the
715
+ // enrichment gate reachable for the first time, and measurement put that at
716
+ // ~60% of realistic goals — one LLM call each. Opt in deliberately.
717
+ NEXUS_LLM_CLASSIFICATION: z10.enum(["0", "1"]).optional(),
713
718
  // Feed live dispatch outcomes into the MetaOrchestrator shadow selector + persist them (#3593); off by default.
714
719
  NEXUS_META_SHADOW_TRAIN: z10.enum(["0", "1"]).optional(),
715
720
  // Resolve a concrete model from the difficulty tier at route time (#3394,
@@ -1560,7 +1565,7 @@ function formatCapacity(capacity) {
1560
1565
  }
1561
1566
  function printInstalledCliDetails(cli) {
1562
1567
  writeLine(` Version: ${cli.version} (${formatVersionStatus(cli.versionStatus)})`);
1563
- const authText = cli.authenticated ? `${colors.green}${cli.authMethod ?? "Authenticated"}${colors.reset}` : `${colors.red}Not authenticated${colors.reset}`;
1568
+ const authText = cli.authState === "authenticated" ? `${colors.green}${cli.authMethod ?? "Authenticated"}${colors.reset}` : cli.authState === "unverified" ? `${colors.yellow}unverified (no non-interactive auth check)${colors.reset}` : `${colors.red}Not authenticated${colors.reset}`;
1564
1569
  writeLine(` Auth: ${authText}`);
1565
1570
  if (cli.capacity !== void 0) {
1566
1571
  writeLine(` Capacity: ${formatCapacity(cli.capacity)}`);
@@ -1979,6 +1984,10 @@ function getFixCommand(name, issue) {
1979
1984
  function createNotFoundResult(name, errorMsg) {
1980
1985
  return {
1981
1986
  name,
1987
+ // Not installed, so auth was never probed. `not-authenticated` would claim
1988
+ // a determination nobody made; the auth line is not printed for an
1989
+ // uninstalled CLI anyway (#4661).
1990
+ authState: "unverified",
1982
1991
  installed: false,
1983
1992
  version: "N/A",
1984
1993
  versionStatus: "unsupported",
@@ -1996,15 +2005,21 @@ function detectAuthMethod(name) {
1996
2005
  };
1997
2006
  return authMethods[name];
1998
2007
  }
2008
+ function resolveAuthState(authenticated, probeState) {
2009
+ if (authenticated) return "authenticated";
2010
+ return probeState === "unknown" ? "unverified" : "not-authenticated";
2011
+ }
1999
2012
  function createHealthyResult(name, health, authProbe, capacity) {
2000
2013
  const versionOk = health.healthy;
2001
2014
  const authenticated = versionOk && authProbe.state === "authenticated";
2015
+ const authState = resolveAuthState(authenticated, authProbe.state);
2002
2016
  const result = {
2003
2017
  name,
2004
2018
  installed: true,
2005
2019
  version: health.version,
2006
2020
  versionStatus: health.versionStatus,
2007
2021
  authenticated,
2022
+ authState,
2008
2023
  ...authenticated && { authMethod: detectAuthMethod(name) },
2009
2024
  ...capacity !== void 0 && { capacity }
2010
2025
  };
@@ -2018,7 +2033,7 @@ function createHealthyResult(name, health, authProbe, capacity) {
2018
2033
  fix: authProbe.fixCommand
2019
2034
  };
2020
2035
  }
2021
- if (!authenticated) {
2036
+ if (authState === "not-authenticated") {
2022
2037
  return { ...result, fix: getFixCommand(name, "auth") };
2023
2038
  }
2024
2039
  if (health.versionStatus === "outdated") {
@@ -2324,7 +2339,7 @@ async function runDoctorFix(result) {
2324
2339
  writeLine2("\u2500".repeat(40));
2325
2340
  let fixCount = 0;
2326
2341
  if (!result.dataDirectory.rootExists || result.dataDirectory.subdirectories.some((d) => !d.exists || !d.writable)) {
2327
- const { runSetup } = await import("./setup-command-QI3LDW4D.js");
2342
+ const { runSetup } = await import("./setup-command-GBCILO74.js");
2328
2343
  const setupResult = runSetup({
2329
2344
  skipMcp: true,
2330
2345
  skipRules: true,
@@ -2437,4 +2452,4 @@ export {
2437
2452
  startStdioServer,
2438
2453
  closeServer
2439
2454
  };
2440
- //# sourceMappingURL=chunk-KBX4JSBE.js.map
2455
+ //# sourceMappingURL=chunk-SCI6FKPM.js.map