@vibgrate/cli 2026.818.1 → 2026.818.2
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/{agent-CUK24AWF.js → agent-X6VYCE63.js} +13 -13
- package/dist/{agent-CUK24AWF.js.map → agent-X6VYCE63.js.map} +1 -1
- package/dist/{approvals-YFOU6GVB.js → approvals-TPQFQSWG.js} +5 -5
- package/dist/{approvals-YFOU6GVB.js.map → approvals-TPQFQSWG.js.map} +1 -1
- package/dist/attach-G5JUIWIT.js +10 -0
- package/dist/{attach-6S3XS7VO.js.map → attach-G5JUIWIT.js.map} +1 -1
- package/dist/{baseline-OBZJRCCP.js → baseline-DXI64VLW.js} +3 -3
- package/dist/{baseline-OBZJRCCP.js.map → baseline-DXI64VLW.js.map} +1 -1
- package/dist/{chunk-WVTGF2MP.js → chunk-2C33WR5O.js} +3 -3
- package/dist/{chunk-WVTGF2MP.js.map → chunk-2C33WR5O.js.map} +1 -1
- package/dist/chunk-4NTNMT6T.js +6 -0
- package/dist/{chunk-SUD54UGN.js.map → chunk-4NTNMT6T.js.map} +1 -1
- package/dist/chunk-5IQBIXHS.js +23 -0
- package/dist/chunk-5IQBIXHS.js.map +1 -0
- package/dist/{chunk-43ESHUM5.js → chunk-6PFHDHOL.js} +8 -8
- package/dist/{chunk-43ESHUM5.js.map → chunk-6PFHDHOL.js.map} +1 -1
- package/dist/{chunk-LHQYYBCH.js → chunk-AEJYA6HZ.js} +5 -5
- package/dist/{chunk-LHQYYBCH.js.map → chunk-AEJYA6HZ.js.map} +1 -1
- package/dist/{chunk-J7CVFTLG.js → chunk-B4EXD5LK.js} +5 -5
- package/dist/{chunk-J7CVFTLG.js.map → chunk-B4EXD5LK.js.map} +1 -1
- package/dist/{chunk-E7RVA2ZI.js → chunk-BMOFJIMG.js} +3 -3
- package/dist/{chunk-E7RVA2ZI.js.map → chunk-BMOFJIMG.js.map} +1 -1
- package/dist/{chunk-ZWFMJUXC.js → chunk-E3O5UKNA.js} +7 -7
- package/dist/{chunk-ZWFMJUXC.js.map → chunk-E3O5UKNA.js.map} +1 -1
- package/dist/{chunk-NO4BMW7M.js → chunk-E53WBVUQ.js} +6 -3
- package/dist/chunk-E53WBVUQ.js.map +1 -0
- package/dist/{chunk-FFYO7G3T.js → chunk-FFXGWFAE.js} +3 -3
- package/dist/{chunk-FFYO7G3T.js.map → chunk-FFXGWFAE.js.map} +1 -1
- package/dist/{chunk-H6RV2OAX.js → chunk-HF6R73UC.js} +78 -10
- package/dist/chunk-HF6R73UC.js.map +1 -0
- package/dist/{chunk-4QAMUBAC.js → chunk-JGA63RGF.js} +11 -11
- package/dist/{chunk-4QAMUBAC.js.map → chunk-JGA63RGF.js.map} +1 -1
- package/dist/{chunk-SBHK4ECM.js → chunk-KU7FI5EV.js} +3 -3
- package/dist/{chunk-SBHK4ECM.js.map → chunk-KU7FI5EV.js.map} +1 -1
- package/dist/{chunk-DM6MJ7IF.js → chunk-L2OS4WHT.js} +4 -4
- package/dist/{chunk-DM6MJ7IF.js.map → chunk-L2OS4WHT.js.map} +1 -1
- package/dist/chunk-LJSJX6U4.js +38 -0
- package/dist/chunk-LJSJX6U4.js.map +1 -0
- package/dist/{chunk-DUCEKH7Q.js → chunk-MRZHNUN7.js} +4 -4
- package/dist/{chunk-DUCEKH7Q.js.map → chunk-MRZHNUN7.js.map} +1 -1
- package/dist/{chunk-G7ZFSH5J.js → chunk-NJQZRM55.js} +6 -38
- package/dist/chunk-NJQZRM55.js.map +1 -0
- package/dist/{chunk-OS4YFOFJ.js → chunk-NKLYDSB7.js} +7 -7
- package/dist/{chunk-OS4YFOFJ.js.map → chunk-NKLYDSB7.js.map} +1 -1
- package/dist/{chunk-X4DECFUG.js → chunk-O5IJDMTB.js} +4 -4
- package/dist/{chunk-X4DECFUG.js.map → chunk-O5IJDMTB.js.map} +1 -1
- package/dist/{chunk-J3A3O4IA.js → chunk-PRHH4DVO.js} +3 -3
- package/dist/{chunk-J3A3O4IA.js.map → chunk-PRHH4DVO.js.map} +1 -1
- package/dist/{chunk-OVUZWR67.js → chunk-RHKOUPWT.js} +3 -3
- package/dist/{chunk-OVUZWR67.js.map → chunk-RHKOUPWT.js.map} +1 -1
- package/dist/{chunk-I3PKYYRP.js → chunk-V6WONSIK.js} +4 -4
- package/dist/{chunk-I3PKYYRP.js.map → chunk-V6WONSIK.js.map} +1 -1
- package/dist/{chunk-Q7TWHJJ6.js → chunk-VMAIDM4K.js} +3 -3
- package/dist/{chunk-Q7TWHJJ6.js.map → chunk-VMAIDM4K.js.map} +1 -1
- package/dist/{chunk-MHJBIGWV.js → chunk-VQ5KMHW6.js} +117 -23
- package/dist/chunk-VQ5KMHW6.js.map +1 -0
- package/dist/{chunk-GKZU6MII.js → chunk-X2MQ7UFL.js} +109 -23
- package/dist/chunk-X2MQ7UFL.js.map +1 -0
- package/dist/{chunk-6LY3JH6S.js → chunk-YF54UMOU.js} +3 -3
- package/dist/{chunk-6LY3JH6S.js.map → chunk-YF54UMOU.js.map} +1 -1
- package/dist/{chunk-DH6EDSQP.js → chunk-ZUOBPKVK.js} +3 -3
- package/dist/{chunk-DH6EDSQP.js.map → chunk-ZUOBPKVK.js.map} +1 -1
- package/dist/cli.js +234 -108
- package/dist/cli.js.map +1 -1
- package/dist/client-UQIELEEZ.js +8 -0
- package/dist/client-UQIELEEZ.js.map +1 -0
- package/dist/{daemon-4Q5QBBAF.js → daemon-GUMWMKCA.js} +11 -11
- package/dist/{daemon-4Q5QBBAF.js.map → daemon-GUMWMKCA.js.map} +1 -1
- package/dist/embed-worker-main.js +3 -3
- package/dist/{ensure-map-B2PS5ALS.js → ensure-map-FHDJTO7Y.js} +20 -19
- package/dist/{ensure-map-B2PS5ALS.js.map → ensure-map-FHDJTO7Y.js.map} +1 -1
- package/dist/{graph-backend-EEXMD6XY.js → graph-backend-W2D3HRRD.js} +8 -8
- package/dist/{graph-backend-EEXMD6XY.js.map → graph-backend-W2D3HRRD.js.map} +1 -1
- package/dist/index.d.ts +29 -2
- package/dist/index.js +20 -18
- package/dist/index.js.map +1 -1
- package/dist/{interactive-KEPGE5HD.js → interactive-2MK4TLRD.js} +32 -31
- package/dist/interactive-2MK4TLRD.js.map +1 -0
- package/dist/load-4R4HYMBB.js +11 -0
- package/dist/{load-H5HAME25.js.map → load-4R4HYMBB.js.map} +1 -1
- package/dist/parse-worker.js +2 -2
- package/dist/publish-7YHRTBRA.js +9 -0
- package/dist/publish-7YHRTBRA.js.map +1 -0
- package/dist/{run-outcome-V3L4GAN4.js → run-outcome-H5GVDDZJ.js} +5 -5
- package/dist/{run-outcome-V3L4GAN4.js.map → run-outcome-H5GVDDZJ.js.map} +1 -1
- package/dist/{runtime-session-M2FRGTDS.js → runtime-session-JBIHHH5N.js} +11 -11
- package/dist/{runtime-session-M2FRGTDS.js.map → runtime-session-JBIHHH5N.js.map} +1 -1
- package/dist/semantic-status-2JFLIQQJ.js +4 -0
- package/dist/semantic-status-2JFLIQQJ.js.map +1 -0
- package/dist/{session-77YXFUC7.js → session-N5IU4K5Q.js} +8 -8
- package/dist/{session-77YXFUC7.js.map → session-N5IU4K5Q.js.map} +1 -1
- package/dist/{stream-json-S6E3W2US.js → stream-json-4WLSUF6I.js} +13 -13
- package/dist/{stream-json-S6E3W2US.js.map → stream-json-4WLSUF6I.js.map} +1 -1
- package/dist/version-DTEU3SQD.js +4 -0
- package/dist/{version-VRZT5G4T.js.map → version-DTEU3SQD.js.map} +1 -1
- package/dist/{vg-mcp-bridge-HCPJWJKJ.js → vg-mcp-bridge-KDVYIMFX.js} +9 -9
- package/dist/{vg-mcp-bridge-HCPJWJKJ.js.map → vg-mcp-bridge-KDVYIMFX.js.map} +1 -1
- package/dist/{vgd-R2PNIDEP.js → vgd-M7UOPWLB.js} +10 -10
- package/dist/vgd-M7UOPWLB.js.map +1 -0
- package/package.json +1 -1
- package/dist/attach-6S3XS7VO.js +0 -9
- package/dist/chunk-G7ZFSH5J.js.map +0 -1
- package/dist/chunk-GKZU6MII.js.map +0 -1
- package/dist/chunk-H6RV2OAX.js.map +0 -1
- package/dist/chunk-MHJBIGWV.js.map +0 -1
- package/dist/chunk-NO4BMW7M.js.map +0 -1
- package/dist/chunk-SUD54UGN.js +0 -6
- package/dist/interactive-KEPGE5HD.js.map +0 -1
- package/dist/load-H5HAME25.js +0 -11
- package/dist/version-VRZT5G4T.js +0 -4
- package/dist/vgd-R2PNIDEP.js.map +0 -1
package/dist/cli.js
CHANGED
|
@@ -1,64 +1,66 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { fetchCatalog, resolveProviders } from './chunk-FFXGWFAE.js';
|
|
3
|
+
import { telemetryOptOut, StatsSharer, statsEndpoint, isCI } from './chunk-BMOFJIMG.js';
|
|
2
4
|
import { loadAdvancedScanHook, baselineCommand } from './chunk-6ABMV74F.js';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
import { telemetryOptOut, StatsSharer, statsEndpoint, isCI } from './chunk-E7RVA2ZI.js';
|
|
5
|
+
import { sha256Hex, generateKeypair, dssePae, DSSE_PAYLOAD_TYPE, keyId, registerBuild, LiveStatus, ProgressBar, printLogo, runBuild } from './chunk-HF6R73UC.js';
|
|
6
|
+
export { runBuild } from './chunk-HF6R73UC.js';
|
|
7
|
+
import { readOrchestratorState, writeOrchestratorState, parseMode, setDefaultMode, recommendMode, activePin, resolveMode, providerForBackend, QUALIFIED_PACKS, pinPack, unpinPack, buildOrchestratorStatus } from './chunk-NZELMYT4.js';
|
|
7
8
|
import { defaultProcessEndpoint, startProcessHostServer, resolveInferenceIsolation } from './chunk-JFE7XCAE.js';
|
|
8
|
-
import { runCodeSession } from './chunk-
|
|
9
|
-
import { CONTEXT_POLICY_VERSION, computeFcsReport, renderFcsReportMarkdown, createTrajectoryCollector, runAgent } from './chunk-
|
|
9
|
+
import { runCodeSession } from './chunk-AEJYA6HZ.js';
|
|
10
|
+
import { CONTEXT_POLICY_VERSION, computeFcsReport, renderFcsReportMarkdown, createTrajectoryCollector, runAgent } from './chunk-JGA63RGF.js';
|
|
10
11
|
import './chunk-543E6WDJ.js';
|
|
12
|
+
import './chunk-ZUOBPKVK.js';
|
|
13
|
+
import './chunk-O5IJDMTB.js';
|
|
11
14
|
import { parseReasoningEffort, summarizeDiffs, ScriptedProvider } from './chunk-74UBGF4P.js';
|
|
12
15
|
import './chunk-7AVYKZEM.js';
|
|
13
16
|
import { buildModelInstallPlan } from './chunk-I5LP55B6.js';
|
|
14
17
|
import { ensurePackage, ensureUnavailableMessage } from './chunk-3HNPVXUK.js';
|
|
18
|
+
import { vgdVersionSkew, restartVgdIfRunning, stopVgd, registerDaemon, rootOf, requireGraph } from './chunk-E3O5UKNA.js';
|
|
19
|
+
import { readGlobal, applyGlobalOptions } from './chunk-YENM3HT7.js';
|
|
15
20
|
import { ActivityLog } from './chunk-H5Q4JUY4.js';
|
|
21
|
+
import { disableColor, info, c, json, out } from './chunk-CT5BS56U.js';
|
|
16
22
|
import { init_resolve_ollama, gatherSystemMemory, resolveOllamaBinary, hasOllamaBinary, resolve_ollama_exports } from './chunk-FJG5AXKZ.js';
|
|
17
|
-
import { readOrchestratorState, writeOrchestratorState, parseMode, setDefaultMode, recommendMode, activePin, resolveMode, providerForBackend, QUALIFIED_PACKS, pinPack, unpinPack, buildOrchestratorStatus } from './chunk-NZELMYT4.js';
|
|
18
23
|
import { fmt, estimateModelBytes } from './chunk-7N4Y3E47.js';
|
|
19
|
-
import './chunk-
|
|
20
|
-
import './chunk-X4DECFUG.js';
|
|
21
|
-
import { vgdVersionSkew, restartVgdIfRunning, stopVgd, registerDaemon, rootOf, requireGraph } from './chunk-ZWFMJUXC.js';
|
|
22
|
-
import { readGlobal, applyGlobalOptions } from './chunk-YENM3HT7.js';
|
|
23
|
-
import { disableColor, info, c, json, out } from './chunk-CT5BS56U.js';
|
|
24
|
-
import { isManifest, isDependencyFile, manifestHash, loadScanCache, writeScanCache, manifestKind, findPackageLine, endOfLine, findRuntimeLine } from './chunk-MHJBIGWV.js';
|
|
24
|
+
import { isManifest, isDependencyFile, manifestHash, loadScanCache, writeScanCache, manifestKind, findPackageLine, endOfLine, findRuntimeLine } from './chunk-VQ5KMHW6.js';
|
|
25
25
|
import { clearHostSessionPool, acquireHostSession, generateOnSession, listHostSessions, hostSessionPoolSize } from './chunk-3LOWJSAF.js';
|
|
26
26
|
import { buildIdentifierTrieFromGraph } from './chunk-5HYCB55P.js';
|
|
27
27
|
import './chunk-IS7VTH2Q.js';
|
|
28
28
|
import './chunk-IZDH67DX.js';
|
|
29
|
-
import { DaemonSemanticSession, serveStdio, exportGraph, GraphSource, createServer, formatForExt, RefreshScheduler } from './chunk-
|
|
30
|
-
import { refreshIfStale } from './chunk-
|
|
31
|
-
import { driftCount, ASSISTANTS, detectAssistants, isAssistantInstalled, detectServeLaunch, installAssistant, writeNavigationConfig, uninstallAssistant, buildGraph, writeSnapshot, probeFreshness, assistantById, SMALL_REPO_FILES } from './chunk-
|
|
32
|
-
import { resolveDsn, createWorkspaceDsn, writeStoredCredentials, credentialsPath, findGitRoot, ensureGitignored, gitignoreEntryForCredentials, clearStoredCredentials, parseDsn as parseDsn$1, uploadScanArtifact, dsnCommand, pushCommand, countTokens, shortestPath, pathDisconnect, testsToRun, detectRunner, coveringTests, FREE_PACK, readScanArtifact, publishPrivateLibrary, assessDocQuality, symbolsFromApi, fetchHostedDocsCached, selectForBudget, hostedBase, readStoredCredentials, projectCredentialsPath, homeCredentialsPath } from './chunk-
|
|
33
|
-
import { writeDefaultConfig, parseDsn, detectVcs, computeRepoFingerprint, resolveRepositoryName, fetchScanPreflight, runCoreScan, loadConfig, prepareCompressedUpload, computeDriftScore, titleBox, projectTypeToVulnEcosystem, driftBar, gitHistoryAvailable, buildVersionTimelines, findPackageAnyEcosystem, normalizeConstraint, findVersionCrossings, versionSatisfies, refineArchitectureWithAstRoles, refineArchitectureWithGraph, PROJECT_TYPE_TO_OSV_ECOSYSTEM, fetchRiskySymbols, perDependencyDrift, boundaryProfileRules } from './chunk-V2UGRUTL.js';
|
|
29
|
+
import { DaemonSemanticSession, serveStdio, exportGraph, GraphSource, createServer, formatForExt, RefreshScheduler } from './chunk-X2MQ7UFL.js';
|
|
30
|
+
import { refreshIfStale } from './chunk-B4EXD5LK.js';
|
|
31
|
+
import { driftCount, ASSISTANTS, detectAssistants, isAssistantInstalled, detectServeLaunch, installAssistant, writeNavigationConfig, uninstallAssistant, buildGraph, writeSnapshot, probeFreshness, assistantById, SMALL_REPO_FILES } from './chunk-6PFHDHOL.js';
|
|
32
|
+
import { resolveDsn, createWorkspaceDsn, writeStoredCredentials, credentialsPath, findGitRoot, ensureGitignored, gitignoreEntryForCredentials, clearStoredCredentials, parseDsn as parseDsn$1, uploadScanArtifact, dsnCommand, pushCommand, countTokens, shortestPath, pathDisconnect, testsToRun, detectRunner, coveringTests, FREE_PACK, readScanArtifact, publishPrivateLibrary, assessDocQuality, symbolsFromApi, fetchHostedDocsCached, selectForBudget, hostedBase, readStoredCredentials, projectCredentialsPath, homeCredentialsPath } from './chunk-NKLYDSB7.js';
|
|
34
33
|
import { resolveIngestHost, dashHostForIngestHost, availableRegionIds, ingestHostForRegionId } from './chunk-HTLDXEHW.js';
|
|
34
|
+
import { writeDefaultConfig, parseDsn, detectVcs, computeRepoFingerprint, resolveRepositoryName, fetchScanPreflight, runCoreScan, loadConfig, prepareCompressedUpload, computeDriftScore, titleBox, projectTypeToVulnEcosystem, driftBar, gitHistoryAvailable, buildVersionTimelines, findPackageAnyEcosystem, normalizeConstraint, findVersionCrossings, versionSatisfies, refineArchitectureWithAstRoles, refineArchitectureWithGraph, PROJECT_TYPE_TO_OSV_ECOSYSTEM, fetchRiskySymbols, perDependencyDrift, boundaryProfileRules } from './chunk-V2UGRUTL.js';
|
|
35
35
|
import './chunk-VIWZ4QT7.js';
|
|
36
|
-
import { catalogPath, libDir, loadCatalog, driftFor, addLibrary, resolveLib, libId, resolveVersion, readDoc, localPackageDocs, localApiSurface } from './chunk-
|
|
37
|
-
import { recordCliCall, CLI_TOOL_ALIASES, savingsLedgerPath, clearSavings, readSavings, readUsage, readModelSavings, CAPSULE_RANKING_VERSION, SAVINGS_TOOLS, sanitizeClient } from './chunk-
|
|
36
|
+
import { catalogPath, libDir, loadCatalog, driftFor, addLibrary, resolveLib, libId, resolveVersion, readDoc, localPackageDocs, localApiSurface } from './chunk-RHKOUPWT.js';
|
|
37
|
+
import { recordCliCall, CLI_TOOL_ALIASES, savingsLedgerPath, clearSavings, readSavings, readUsage, readModelSavings, CAPSULE_RANKING_VERSION, SAVINGS_TOOLS, sanitizeClient } from './chunk-YF54UMOU.js';
|
|
38
38
|
import { discoverModels } from './chunk-CQDUBAQY.js';
|
|
39
39
|
import { freeBytesOnVolume, weightStoreDir, listCachedWeights, ensureWeightCached, catalogIntegrityReport } from './chunk-OV4KGXPD.js';
|
|
40
|
+
import { CliError, ExitCode, usageError, engineUnavailable } from './chunk-MS6V5XKB.js';
|
|
41
|
+
import { attachVgd } from './chunk-NJQZRM55.js';
|
|
40
42
|
import { pathExists as pathExists$1, parseExcludePatterns } from './chunk-NG4KIJW6.js';
|
|
41
43
|
import { ensureDir, pathExists, readJsonFile, writeTextFile, writeJsonFile } from './chunk-CRAMOEBE.js';
|
|
42
|
-
import
|
|
44
|
+
import './chunk-5IQBIXHS.js';
|
|
43
45
|
import { init_cli_invocation, resolveCliInvocation, NPX_INVOCATION } from './chunk-EZ7UC5Y5.js';
|
|
46
|
+
import { publishGraphToVgd } from './chunk-LJSJX6U4.js';
|
|
44
47
|
import { isRelevantChange } from './chunk-DBX3DL27.js';
|
|
45
48
|
import { discover, SKIP_DIRS } from './chunk-POOL355F.js';
|
|
46
49
|
import { inventory, enrichOnline, ECOSYSTEMS } from './chunk-6BEBJCK4.js';
|
|
47
50
|
import { resolveOne } from './chunk-J7LKEB2R.js';
|
|
48
|
-
import { queryGraphSemantic, queryGraph, indexFor, impactOf } from './chunk-
|
|
49
|
-
import { loadGraph, loadGraphPreferIndex, SCHEMA_VERSION } from './chunk-
|
|
50
|
-
import './chunk-
|
|
51
|
-
import { attachVgd, publishGraphToVgd } from './chunk-G7ZFSH5J.js';
|
|
52
|
-
import './chunk-NO4BMW7M.js';
|
|
51
|
+
import { queryGraphSemantic, queryGraph, indexFor, impactOf } from './chunk-MRZHNUN7.js';
|
|
52
|
+
import { loadGraph, loadGraphPreferIndex, SCHEMA_VERSION } from './chunk-KU7FI5EV.js';
|
|
53
|
+
import './chunk-E53WBVUQ.js';
|
|
53
54
|
import './chunk-NDNNOAS6.js';
|
|
54
|
-
import
|
|
55
|
+
import './chunk-5I4VSBWQ.js';
|
|
56
|
+
import { resolvedGrammarFiles, TOOLCHAIN_GRAMMARS, resolveToolchainGrammar, grammarSetVersion, fileRolesFromParseCache } from './chunk-PRHH4DVO.js';
|
|
55
57
|
import './chunk-T7RSQ5WD.js';
|
|
56
58
|
import './chunk-6WRG7VDO.js';
|
|
57
|
-
import { embeddingsCached, resolveEmbedModel, loadEmbedder, getNodeEmbeddings, unavailableMessage, countPending, modelCacheInfo, embeddingsPath, clearModelCache, withTimeout } from './chunk-
|
|
58
|
-
import { resetRelevanceProviderCache, loadRelevanceProvider, relevanceModuleDir, resolveGraphPath, analyzeQuestion, loadTopicTags, renderReport, loadGraphFileWithSnapshot, writeArtifacts, vibgrateDir, mapFileExists, ensureVibgrateGitignore } from './chunk-
|
|
59
|
+
import { embeddingsCached, resolveEmbedModel, loadEmbedder, getNodeEmbeddings, unavailableMessage, countPending, modelCacheInfo, embeddingsPath, clearModelCache, withTimeout } from './chunk-2C33WR5O.js';
|
|
60
|
+
import { resetRelevanceProviderCache, loadRelevanceProvider, relevanceModuleDir, resolveGraphPath, analyzeQuestion, loadTopicTags, renderReport, loadGraphFileWithSnapshot, writeArtifacts, vibgrateDir, mapFileExists, ensureVibgrateGitignore } from './chunk-VMAIDM4K.js';
|
|
59
61
|
import { cacheDir } from './chunk-MVPRPSXU.js';
|
|
60
62
|
import { serializeGraph, stableStringify, parseGraph } from './chunk-O3LABX6I.js';
|
|
61
|
-
import { VERSION } from './chunk-
|
|
63
|
+
import { VERSION } from './chunk-4NTNMT6T.js';
|
|
62
64
|
import './chunk-BWPBB45M.js';
|
|
63
65
|
import { canonicalize, hashString } from './chunk-JFGYT6BI.js';
|
|
64
66
|
import './chunk-BPF3YX2U.js';
|
|
@@ -166,6 +168,8 @@ function registerAsk(program) {
|
|
|
166
168
|
}
|
|
167
169
|
const { graph } = requireGraph(global);
|
|
168
170
|
const activity = new ActivityLog();
|
|
171
|
+
const live = !global.json ? new LiveStatus() : null;
|
|
172
|
+
live?.start("attaching to vgd\u2026");
|
|
169
173
|
const attached = await activity.time(
|
|
170
174
|
"attach",
|
|
171
175
|
() => attachVgd(root3, {
|
|
@@ -186,55 +190,64 @@ function registerAsk(program) {
|
|
|
186
190
|
let note = "";
|
|
187
191
|
const relevance = await analyzeQuestion(q);
|
|
188
192
|
const topicTags = relevance ? await loadTopicTags(graph, root3, resolveGraphPath(root3, global.graph)) : null;
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
"
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
let reason;
|
|
212
|
-
let detail;
|
|
213
|
-
const embedder = await loadEmbedder({
|
|
214
|
-
local: global.local,
|
|
215
|
-
onUnavailable: (r, d) => {
|
|
216
|
-
reason = r;
|
|
217
|
-
detail = d;
|
|
218
|
-
}
|
|
219
|
-
});
|
|
220
|
-
if (embedder) {
|
|
221
|
-
const bar = !global.json && firstRun ? new ProgressBar(c.dim("embedding")) : void 0;
|
|
222
|
-
const vectors = await getNodeEmbeddings(graph, embedder, root3, bar ? (d, t) => bar.update(d, t) : void 0);
|
|
223
|
-
bar?.done();
|
|
224
|
-
result = await queryGraphSemantic(graph, q, { budget, embedder, nodeVectors: vectors, relevance, topicTags });
|
|
225
|
-
mode = `semantic (${embedder.id})`;
|
|
226
|
-
activity.add("answer", "ok", `answered in this process \xB7 ${embedder.id} \xB7 ${vectors.size} vector(s)`);
|
|
193
|
+
try {
|
|
194
|
+
if (wantSemantic) {
|
|
195
|
+
live?.set("asking the daemon\u2026");
|
|
196
|
+
const ranked = attached.status === "attached" && attached.repositoryId ? await activity.time(
|
|
197
|
+
"semantic",
|
|
198
|
+
// The attach above already resolved (and, if needed, published)
|
|
199
|
+
// the slot — this session only sends the question.
|
|
200
|
+
() => new DaemonSemanticSession(root3, { socketPath: attached.socketPath, publish: false }).rank(q, void 0, {
|
|
201
|
+
onProgress: (p) => live?.set(p.detail)
|
|
202
|
+
}),
|
|
203
|
+
(r) => r ? { outcome: "ok", detail: `ranked in the daemon \xB7 ${r.ranked.length} of ${r.vectors} vector(s)${r.model ? ` \xB7 ${r.model}` : ""}` } : { outcome: "skip", detail: "daemon index unavailable \u2014 embedding in this process" }
|
|
204
|
+
) : null;
|
|
205
|
+
if (ranked) {
|
|
206
|
+
live?.set("answering from the daemon index\u2026");
|
|
207
|
+
result = await queryGraphSemantic(graph, q, {
|
|
208
|
+
budget,
|
|
209
|
+
semanticRanked: ranked.ranked,
|
|
210
|
+
relevance,
|
|
211
|
+
topicTags
|
|
212
|
+
});
|
|
213
|
+
mode = `semantic (vgd${ranked.model ? `, ${ranked.model}` : ""})`;
|
|
214
|
+
activity.add("answer", "ok", "answered from the daemon index \u2014 no local model load");
|
|
227
215
|
} else {
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
216
|
+
const firstRun = !embeddingsCached(root3, resolveEmbedModel());
|
|
217
|
+
live?.set(
|
|
218
|
+
firstRun ? "loading the embedding model (first use; then cached and offline)\u2026" : "embedding the map in this process\u2026"
|
|
219
|
+
);
|
|
220
|
+
let reason;
|
|
221
|
+
let detail;
|
|
222
|
+
const embedder = await loadEmbedder({
|
|
223
|
+
local: global.local,
|
|
224
|
+
onUnavailable: (r, d) => {
|
|
225
|
+
reason = r;
|
|
226
|
+
detail = d;
|
|
227
|
+
}
|
|
228
|
+
});
|
|
229
|
+
if (embedder) {
|
|
230
|
+
live?.stop();
|
|
231
|
+
const bar = !global.json ? new ProgressBar(c.dim("embedding")) : void 0;
|
|
232
|
+
const vectors = await getNodeEmbeddings(graph, embedder, root3, bar ? (d, t) => bar.update(d, t) : void 0);
|
|
233
|
+
bar?.done();
|
|
234
|
+
result = await queryGraphSemantic(graph, q, { budget, embedder, nodeVectors: vectors, relevance, topicTags });
|
|
235
|
+
mode = `semantic (${embedder.id})`;
|
|
236
|
+
activity.add("answer", "ok", `answered in this process \xB7 ${embedder.id} \xB7 ${vectors.size} vector(s)`);
|
|
237
|
+
} else {
|
|
238
|
+
result = queryGraph(graph, q, { budget, relevance, topicTags });
|
|
239
|
+
note = reason ? unavailableMessage(reason) : "semantic unavailable; used lexical";
|
|
240
|
+
if (detail) note += ` (${detail})`;
|
|
241
|
+
activity.add("answer", "warn", `lexical only \u2014 ${note}`);
|
|
242
|
+
}
|
|
232
243
|
}
|
|
244
|
+
} else {
|
|
245
|
+
result = queryGraph(graph, q, { budget, relevance, topicTags });
|
|
246
|
+
if (global.local) note = "semantic skipped under --local; used lexical";
|
|
247
|
+
activity.add("answer", "skip", global.local ? "lexical only (--local)" : "lexical only (--no-semantic)");
|
|
233
248
|
}
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
if (global.local) note = "semantic skipped under --local; used lexical";
|
|
237
|
-
activity.add("answer", "skip", global.local ? "lexical only (--local)" : "lexical only (--no-semantic)");
|
|
249
|
+
} finally {
|
|
250
|
+
live?.stop();
|
|
238
251
|
}
|
|
239
252
|
if (global.client) {
|
|
240
253
|
const files = new Set(result.matches.map((m) => m.node.file).filter(Boolean));
|
|
@@ -2563,6 +2576,21 @@ var VibgrateLanguageServer = class {
|
|
|
2563
2576
|
* single Ask block for over a minute. See engine/refresh-scheduler.ts.
|
|
2564
2577
|
*/
|
|
2565
2578
|
refresher;
|
|
2579
|
+
/**
|
|
2580
|
+
* Open while the daemon is pushing map changes for this workspace. Closing
|
|
2581
|
+
* it (or losing it) puts this server back in charge of its own freshness.
|
|
2582
|
+
*/
|
|
2583
|
+
slotSubscription = null;
|
|
2584
|
+
/**
|
|
2585
|
+
* True only while the daemon is confirmed to hold *this* map and to be
|
|
2586
|
+
* pushing changes for it. While set, `graphForQuery` stops probing: the
|
|
2587
|
+
* daemon already watches the tree and rebuilds, and two processes doing it
|
|
2588
|
+
* means two stat-walks over one corpus and two rebuilds racing for one lock.
|
|
2589
|
+
*
|
|
2590
|
+
* Never assumed — see `deferFreshnessToDaemon`. A daemon that dies degrades
|
|
2591
|
+
* this server to watching for itself, never to nothing watching.
|
|
2592
|
+
*/
|
|
2593
|
+
daemonOwnsFreshness = false;
|
|
2566
2594
|
/**
|
|
2567
2595
|
* The local runtime's semantic index, held for the life of the server.
|
|
2568
2596
|
* Ranking there means the native embedding backend is never loaded into this
|
|
@@ -2650,6 +2678,9 @@ var VibgrateLanguageServer = class {
|
|
|
2650
2678
|
this.conn.onRequest("shutdown", () => {
|
|
2651
2679
|
this.shuttingDown = true;
|
|
2652
2680
|
if (this.debounce) clearTimeout(this.debounce);
|
|
2681
|
+
this.slotSubscription?.close();
|
|
2682
|
+
this.slotSubscription = null;
|
|
2683
|
+
this.daemonOwnsFreshness = false;
|
|
2653
2684
|
return null;
|
|
2654
2685
|
});
|
|
2655
2686
|
this.conn.onNotification("exit", () => {
|
|
@@ -2988,6 +3019,7 @@ var VibgrateLanguageServer = class {
|
|
|
2988
3019
|
this.fileRoles = fileRolesFromParseCache(this.opts.root);
|
|
2989
3020
|
this.refineAndPublishArchitecture();
|
|
2990
3021
|
this.conn.notify("vibgrate/graph/status", { state: "ready" });
|
|
3022
|
+
void this.deferFreshnessToDaemon();
|
|
2991
3023
|
return;
|
|
2992
3024
|
}
|
|
2993
3025
|
this.conn.notify("vibgrate/graph/status", { state: "building" });
|
|
@@ -2998,6 +3030,7 @@ var VibgrateLanguageServer = class {
|
|
|
2998
3030
|
this.fileRoles = result.fileRoles;
|
|
2999
3031
|
this.refineAndPublishArchitecture();
|
|
3000
3032
|
this.conn.notify("vibgrate/graph/status", { state: "ready" });
|
|
3033
|
+
void this.deferFreshnessToDaemon();
|
|
3001
3034
|
} catch (err) {
|
|
3002
3035
|
const message = err instanceof Error ? err.message : String(err);
|
|
3003
3036
|
this.conn.notify("window/logMessage", { type: 3, message: `Vibgrate graph build failed: ${message}` });
|
|
@@ -3006,6 +3039,55 @@ var VibgrateLanguageServer = class {
|
|
|
3006
3039
|
this.graphBuilding = false;
|
|
3007
3040
|
}
|
|
3008
3041
|
}
|
|
3042
|
+
/**
|
|
3043
|
+
* Hand freshness to the daemon, but only once it is actually holding this
|
|
3044
|
+
* map and pushing changes for it.
|
|
3045
|
+
*
|
|
3046
|
+
* The daemon watches a repository the moment it holds its slot — and not
|
|
3047
|
+
* before. Registration is not enough; this server has historically been one
|
|
3048
|
+
* of the roots vgd knew about but never had a map for. So the order matters:
|
|
3049
|
+
* publish the map we just loaded or built, take the repository id the daemon
|
|
3050
|
+
* answers with, and subscribe to *that* repository. Only a confirmed
|
|
3051
|
+
* subscription retires the local probe.
|
|
3052
|
+
*
|
|
3053
|
+
* Every failure mode lands on "keep watching for ourselves": no daemon, a
|
|
3054
|
+
* daemon that will not take the map, a subscription it does not confirm, or
|
|
3055
|
+
* a connection that later drops. None of them are errors — a machine with no
|
|
3056
|
+
* vgd is a supported configuration.
|
|
3057
|
+
*/
|
|
3058
|
+
async deferFreshnessToDaemon() {
|
|
3059
|
+
if (this.opts.daemon === false || !this.opts.graph) return;
|
|
3060
|
+
if (this.daemonOwnsFreshness || this.slotSubscription || this.shuttingDown) return;
|
|
3061
|
+
try {
|
|
3062
|
+
const [{ publishGraphToVgd: publishGraphToVgd2 }, { subscribeToSlots }] = await Promise.all([
|
|
3063
|
+
import('./publish-7YHRTBRA.js'),
|
|
3064
|
+
import('./slot-subscription-25GOARW5.js')
|
|
3065
|
+
]);
|
|
3066
|
+
const published = await publishGraphToVgd2(this.opts.root);
|
|
3067
|
+
if (published.status !== "published" && published.status !== "current") return;
|
|
3068
|
+
const { repositoryId } = published;
|
|
3069
|
+
const subscription = await subscribeToSlots({
|
|
3070
|
+
repositoryId,
|
|
3071
|
+
onChange: () => this.reloadGraphFromDisk(),
|
|
3072
|
+
onDetach: () => {
|
|
3073
|
+
this.daemonOwnsFreshness = false;
|
|
3074
|
+
this.slotSubscription = null;
|
|
3075
|
+
}
|
|
3076
|
+
});
|
|
3077
|
+
if (!subscription.active) return;
|
|
3078
|
+
if (this.shuttingDown) {
|
|
3079
|
+
subscription.close();
|
|
3080
|
+
return;
|
|
3081
|
+
}
|
|
3082
|
+
this.slotSubscription = subscription;
|
|
3083
|
+
this.daemonOwnsFreshness = true;
|
|
3084
|
+
this.conn.notify("window/logMessage", {
|
|
3085
|
+
type: 3,
|
|
3086
|
+
message: `Vibgrate graph: freshness deferred to the local runtime (${repositoryId}).`
|
|
3087
|
+
});
|
|
3088
|
+
} catch {
|
|
3089
|
+
}
|
|
3090
|
+
}
|
|
3009
3091
|
/**
|
|
3010
3092
|
* The graph for a query. The first call still builds the map (there is
|
|
3011
3093
|
* nothing to answer from otherwise), but a *refresh* is only ever kicked off
|
|
@@ -3016,7 +3098,7 @@ var VibgrateLanguageServer = class {
|
|
|
3016
3098
|
async graphForQuery() {
|
|
3017
3099
|
await this.ensureGraph();
|
|
3018
3100
|
if (!this.graph) return null;
|
|
3019
|
-
await this.refresher.maybeRefresh();
|
|
3101
|
+
if (!this.daemonOwnsFreshness) await this.refresher.maybeRefresh();
|
|
3020
3102
|
return this.graph;
|
|
3021
3103
|
}
|
|
3022
3104
|
/**
|
|
@@ -3026,13 +3108,20 @@ var VibgrateLanguageServer = class {
|
|
|
3026
3108
|
*/
|
|
3027
3109
|
onRefreshSettled(outcome) {
|
|
3028
3110
|
if (outcome?.status !== "refreshed" || !outcome.wrote) return;
|
|
3111
|
+
this.reloadGraphFromDisk();
|
|
3112
|
+
}
|
|
3113
|
+
/**
|
|
3114
|
+
* Re-read the map we already have on disk. Shared by the local refresher and
|
|
3115
|
+
* by the daemon's `slot-changed` push, which are the only two things that
|
|
3116
|
+
* ever rewrite it — and never both at once.
|
|
3117
|
+
*/
|
|
3118
|
+
reloadGraphFromDisk() {
|
|
3029
3119
|
const graphPath = resolveGraphPath(this.opts.root);
|
|
3030
3120
|
const reloaded = loadGraphPreferIndex(this.opts.root, graphPath)?.graph ?? loadGraph(this.opts.root);
|
|
3031
|
-
if (reloaded)
|
|
3032
|
-
|
|
3033
|
-
|
|
3034
|
-
|
|
3035
|
-
}
|
|
3121
|
+
if (!reloaded) return;
|
|
3122
|
+
this.graph = reloaded;
|
|
3123
|
+
this.fileRoles = fileRolesFromParseCache(this.opts.root);
|
|
3124
|
+
this.refineAndPublishArchitecture();
|
|
3036
3125
|
}
|
|
3037
3126
|
/**
|
|
3038
3127
|
* Graph / AST-role refine can land after the first `publishScore()`. The
|
|
@@ -7525,7 +7614,7 @@ function registerCode(program) {
|
|
|
7525
7614
|
try {
|
|
7526
7615
|
const { parseMode: parseMode2, resolveMode: resolveMode2, readOrchestratorState: readOrchestratorState2, activePin: activePin2 } = await import('./model-orchestrator-LHYPJBFH.js');
|
|
7527
7616
|
const { gatherSystemMemory: gatherSystemMemory2 } = await import('./local-runtime-6SNWKSA7.js');
|
|
7528
|
-
const { loadGraph: loadGraph2 } = await import('./load-
|
|
7617
|
+
const { loadGraph: loadGraph2 } = await import('./load-4R4HYMBB.js');
|
|
7529
7618
|
const state = readOrchestratorState2();
|
|
7530
7619
|
const mode = parseMode2(modeFlag) ?? state.defaultMode ?? void 0;
|
|
7531
7620
|
const pin = mode ? activePin2(mode, state) : null;
|
|
@@ -7610,7 +7699,7 @@ function registerCode(program) {
|
|
|
7610
7699
|
if (!(process.stdin.isTTY && process.stdout.isTTY)) {
|
|
7611
7700
|
throw usageError('say what to change, e.g. `vg code "add a --timeout flag to the scan command"` (guided mode needs an interactive terminal)');
|
|
7612
7701
|
}
|
|
7613
|
-
const { runInteractive } = await import('./interactive-
|
|
7702
|
+
const { runInteractive } = await import('./interactive-2MK4TLRD.js');
|
|
7614
7703
|
await runInteractive(
|
|
7615
7704
|
rootOf(global),
|
|
7616
7705
|
global,
|
|
@@ -7640,7 +7729,7 @@ function registerCode(program) {
|
|
|
7640
7729
|
}
|
|
7641
7730
|
if (!instruction && !stdinFirstTurn) throw usageError('say what to change, e.g. `vg code "add a --timeout flag to the scan command"`');
|
|
7642
7731
|
{
|
|
7643
|
-
const { ensureCodeMap } = await import('./ensure-map-
|
|
7732
|
+
const { ensureCodeMap } = await import('./ensure-map-FHDJTO7Y.js');
|
|
7644
7733
|
const mapRoot = rootOf(global);
|
|
7645
7734
|
try {
|
|
7646
7735
|
await ensureCodeMap(mapRoot, global, {
|
|
@@ -7725,20 +7814,20 @@ function registerCode(program) {
|
|
|
7725
7814
|
process.stdout.write(JSON.stringify(line) + "\n");
|
|
7726
7815
|
};
|
|
7727
7816
|
try {
|
|
7728
|
-
const { RunOutcomeRecorder, newOneShotRunId, turnRunId } = await import('./run-outcome-
|
|
7817
|
+
const { RunOutcomeRecorder, newOneShotRunId, turnRunId } = await import('./run-outcome-H5GVDDZJ.js');
|
|
7729
7818
|
const primarySlug = route.providers[0]?.model.includes("/") ? route.providers[0].model.split("/")[0] : route.providers[0]?.id;
|
|
7730
|
-
const { runCodeStreamJson, parseHostMessage } = await import('./stream-json-
|
|
7731
|
-
const { nodeCodeFs } = await import('./session-
|
|
7819
|
+
const { runCodeStreamJson, parseHostMessage } = await import('./stream-json-4WLSUF6I.js');
|
|
7820
|
+
const { nodeCodeFs } = await import('./session-N5IU4K5Q.js');
|
|
7732
7821
|
const readline6 = await import('readline');
|
|
7733
7822
|
const child = await import('child_process');
|
|
7734
7823
|
const { loadOrDiscoverFederation } = await import('./federation-MDQPO3PW.js');
|
|
7735
7824
|
const { resolveExecutionEnv } = await import('./execution-env-4MS5AYAN.js');
|
|
7736
7825
|
const { resolveModelExecutionProfile, mergeModelExecutionProfile } = await import('./model-execution-profile-ELWF3Z6H.js');
|
|
7737
|
-
const { startCodeRuntimeSession } = await import('./runtime-session-
|
|
7738
|
-
const { resolveGraphBackend } = await import('./graph-backend-
|
|
7826
|
+
const { startCodeRuntimeSession } = await import('./runtime-session-JBIHHH5N.js');
|
|
7827
|
+
const { resolveGraphBackend } = await import('./graph-backend-W2D3HRRD.js');
|
|
7739
7828
|
const { detectGitRef } = await import('./git-ref-RSRAN4OH.js');
|
|
7740
7829
|
const { repositoryIdFromRoot } = await import('./paths-62AKTFSR.js');
|
|
7741
|
-
const { vgdRequest } = await import('./vgd-
|
|
7830
|
+
const { vgdRequest } = await import('./vgd-M7UOPWLB.js');
|
|
7742
7831
|
const federation = loadOrDiscoverFederation(root3);
|
|
7743
7832
|
const modelProfile = mergeModelExecutionProfile(
|
|
7744
7833
|
resolveModelExecutionProfile({
|
|
@@ -7796,7 +7885,7 @@ ${res.stderr}` : ""),
|
|
|
7796
7885
|
exitCode: res.status ?? 1
|
|
7797
7886
|
};
|
|
7798
7887
|
};
|
|
7799
|
-
const { createVgBuiltinMcpTools, mergeExternalToolsets } = await import('./vg-mcp-bridge-
|
|
7888
|
+
const { createVgBuiltinMcpTools, mergeExternalToolsets } = await import('./vg-mcp-bridge-KDVYIMFX.js');
|
|
7800
7889
|
const vgBuiltin = createVgBuiltinMcpTools({
|
|
7801
7890
|
getGraph: () => graph,
|
|
7802
7891
|
root: root3,
|
|
@@ -7841,7 +7930,7 @@ ${res.stderr}` : ""),
|
|
|
7841
7930
|
files,
|
|
7842
7931
|
indexFile: checkpointIndex
|
|
7843
7932
|
});
|
|
7844
|
-
const { loadApprovalRules, addApprovalRule, ruleForAction, ruleLabel } = await import('./approvals-
|
|
7933
|
+
const { loadApprovalRules, addApprovalRule, ruleForAction, ruleLabel } = await import('./approvals-TPQFQSWG.js');
|
|
7845
7934
|
const { loadProjectRules, nodeRulesReader } = await import('./rules-ASYEUNB5.js');
|
|
7846
7935
|
const projectRules = loadProjectRules(nodeRulesReader(root3));
|
|
7847
7936
|
if (projectRules.sources.length && !global.quiet) {
|
|
@@ -7899,8 +7988,8 @@ ${res.stderr}` : ""),
|
|
|
7899
7988
|
};
|
|
7900
7989
|
try {
|
|
7901
7990
|
if (opts.session) {
|
|
7902
|
-
const { runCodeStreamJsonSession, STREAM_JSON_PROTOCOL_VERSION } = await import('./stream-json-
|
|
7903
|
-
const { runAgent: runAgent2 } = await import('./agent-
|
|
7991
|
+
const { runCodeStreamJsonSession, STREAM_JSON_PROTOCOL_VERSION } = await import('./stream-json-4WLSUF6I.js');
|
|
7992
|
+
const { runAgent: runAgent2 } = await import('./agent-X6VYCE63.js');
|
|
7904
7993
|
const {
|
|
7905
7994
|
condenseSession,
|
|
7906
7995
|
loadLatestSession,
|
|
@@ -7911,7 +8000,7 @@ ${res.stderr}` : ""),
|
|
|
7911
8000
|
sessionsDir,
|
|
7912
8001
|
summarizeSession
|
|
7913
8002
|
} = await import('./session-store-AQUORKWB.js');
|
|
7914
|
-
const { VERSION: VERSION2 } = await import('./version-
|
|
8003
|
+
const { VERSION: VERSION2 } = await import('./version-DTEU3SQD.js');
|
|
7915
8004
|
const resumedRecord = typeof opts.continue === "string" ? loadSession(mainRoot, opts.continue) : opts.continue ? loadLatestSession(mainRoot) : void 0;
|
|
7916
8005
|
if (typeof opts.continue === "string" && !resumedRecord) {
|
|
7917
8006
|
emitStream({
|
|
@@ -8123,8 +8212,8 @@ ${res.stderr}` : ""),
|
|
|
8123
8212
|
if (!autonomous && !tty) {
|
|
8124
8213
|
throw usageError("the agent approves each edit/command \u2014 run in a terminal to approve interactively, or pass --auto to run autonomously (or --single for a one-shot diff).");
|
|
8125
8214
|
}
|
|
8126
|
-
const { agentTask } = await import('./interactive-
|
|
8127
|
-
const { nodeCodeFs } = await import('./session-
|
|
8215
|
+
const { agentTask } = await import('./interactive-2MK4TLRD.js');
|
|
8216
|
+
const { nodeCodeFs } = await import('./session-N5IU4K5Q.js');
|
|
8128
8217
|
const { TtyPrompter } = await import('./ui-K7D3BCHD.js');
|
|
8129
8218
|
let priorSummary;
|
|
8130
8219
|
let priorInstruction;
|
|
@@ -8139,7 +8228,7 @@ ${res.stderr}` : ""),
|
|
|
8139
8228
|
}
|
|
8140
8229
|
}
|
|
8141
8230
|
const prompter = tty ? new TtyPrompter() : void 0;
|
|
8142
|
-
const { createVgBuiltinMcpTools, mergeExternalToolsets } = await import('./vg-mcp-bridge-
|
|
8231
|
+
const { createVgBuiltinMcpTools, mergeExternalToolsets } = await import('./vg-mcp-bridge-KDVYIMFX.js');
|
|
8143
8232
|
const vgBuiltin = createVgBuiltinMcpTools({
|
|
8144
8233
|
getGraph: () => graph,
|
|
8145
8234
|
root: root3,
|
|
@@ -8163,11 +8252,11 @@ ${res.stderr}` : ""),
|
|
|
8163
8252
|
const { loadFederation } = await import('./federation-MDQPO3PW.js');
|
|
8164
8253
|
const { resolveExecutionEnv } = await import('./execution-env-4MS5AYAN.js');
|
|
8165
8254
|
const { resolveModelExecutionProfile, mergeModelExecutionProfile } = await import('./model-execution-profile-ELWF3Z6H.js');
|
|
8166
|
-
const { startCodeRuntimeSession } = await import('./runtime-session-
|
|
8167
|
-
const { resolveGraphBackend } = await import('./graph-backend-
|
|
8255
|
+
const { startCodeRuntimeSession } = await import('./runtime-session-JBIHHH5N.js');
|
|
8256
|
+
const { resolveGraphBackend } = await import('./graph-backend-W2D3HRRD.js');
|
|
8168
8257
|
const { detectGitRef } = await import('./git-ref-RSRAN4OH.js');
|
|
8169
8258
|
const { repositoryIdFromRoot } = await import('./paths-62AKTFSR.js');
|
|
8170
|
-
const { vgdRequest } = await import('./vgd-
|
|
8259
|
+
const { vgdRequest } = await import('./vgd-M7UOPWLB.js');
|
|
8171
8260
|
const federation = loadFederation(root3);
|
|
8172
8261
|
const modelProfile = mergeModelExecutionProfile(
|
|
8173
8262
|
resolveModelExecutionProfile({
|
|
@@ -9351,7 +9440,7 @@ var initCommand = new Command("init").description("Initialize vibgrate in a proj
|
|
|
9351
9440
|
console.log(chalk7.green("\u2714") + ` Created ${chalk7.bold("vibgrate.config.ts")}`);
|
|
9352
9441
|
}
|
|
9353
9442
|
if (opts.baseline) {
|
|
9354
|
-
const { runBaseline } = await import('./baseline-
|
|
9443
|
+
const { runBaseline } = await import('./baseline-DXI64VLW.js');
|
|
9355
9444
|
await runBaseline(rootDir);
|
|
9356
9445
|
}
|
|
9357
9446
|
console.log("");
|
|
@@ -9882,6 +9971,36 @@ function reportStandards(rootDir) {
|
|
|
9882
9971
|
console.log(` ${chalk7.red("banned")} ${v.ecosystem}:${v.name}${v.installed ? chalk7.dim(` ${v.installed}`) : ""}${fix}${why}`);
|
|
9883
9972
|
}
|
|
9884
9973
|
}
|
|
9974
|
+
async function printRuntimeSnapshot(rootDir, opts, already) {
|
|
9975
|
+
try {
|
|
9976
|
+
const { attachVgd: attachVgd2 } = await import('./attach-G5JUIWIT.js');
|
|
9977
|
+
const { vgdRequest } = await import('./client-UQIELEEZ.js');
|
|
9978
|
+
const { formatSemanticProgress } = await import('./semantic-status-2JFLIQQJ.js');
|
|
9979
|
+
let repositoryId = already?.repositoryId;
|
|
9980
|
+
let socketPath = already?.socketPath;
|
|
9981
|
+
if (!repositoryId || !socketPath) {
|
|
9982
|
+
const attached = await attachVgd2(rootDir, {
|
|
9983
|
+
disabled: opts.daemon === false,
|
|
9984
|
+
autoStart: false,
|
|
9985
|
+
publish: false
|
|
9986
|
+
});
|
|
9987
|
+
if (attached.status !== "attached" || !attached.repositoryId || !attached.socketPath) return;
|
|
9988
|
+
repositoryId = attached.repositoryId;
|
|
9989
|
+
socketPath = attached.socketPath;
|
|
9990
|
+
}
|
|
9991
|
+
const semantic = await vgdRequest({ op: "embed-status", repositoryId }, { socketPath });
|
|
9992
|
+
if (!semantic.ok || !("semantic" in semantic)) return;
|
|
9993
|
+
const slot = semantic.semantic.slots.find((s) => s.repositoryId === repositoryId) ?? semantic.semantic.slots[0];
|
|
9994
|
+
if (!slot) {
|
|
9995
|
+
if (semantic.semantic.worker === "unavailable" && semantic.semantic.reason) {
|
|
9996
|
+
console.error(chalk7.dim(` \xB7 semantic \xB7 ${semantic.semantic.reason}`));
|
|
9997
|
+
}
|
|
9998
|
+
return;
|
|
9999
|
+
}
|
|
10000
|
+
console.error(chalk7.dim(` \xB7 ${formatSemanticProgress(slot)}`));
|
|
10001
|
+
} catch {
|
|
10002
|
+
}
|
|
10003
|
+
}
|
|
9885
10004
|
function parseNonNegativeNumber(value, label) {
|
|
9886
10005
|
if (value === void 0) return void 0;
|
|
9887
10006
|
const parsed = Number(value);
|
|
@@ -9980,6 +10099,7 @@ var scanCommand = new Command("scan").description("Scan a project for upgrade dr
|
|
|
9980
10099
|
console.error(chalk7.red("Repository unchanged but no previous ingest id available."));
|
|
9981
10100
|
process.exit(1);
|
|
9982
10101
|
}
|
|
10102
|
+
await printRuntimeSnapshot(rootDir, opts);
|
|
9983
10103
|
return;
|
|
9984
10104
|
}
|
|
9985
10105
|
}
|
|
@@ -10062,10 +10182,10 @@ var scanCommand = new Command("scan").description("Scan a project for upgrade dr
|
|
|
10062
10182
|
const advanced = await loadAdvancedScanHook();
|
|
10063
10183
|
const artifact = await runCoreScan(rootDir, scanOpts, advanced);
|
|
10064
10184
|
if (wantGraph && builtGraph) {
|
|
10065
|
-
const { attachVgd: attachVgd2 } = await import('./attach-
|
|
10185
|
+
const { attachVgd: attachVgd2 } = await import('./attach-G5JUIWIT.js');
|
|
10066
10186
|
const { ActivityLog: ActivityLog2 } = await import('./activity-MF2GNYAI.js');
|
|
10067
10187
|
const activity = new ActivityLog2();
|
|
10068
|
-
await activity.time(
|
|
10188
|
+
const attached = await activity.time(
|
|
10069
10189
|
"attach",
|
|
10070
10190
|
() => attachVgd2(rootDir, { disabled: opts.daemon === false }),
|
|
10071
10191
|
(a) => {
|
|
@@ -10074,7 +10194,7 @@ var scanCommand = new Command("scan").description("Scan a project for upgrade dr
|
|
|
10074
10194
|
if (a.published?.status === "published") {
|
|
10075
10195
|
return {
|
|
10076
10196
|
outcome: "ok",
|
|
10077
|
-
detail: `${started} \xB7 map published ${a.published.gitRef} \xB7 ${a.published.nodeCount} nodes
|
|
10197
|
+
detail: `${started} \xB7 map published ${a.published.gitRef} \xB7 ${a.published.nodeCount} nodes`
|
|
10078
10198
|
};
|
|
10079
10199
|
}
|
|
10080
10200
|
return { outcome: "ok", detail: started };
|
|
@@ -10082,6 +10202,12 @@ var scanCommand = new Command("scan").description("Scan a project for upgrade dr
|
|
|
10082
10202
|
);
|
|
10083
10203
|
if (!opts.quiet && opts.format !== "json") {
|
|
10084
10204
|
for (const line of activity.render()) console.error(line);
|
|
10205
|
+
if (attached.status === "attached") {
|
|
10206
|
+
await printRuntimeSnapshot(rootDir, opts, {
|
|
10207
|
+
repositoryId: attached.repositoryId,
|
|
10208
|
+
socketPath: attached.socketPath
|
|
10209
|
+
});
|
|
10210
|
+
}
|
|
10085
10211
|
}
|
|
10086
10212
|
}
|
|
10087
10213
|
emitDriftScoreLine(artifact.drift.score);
|
|
@@ -10962,7 +11088,7 @@ ${String(err)}` }));
|
|
|
10962
11088
|
async function releaseWindowsFileLocks(cwd, keepVersion) {
|
|
10963
11089
|
reapAndReport(cwd, keepVersion);
|
|
10964
11090
|
try {
|
|
10965
|
-
const { vgdSocketPath } = await import('./vgd-
|
|
11091
|
+
const { vgdSocketPath } = await import('./vgd-M7UOPWLB.js');
|
|
10966
11092
|
const result = await stopVgd(vgdSocketPath());
|
|
10967
11093
|
if (result === "stopped") {
|
|
10968
11094
|
console.log(chalk7.dim("Stopped the vgd daemon so its files can be replaced \u2014 it restarts on the next command."));
|
|
@@ -11088,7 +11214,7 @@ var updateCommand = new Command("update").description("Update vibgrate to the la
|
|
|
11088
11214
|
);
|
|
11089
11215
|
async function rewarmVgdAndReport(cwd) {
|
|
11090
11216
|
try {
|
|
11091
|
-
const { vgdIsRunning, vgdRequest } = await import('./vgd-
|
|
11217
|
+
const { vgdIsRunning, vgdRequest } = await import('./vgd-M7UOPWLB.js');
|
|
11092
11218
|
if (!await vgdIsRunning()) return;
|
|
11093
11219
|
const loaded = await vgdRequest({ op: "load-graph", root: cwd });
|
|
11094
11220
|
if (!loaded.ok || !("stored" in loaded)) return;
|