@lzehrung/codegraph 2.3.5 → 2.3.7
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/README.md +8 -7
- package/codegraph-skill/codegraph/SKILL.md +5 -3
- package/dist/agent/explore.d.ts.map +1 -1
- package/dist/agent/explore.js +0 -2
- package/dist/agent/explore.js.map +1 -1
- package/dist/agent/orient.js +1 -1
- package/dist/agent/orient.js.map +1 -1
- package/dist/bin/cli.js +174 -50
- package/dist/cli/help.d.ts +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +4 -4
- package/dist/cli/orient.d.ts.map +1 -1
- package/dist/cli/orient.js +5 -8
- package/dist/cli/orient.js.map +1 -1
- package/dist/indexer/build-index.d.ts.map +1 -1
- package/dist/indexer/build-index.js +77 -16
- package/dist/indexer/build-index.js.map +1 -1
- package/dist/indexer/finalize.d.ts.map +1 -1
- package/dist/indexer/finalize.js +7 -2
- package/dist/indexer/finalize.js.map +1 -1
- package/dist/indexer/types.d.ts +2 -0
- package/dist/indexer/types.d.ts.map +1 -1
- package/dist/lifecycle/manifest.d.ts.map +1 -1
- package/dist/lifecycle/manifest.js +51 -1
- package/dist/lifecycle/manifest.js.map +1 -1
- package/dist/util/git.d.ts +13 -0
- package/dist/util/git.d.ts.map +1 -1
- package/dist/util/git.js +37 -0
- package/dist/util/git.js.map +1 -1
- package/dist/util/projectFiles.d.ts +6 -3
- package/dist/util/projectFiles.d.ts.map +1 -1
- package/dist/util/projectFiles.js +14 -27
- package/dist/util/projectFiles.js.map +1 -1
- package/package.json +3 -3
package/dist/bin/cli.js
CHANGED
|
@@ -13534,6 +13534,7 @@ __export(git_exports, {
|
|
|
13534
13534
|
isGitWorktreeSentinel: () => isGitWorktreeSentinel,
|
|
13535
13535
|
listChangedFiles: () => listChangedFiles,
|
|
13536
13536
|
listGitExcludeFiles: () => listGitExcludeFiles,
|
|
13537
|
+
listGitIgnoreFiles: () => listGitIgnoreFiles,
|
|
13537
13538
|
listGitSubmoduleDirectories: () => listGitSubmoduleDirectories,
|
|
13538
13539
|
listTrackedFiles: () => listTrackedFiles,
|
|
13539
13540
|
listUntrackedFiles: () => listUntrackedFiles,
|
|
@@ -13969,6 +13970,32 @@ async function listTrackedFiles(projectRoot, opts) {
|
|
|
13969
13970
|
throw createGitError(projectRoot, args, error51);
|
|
13970
13971
|
}
|
|
13971
13972
|
}
|
|
13973
|
+
async function listGitIgnoreFiles(projectRoot, opts) {
|
|
13974
|
+
if (!(opts?.gitAvailable ?? true))
|
|
13975
|
+
return [];
|
|
13976
|
+
const pathspec = [".gitignore", ":(glob)**/.gitignore"];
|
|
13977
|
+
const commands = [
|
|
13978
|
+
["ls-files", "--cached", "-z", "--", ...pathspec],
|
|
13979
|
+
["ls-files", "--others", "--exclude-standard", "-z", "--", ...pathspec],
|
|
13980
|
+
["ls-files", "--others", "--ignored", "--exclude-standard", "-z", "--", ...pathspec]
|
|
13981
|
+
];
|
|
13982
|
+
const results = await Promise.all(commands.map(async (args) => {
|
|
13983
|
+
try {
|
|
13984
|
+
return await runGit(projectRoot, args, { maxBuffer: 64 * 1024 * 1024 });
|
|
13985
|
+
} catch (error51) {
|
|
13986
|
+
throw createGitError(projectRoot, args, error51);
|
|
13987
|
+
}
|
|
13988
|
+
}));
|
|
13989
|
+
const out = [];
|
|
13990
|
+
for (const { stdout } of results) {
|
|
13991
|
+
for (const rel of stdout.split("\0").filter(Boolean)) {
|
|
13992
|
+
const abs = resolveGitListedPath(projectRoot, rel);
|
|
13993
|
+
if (abs)
|
|
13994
|
+
out.push(abs);
|
|
13995
|
+
}
|
|
13996
|
+
}
|
|
13997
|
+
return Array.from(new Set(out));
|
|
13998
|
+
}
|
|
13972
13999
|
async function listGitSubmoduleDirectories(projectRoot, opts) {
|
|
13973
14000
|
if (!(opts?.gitAvailable ?? true))
|
|
13974
14001
|
return [];
|
|
@@ -14380,24 +14407,24 @@ function collectCandidateAncestorDirectories(root, files) {
|
|
|
14380
14407
|
}
|
|
14381
14408
|
return directories;
|
|
14382
14409
|
}
|
|
14383
|
-
async function findGitIgnoreSources(sourceRoots
|
|
14410
|
+
async function findGitIgnoreSources(sourceRoots) {
|
|
14384
14411
|
const roots = Array.from(new Map(sourceRoots.map(({ path: sourceRoot, repositoryRoot }) => [
|
|
14385
14412
|
fileIdentityKey(sourceRoot),
|
|
14386
14413
|
{ path: normalizePath(sourceRoot), repositoryRoot: normalizePath(repositoryRoot) }
|
|
14387
14414
|
])).values());
|
|
14388
14415
|
const sources = [];
|
|
14389
14416
|
for (const { path: sourceRoot, repositoryRoot } of roots) {
|
|
14390
|
-
const
|
|
14391
|
-
|
|
14392
|
-
|
|
14393
|
-
|
|
14394
|
-
|
|
14395
|
-
|
|
14396
|
-
|
|
14397
|
-
|
|
14398
|
-
|
|
14399
|
-
|
|
14400
|
-
sources.push(...
|
|
14417
|
+
const [gitignoreFiles, excludeFiles] = await Promise.all([
|
|
14418
|
+
listGitIgnoreFiles(sourceRoot),
|
|
14419
|
+
listGitExcludeFiles(sourceRoot)
|
|
14420
|
+
]);
|
|
14421
|
+
sources.push(...gitignoreFiles.map((file2) => ({
|
|
14422
|
+
file: file2,
|
|
14423
|
+
baseDir: path9.dirname(file2),
|
|
14424
|
+
repositoryRoot,
|
|
14425
|
+
priority: 2
|
|
14426
|
+
})));
|
|
14427
|
+
sources.push(...excludeFiles.map((source) => ({
|
|
14401
14428
|
...source,
|
|
14402
14429
|
repositoryRoot: source.baseDir
|
|
14403
14430
|
})));
|
|
@@ -14428,13 +14455,6 @@ async function listGitCandidateFiles(root, logLevel) {
|
|
|
14428
14455
|
const rawFiles = Array.from(/* @__PURE__ */ new Set([...tracked, ...untracked, ...submoduleUntracked.flat()])).sort();
|
|
14429
14456
|
const needsLogicalRemap = normalizePath(gitRoot) !== normalizePath(root);
|
|
14430
14457
|
const files = Array.from(new Set(rawFiles.map((file2) => needsLogicalRemap && isFilePathWithinRoot(realRoot, file2) ? normalizePath(path9.resolve(root, path9.relative(realRoot, file2))) : normalizePath(file2)))).sort();
|
|
14431
|
-
const physicalFiles = normalizePath(root) === realRoot ? [] : (await mapLimitSemaphore(files, REALPATH_FILTER_CONCURRENCY, async (file2) => {
|
|
14432
|
-
try {
|
|
14433
|
-
return normalizePath(await fsp5.realpath(file2));
|
|
14434
|
-
} catch {
|
|
14435
|
-
return null;
|
|
14436
|
-
}
|
|
14437
|
-
})).filter((file2) => file2 !== null);
|
|
14438
14458
|
const gitignoreRoots = [gitRepositoryRoot, ...submoduleRoots.map(({ physicalPath }) => physicalPath)].map(normalizePath);
|
|
14439
14459
|
const sourceRoots = [
|
|
14440
14460
|
{ path: root, repositoryRoot: gitRepositoryRoot },
|
|
@@ -14447,7 +14467,7 @@ async function listGitCandidateFiles(root, logLevel) {
|
|
|
14447
14467
|
];
|
|
14448
14468
|
return {
|
|
14449
14469
|
files,
|
|
14450
|
-
gitignoreFiles: await findGitIgnoreSources(sourceRoots
|
|
14470
|
+
gitignoreFiles: await findGitIgnoreSources(sourceRoots),
|
|
14451
14471
|
gitignoreRoots,
|
|
14452
14472
|
gitignoreAliases: sourceRoots
|
|
14453
14473
|
};
|
|
@@ -53074,12 +53094,17 @@ var init_parsed_cache = __esm({
|
|
|
53074
53094
|
// dist/indexer/finalize.js
|
|
53075
53095
|
import { performance as performance2 } from "node:perf_hooks";
|
|
53076
53096
|
async function finalizeProjectIndex(args) {
|
|
53077
|
-
|
|
53078
|
-
|
|
53097
|
+
const discoveryTimings = args.opts?.report ? args.opts.report.timings ??= {} : void 0;
|
|
53098
|
+
const metadataDiscoveryStart = args.projectFiles === void 0 ? performance2.now() : void 0;
|
|
53079
53099
|
const projectFiles = await (args.projectFiles ?? discoverProjectFilesWithGitCandidates(args.projectRoot, {
|
|
53080
53100
|
...args.opts?.logLevel ? { logLevel: args.opts.logLevel } : {},
|
|
53081
53101
|
...args.knownGitCandidates !== void 0 ? { knownGitCandidates: args.knownGitCandidates } : {}
|
|
53082
53102
|
}));
|
|
53103
|
+
if (metadataDiscoveryStart !== void 0 && discoveryTimings) {
|
|
53104
|
+
discoveryTimings.metadataDiscoveryMs = Math.round(performance2.now() - metadataDiscoveryStart);
|
|
53105
|
+
}
|
|
53106
|
+
if (args.timings)
|
|
53107
|
+
args.timings.totalMs = Math.round(performance2.now() - args.totalStart);
|
|
53083
53108
|
const languageExtensions = normalizeLanguageExtensions(args.opts?.languageExtensions);
|
|
53084
53109
|
const parsed = retainedParsedCache(args.parsedMap, args.opts);
|
|
53085
53110
|
return {
|
|
@@ -55698,6 +55723,7 @@ async function buildIndexFromFileListShared(projectRoot, rawFiles, opts, helperO
|
|
|
55698
55723
|
}
|
|
55699
55724
|
}
|
|
55700
55725
|
async function buildProjectIndexWithManifestOptions(projectRoot, opts, helperOpts) {
|
|
55726
|
+
const timings = opts?.report ? opts.report.timings ??= {} : void 0;
|
|
55701
55727
|
await initializeFileIdentityCaseSensitivity(projectRoot);
|
|
55702
55728
|
try {
|
|
55703
55729
|
const useDiskCache = (opts?.cache ?? "off") === "disk";
|
|
@@ -55717,6 +55743,7 @@ async function buildProjectIndexWithManifestOptions(projectRoot, opts, helperOpt
|
|
|
55717
55743
|
const onDiscoveryProgress = helperOpts?.reportDiscoveryProgress ? (progress) => emitIndexCheckActivity(opts, progress.activity, progress.current, progress.total) : void 0;
|
|
55718
55744
|
if (helperOpts?.reportDiscoveryProgress)
|
|
55719
55745
|
emitIndexCheckActivity(opts, "Discovering source files");
|
|
55746
|
+
const sourceDiscoveryStart = performance5.now();
|
|
55720
55747
|
const discoveredFiles = await listProjectFilesWithGitCandidates(projectRoot, projectPatternsForLanguageExtensions(opts), {
|
|
55721
55748
|
...opts?.discovery,
|
|
55722
55749
|
...opts?.logLevel ? { logLevel: opts.logLevel } : {},
|
|
@@ -55725,6 +55752,8 @@ async function buildProjectIndexWithManifestOptions(projectRoot, opts, helperOpt
|
|
|
55725
55752
|
onGitCandidatesDiscovered,
|
|
55726
55753
|
...onDiscoveryProgress ? { onDiscoveryProgress } : {}
|
|
55727
55754
|
});
|
|
55755
|
+
if (timings)
|
|
55756
|
+
timings.sourceDiscoveryMs = Math.round(performance5.now() - sourceDiscoveryStart);
|
|
55728
55757
|
const additionalFileCandidates = await normalizeIndexedFileInputsWithinRoot(projectRoot, opts?.additionalFiles ?? [], "Additional index file");
|
|
55729
55758
|
const additionalFileExistence = await probePathExistence(additionalFileCandidates, buildConcurrency(opts));
|
|
55730
55759
|
const additionalFiles = additionalFileCandidates.filter((file2) => additionalFileExistence.get(file2));
|
|
@@ -55733,12 +55762,15 @@ async function buildProjectIndexWithManifestOptions(projectRoot, opts, helperOpt
|
|
|
55733
55762
|
const transientFiles = additionalFiles.filter((file2) => !discoveredFileSet.has(file2));
|
|
55734
55763
|
if (helperOpts?.reportDiscoveryProgress)
|
|
55735
55764
|
emitIndexCheckActivity(opts, "Discovering project metadata");
|
|
55765
|
+
const metadataDiscoveryStart = performance5.now();
|
|
55736
55766
|
const projectFiles = await discoverProjectFilesWithGitCandidates(projectRoot, {
|
|
55737
55767
|
...opts?.logLevel ? { logLevel: opts.logLevel } : {},
|
|
55738
55768
|
...discoveredSymlinkDirectories !== void 0 ? { knownSymlinkDirectories: discoveredSymlinkDirectories } : {},
|
|
55739
55769
|
...discoveredGitCandidates !== void 0 ? { knownGitCandidates: discoveredGitCandidates } : {},
|
|
55740
55770
|
...onDiscoveryProgress ? { onDiscoveryProgress } : {}
|
|
55741
55771
|
});
|
|
55772
|
+
if (timings)
|
|
55773
|
+
timings.metadataDiscoveryMs = Math.round(performance5.now() - metadataDiscoveryStart);
|
|
55742
55774
|
return await buildIndexFromFileListShared(projectRoot, files, opts, {
|
|
55743
55775
|
manifestMode: useDiskCache ? "read-write" : "off",
|
|
55744
55776
|
warnNoFilesMessage: `Warning: No files found in project root: ${projectRoot}. Check codegraph.config.json globs and CLI --include-glob/--ignore-glob filters. Diagnostic: codegraph doctor`,
|
|
@@ -55794,6 +55826,7 @@ async function buildProjectIndexIncremental(projectRoot, opts) {
|
|
|
55794
55826
|
if (strictIncremental && graphOptions.fast)
|
|
55795
55827
|
graphOptions.fast = false;
|
|
55796
55828
|
const { normalizedProjectRoot, report, timings, totalStart, cacheMode, cacheEnabled, onFallbackImportExtraction } = createIndexBuildRunState(projectRoot, opts, graphOptions);
|
|
55829
|
+
const discoveryTimings = opts?.report ? opts.report.timings ??= {} : void 0;
|
|
55797
55830
|
let checkProgressActive = false;
|
|
55798
55831
|
const startCheckProgress = () => {
|
|
55799
55832
|
if (checkProgressActive)
|
|
@@ -55886,13 +55919,31 @@ async function buildProjectIndexIncremental(projectRoot, opts) {
|
|
|
55886
55919
|
const hasExplicitGitRange = !!opts?.gitBase || !!opts?.gitHead;
|
|
55887
55920
|
const shouldDiffAgainstWorkingTree = !hasExplicitGitRange && gitAvailable && !!manifest.lastCommit;
|
|
55888
55921
|
const canReuseReconciliation = opts?.reconciledManifestUpdatedAt === manifest.updatedAt;
|
|
55922
|
+
let sourceDiscoveryMs = 0;
|
|
55923
|
+
let sourceDiscoveryPerformed = false;
|
|
55924
|
+
const measureSourceDiscovery = async (operation) => {
|
|
55925
|
+
if (!discoveryTimings || opts?.filesAreProjectScope)
|
|
55926
|
+
return await operation();
|
|
55927
|
+
sourceDiscoveryPerformed = true;
|
|
55928
|
+
const start = performance5.now();
|
|
55929
|
+
try {
|
|
55930
|
+
return await operation();
|
|
55931
|
+
} finally {
|
|
55932
|
+
sourceDiscoveryMs += performance5.now() - start;
|
|
55933
|
+
}
|
|
55934
|
+
};
|
|
55889
55935
|
let manifestDiffFiles = [];
|
|
55890
55936
|
if (shouldDiffAgainstWorkingTree) {
|
|
55891
55937
|
try {
|
|
55892
|
-
|
|
55893
|
-
|
|
55894
|
-
|
|
55895
|
-
}
|
|
55938
|
+
const reconciledWorkingTreeDiffFiles = canReuseReconciliation ? opts?.reconciledWorkingTreeDiffFiles : void 0;
|
|
55939
|
+
if (reconciledWorkingTreeDiffFiles !== void 0) {
|
|
55940
|
+
manifestDiffFiles = reconciledWorkingTreeDiffFiles;
|
|
55941
|
+
} else {
|
|
55942
|
+
manifestDiffFiles = await measureSourceDiscovery(() => listChangedFiles(projectRoot, {
|
|
55943
|
+
base: manifest.lastCommit,
|
|
55944
|
+
head: "WORKTREE"
|
|
55945
|
+
}));
|
|
55946
|
+
}
|
|
55896
55947
|
} catch (error51) {
|
|
55897
55948
|
if (!isMissingGitRevisionError(error51))
|
|
55898
55949
|
throw error51;
|
|
@@ -55937,13 +55988,21 @@ async function buildProjectIndexIncremental(projectRoot, opts) {
|
|
|
55937
55988
|
const previousTransientFiles = sanitizeManifestTransientFilesForRoot(projectRoot, projectRoot, manifest.transientFiles).filter((file2) => Object.hasOwn(trackedEntries, file2));
|
|
55938
55989
|
const previousTransientFileSet = new Set(previousTransientFiles);
|
|
55939
55990
|
const needsGitScan = !!opts?.gitBase || !!opts?.changedSince;
|
|
55940
|
-
|
|
55991
|
+
let gitFiles = [];
|
|
55992
|
+
if (needsGitScan) {
|
|
55993
|
+
gitFiles = await measureSourceDiscovery(() => listChangedFiles(projectRoot, buildIncrementalGitDiffOptions(opts)));
|
|
55994
|
+
}
|
|
55941
55995
|
let untrackedFiles = [];
|
|
55942
55996
|
let rediscoveredFiles = [];
|
|
55943
55997
|
let discoveredGitCandidates;
|
|
55944
55998
|
if (canUseIncrementalDiscoveryFastPath(gitAvailable, opts?.cacheStrict)) {
|
|
55945
55999
|
try {
|
|
55946
|
-
|
|
56000
|
+
const reconciledUntrackedFiles = canReuseReconciliation ? opts?.reconciledUntrackedFiles : void 0;
|
|
56001
|
+
if (reconciledUntrackedFiles !== void 0) {
|
|
56002
|
+
untrackedFiles = reconciledUntrackedFiles;
|
|
56003
|
+
} else {
|
|
56004
|
+
untrackedFiles = await measureSourceDiscovery(() => listUntrackedProjectFiles(projectRoot, opts?.discovery, gitAvailable));
|
|
56005
|
+
}
|
|
55947
56006
|
} catch (error51) {
|
|
55948
56007
|
if (manifestReport) {
|
|
55949
56008
|
manifestReport.reason = "gitUntrackedScanFailed";
|
|
@@ -55956,14 +56015,17 @@ async function buildProjectIndexIncremental(projectRoot, opts) {
|
|
|
55956
56015
|
});
|
|
55957
56016
|
}
|
|
55958
56017
|
} else if (!opts?.filesAreProjectScope) {
|
|
55959
|
-
rediscoveredFiles = await listProjectFilesWithGitCandidates(projectRoot, projectPatternsForLanguageExtensions(opts), {
|
|
56018
|
+
rediscoveredFiles = await measureSourceDiscovery(() => listProjectFilesWithGitCandidates(projectRoot, projectPatternsForLanguageExtensions(opts), {
|
|
55960
56019
|
...opts?.discovery,
|
|
55961
56020
|
...opts?.logLevel ? { logLevel: opts.logLevel } : {},
|
|
55962
56021
|
...!opts?.cacheStrict && manifest.symlinkDirectories !== void 0 ? { knownSymlinkDirectories: manifest.symlinkDirectories } : {},
|
|
55963
56022
|
onGitCandidatesDiscovered: (candidates) => {
|
|
55964
56023
|
discoveredGitCandidates = candidates;
|
|
55965
56024
|
}
|
|
55966
|
-
});
|
|
56025
|
+
}));
|
|
56026
|
+
}
|
|
56027
|
+
if (discoveryTimings && sourceDiscoveryPerformed) {
|
|
56028
|
+
discoveryTimings.sourceDiscoveryMs = Math.round(sourceDiscoveryMs);
|
|
55967
56029
|
}
|
|
55968
56030
|
const candidateFiles = [
|
|
55969
56031
|
...explicitFiles,
|
|
@@ -56062,10 +56124,16 @@ async function buildProjectIndexIncremental(projectRoot, opts) {
|
|
|
56062
56124
|
if (!snapshotLoad)
|
|
56063
56125
|
return null;
|
|
56064
56126
|
const snapshot = snapshotLoad.index;
|
|
56065
|
-
snapshot.
|
|
56066
|
-
|
|
56067
|
-
|
|
56068
|
-
|
|
56127
|
+
snapshot.manifestSignaturesFresh = false;
|
|
56128
|
+
if (snapshot.projectFiles === void 0) {
|
|
56129
|
+
const metadataDiscoveryStart = performance5.now();
|
|
56130
|
+
snapshot.projectFiles = await discoverProjectFilesWithGitCandidates(projectRoot, {
|
|
56131
|
+
...opts?.logLevel ? { logLevel: opts.logLevel } : {},
|
|
56132
|
+
...discoveredGitCandidates !== void 0 ? { knownGitCandidates: discoveredGitCandidates } : {}
|
|
56133
|
+
});
|
|
56134
|
+
if (discoveryTimings)
|
|
56135
|
+
discoveryTimings.metadataDiscoveryMs = Math.round(performance5.now() - metadataDiscoveryStart);
|
|
56136
|
+
}
|
|
56069
56137
|
if (opts?.cache) {
|
|
56070
56138
|
snapshot.cacheMode = opts.cache;
|
|
56071
56139
|
snapshot.cacheRootDir = cacheRoot(projectRoot, opts);
|
|
@@ -56350,6 +56418,17 @@ async function buildProjectIndexIncremental(projectRoot, opts) {
|
|
|
56350
56418
|
edges: []
|
|
56351
56419
|
});
|
|
56352
56420
|
}
|
|
56421
|
+
for (const [file2, entry] of manifestEntries) {
|
|
56422
|
+
const signature = fileSignatures.get(file2);
|
|
56423
|
+
if (!signature)
|
|
56424
|
+
continue;
|
|
56425
|
+
const { gitSig: _previousGitSig, ...entryWithoutGitSig } = entry;
|
|
56426
|
+
manifestEntries.set(file2, {
|
|
56427
|
+
...entryWithoutGitSig,
|
|
56428
|
+
sig: signature.sig,
|
|
56429
|
+
...signature.gitSig ? { gitSig: signature.gitSig } : {}
|
|
56430
|
+
});
|
|
56431
|
+
}
|
|
56353
56432
|
await writeIndexManifestSnapshot({
|
|
56354
56433
|
projectRoot,
|
|
56355
56434
|
opts,
|
|
@@ -58577,7 +58656,7 @@ async function buildLifecycleManifest(root, buildOptions, existing, options = {}
|
|
|
58577
58656
|
configHash: await hashConfig(root, buildOptions?.logLevel),
|
|
58578
58657
|
buildOptionsHash: hashBuildOptions(buildOptions),
|
|
58579
58658
|
fileCount: snapshot.files.length,
|
|
58580
|
-
fileSignatureHash: await hashDiscoveredFiles(snapshot.files, root),
|
|
58659
|
+
fileSignatureHash: hashManifestEntries(snapshot.files, root, snapshot.index.manifestEntries, snapshot.index.manifestSignaturesFresh) ?? await hashDiscoveredFiles(snapshot.files, root),
|
|
58581
58660
|
files: discoveredFileRelativePaths(snapshot.files, root),
|
|
58582
58661
|
analysis: snapshot.analysis
|
|
58583
58662
|
};
|
|
@@ -58653,6 +58732,56 @@ function isMissingStatRace2(error51) {
|
|
|
58653
58732
|
return false;
|
|
58654
58733
|
return error51.code === "ENOENT" || error51.code === "ENOTDIR";
|
|
58655
58734
|
}
|
|
58735
|
+
function hashManifestEntries(files, root, entries, signaturesFresh) {
|
|
58736
|
+
if (!signaturesFresh || !entries || entries.size !== files.length)
|
|
58737
|
+
return void 0;
|
|
58738
|
+
const sorted = [...files].sort((left, right) => left.localeCompare(right));
|
|
58739
|
+
const signatures = /* @__PURE__ */ new Map();
|
|
58740
|
+
for (const file2 of sorted) {
|
|
58741
|
+
const entry = entries.get(file2);
|
|
58742
|
+
const signature = parseLifecycleFileSignature(entry?.sig);
|
|
58743
|
+
if (!signature)
|
|
58744
|
+
return void 0;
|
|
58745
|
+
signatures.set(file2, signature);
|
|
58746
|
+
}
|
|
58747
|
+
const hash2 = createHash4("sha256");
|
|
58748
|
+
for (const file2 of sorted) {
|
|
58749
|
+
const signature = signatures.get(file2);
|
|
58750
|
+
if (!signature)
|
|
58751
|
+
return void 0;
|
|
58752
|
+
const relative = path51.relative(root, file2).replace(/\\/g, "/");
|
|
58753
|
+
hash2.update(relative);
|
|
58754
|
+
hash2.update("\0");
|
|
58755
|
+
hash2.update(signature.size);
|
|
58756
|
+
hash2.update("\0");
|
|
58757
|
+
hash2.update(signature.mtimeMs);
|
|
58758
|
+
hash2.update("\0");
|
|
58759
|
+
}
|
|
58760
|
+
return hash2.digest("hex");
|
|
58761
|
+
}
|
|
58762
|
+
function parseLifecycleFileSignature(value) {
|
|
58763
|
+
if (typeof value !== "string")
|
|
58764
|
+
return void 0;
|
|
58765
|
+
if (value === "0:0")
|
|
58766
|
+
return void 0;
|
|
58767
|
+
const parts = value.split(":");
|
|
58768
|
+
if (parts.length !== 2)
|
|
58769
|
+
return void 0;
|
|
58770
|
+
const [mtimeMs, size] = parts;
|
|
58771
|
+
if (!mtimeMs || !size)
|
|
58772
|
+
return void 0;
|
|
58773
|
+
if (!/^-?(?:0|[1-9]\d*)(?:\.\d+)?$/.test(mtimeMs))
|
|
58774
|
+
return void 0;
|
|
58775
|
+
if (!/^(?:0|[1-9]\d*)$/.test(size))
|
|
58776
|
+
return void 0;
|
|
58777
|
+
const numericMtimeMs = Number(mtimeMs);
|
|
58778
|
+
const numericSize = Number(size);
|
|
58779
|
+
if (!Number.isFinite(numericMtimeMs) || String(numericMtimeMs) !== mtimeMs)
|
|
58780
|
+
return void 0;
|
|
58781
|
+
if (!Number.isSafeInteger(numericSize) || String(numericSize) !== size)
|
|
58782
|
+
return void 0;
|
|
58783
|
+
return { size, mtimeMs };
|
|
58784
|
+
}
|
|
58656
58785
|
async function hashDiscoveredFiles(files, root) {
|
|
58657
58786
|
const sorted = [...files].sort((left, right) => left.localeCompare(right));
|
|
58658
58787
|
const signatures = /* @__PURE__ */ new Map();
|
|
@@ -76469,8 +76598,6 @@ function formatAgentExploreResponse(response) {
|
|
|
76469
76598
|
for (const [name, value] of Object.entries(response.limits)) {
|
|
76470
76599
|
lines.push(`- ${name}: ${value}`);
|
|
76471
76600
|
}
|
|
76472
|
-
const recommended = formatAgentFollowUpAsCli(response.followUps[0] ?? toolFollowUp("orient", { budget: "small" }));
|
|
76473
|
-
lines.push("", `Recommended next: ${recommended}`);
|
|
76474
76601
|
return lines.join("\n");
|
|
76475
76602
|
}
|
|
76476
76603
|
function packetSummaryLines(packet) {
|
|
@@ -77026,9 +77153,9 @@ var init_help = __esm({
|
|
|
77026
77153
|
|
|
77027
77154
|
Start here:
|
|
77028
77155
|
Configure every supported agent codegraph install --all --dry-run
|
|
77029
|
-
|
|
77030
|
-
Review local changes codegraph review
|
|
77156
|
+
Map a repository codegraph orient --root . --budget small
|
|
77031
77157
|
Find a symbol or file codegraph search "SessionManager" --json
|
|
77158
|
+
Review local changes codegraph review
|
|
77032
77159
|
Check runtime health codegraph doctor
|
|
77033
77160
|
|
|
77034
77161
|
Run codegraph --help for all commands.`;
|
|
@@ -77036,9 +77163,9 @@ Run codegraph --help for all commands.`;
|
|
|
77036
77163
|
|
|
77037
77164
|
Start here:
|
|
77038
77165
|
Configure every supported agent codegraph install --all --dry-run
|
|
77039
|
-
|
|
77040
|
-
Review local changes codegraph review
|
|
77166
|
+
Map a repository codegraph orient --root . --budget small
|
|
77041
77167
|
Find a symbol or file codegraph search "SessionManager" --json
|
|
77168
|
+
Review local changes codegraph review
|
|
77042
77169
|
Check runtime health codegraph doctor
|
|
77043
77170
|
|
|
77044
77171
|
Usage: codegraph <command> [options] [path]
|
|
@@ -84157,7 +84284,7 @@ function buildFocusTargets(modules, packets, review) {
|
|
|
84157
84284
|
function buildRecommendedNext(includeRoots, focus, hasGitRepo) {
|
|
84158
84285
|
const commands = [];
|
|
84159
84286
|
const firstFocus = focus[0];
|
|
84160
|
-
if (firstFocus) {
|
|
84287
|
+
if (firstFocus?.kind === "review") {
|
|
84161
84288
|
for (const followUp of firstFocus.followUps) {
|
|
84162
84289
|
commands.push({
|
|
84163
84290
|
label: labelForFollowUp(firstFocus, followUp),
|
|
@@ -84266,16 +84393,14 @@ function formatAgentOrientation(response) {
|
|
|
84266
84393
|
lines.push("", "Start here");
|
|
84267
84394
|
for (const focus of response.focus) {
|
|
84268
84395
|
lines.push(`- ${focus.file ?? focus.label}: ${focus.why}`);
|
|
84269
|
-
|
|
84270
|
-
|
|
84271
|
-
|
|
84396
|
+
}
|
|
84397
|
+
if (response.focus.some((focus) => focus.file)) {
|
|
84398
|
+
lines.push("Inspect a listed path: codegraph packet get <path>");
|
|
84272
84399
|
}
|
|
84273
84400
|
}
|
|
84274
|
-
|
|
84275
|
-
const remainingRecommendations = response.recommendedNext.filter((next) => !focusFollowUps.has(next.command));
|
|
84276
|
-
if (remainingRecommendations.length) {
|
|
84401
|
+
if (response.recommendedNext.length) {
|
|
84277
84402
|
lines.push("", "Recommended next");
|
|
84278
|
-
for (const next of
|
|
84403
|
+
for (const next of response.recommendedNext) {
|
|
84279
84404
|
lines.push(`- ${next.command}`);
|
|
84280
84405
|
}
|
|
84281
84406
|
}
|
|
@@ -84298,7 +84423,6 @@ var init_orient2 = __esm({
|
|
|
84298
84423
|
"dist/cli/orient.js"() {
|
|
84299
84424
|
"use strict";
|
|
84300
84425
|
init_orient();
|
|
84301
|
-
init_followUps();
|
|
84302
84426
|
}
|
|
84303
84427
|
});
|
|
84304
84428
|
|
package/dist/cli/help.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { isKnownCliCommand } from "./commandCatalog.js";
|
|
2
|
-
export declare const CLI_TASK_HELP_TEXT = "codegraph - Ask structural questions about a repository\n\nStart here:\n Configure every supported agent codegraph install --all --dry-run\n
|
|
2
|
+
export declare const CLI_TASK_HELP_TEXT = "codegraph - Ask structural questions about a repository\n\nStart here:\n Configure every supported agent codegraph install --all --dry-run\n Map a repository codegraph orient --root . --budget small\n Find a symbol or file codegraph search \"SessionManager\" --json\n Review local changes codegraph review\n Check runtime health codegraph doctor\n\nRun codegraph --help for all commands.";
|
|
3
3
|
export declare const CLI_HELP_TEXT: string;
|
|
4
4
|
export declare const ADVANCED_HELP_TEXT: string;
|
|
5
5
|
export declare const LIFECYCLE_HELP_TEXT = "codegraph init/status/sync/uninit - Initialize, inspect, refresh, or remove project-local Codegraph state\n\nUsage:\n codegraph init [path] [--force] [--no-update-gitignore] [--json | --pretty]\n codegraph init --root <path> [--force] [--no-update-gitignore] [--json | --pretty]\n codegraph status [path] [--json | --pretty]\n codegraph status --root <path> [--json | --pretty]\n codegraph sync [path] [--init] [--no-update-gitignore] [--json | --pretty]\n codegraph sync --root <path> [--init] [--no-update-gitignore] [--json | --pretty]\n codegraph uninit [path] [--force] [--json | --pretty]\n codegraph uninit --root <path> [--force] [--json | --pretty]\n\nState:\n Lifecycle commands own .codegraph/manifest.json metadata; a shared MCP server owns .codegraph/server.json and .codegraph/server.log. In a Git worktree, init and sync --init ensure the .codegraph/ directory is effectively ignored, appending .codegraph/ to the resolved root's .gitignore only when needed; opt out with --no-update-gitignore.\n A tracked manifest is left tracked with a warning. Uninit preserves server.json, server.log, and cache even with --force, so stop a shared server explicitly; it leaves the root .gitignore rule, and ordinary sync never changes ignore policy.\n Init and sync may warm or update the disk cache under .codegraph/cache/index-v1/. Existing .codegraph-cache/ directories migrate automatically on the next run. Other commands do not depend on the manifest.\n Positional paths and --root are alternatives for lifecycle commands; do not combine them.\n";
|
package/dist/cli/help.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,eAAO,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,eAAO,MAAM,kBAAkB,icASQ,CAAC;AAExC,eAAO,MAAM,aAAa,QAkHzB,CAAC;AACF,eAAO,MAAM,kBAAkB,QAI9B,CAAC;AAEF,eAAO,MAAM,mBAAmB,miDAiB/B,CAAC;AAEF,eAAO,MAAM,kBAAkB,ofAU9B,CAAC;AAEF,eAAO,MAAM,iBAAiB,g1BAY7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,kXAM/B,CAAC;AAMF,eAAO,MAAM,iBAAiB,itCAU7B,CAAC;AAEF,eAAO,MAAM,cAAc,wzBAU1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,itDAkB5B,CAAC;AAEF,eAAO,MAAM,cAAc,2qCAQ1B,CAAC;AAEF,eAAO,MAAM,cAAc,usCAS1B,CAAC;AAEF,eAAO,MAAM,cAAc,4yBAO1B,CAAC;AAEF,eAAO,MAAM,aAAa,yNAIzB,CAAC;AAEF,eAAO,MAAM,iBAAiB,y6CAY7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,skCAO7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,skCAO7B,CAAC;AAEF,eAAO,MAAM,oBAAoB,q/BAOhC,CAAC;AAEF,eAAO,MAAM,kBAAkB,++BAO9B,CAAC;AAEF,eAAO,MAAM,yBAAyB,oiCAOrC,CAAC;AAEF,eAAO,MAAM,wBAAwB,qyCASpC,CAAC;AAEF,eAAO,MAAM,uBAAuB,+4CASnC,CAAC;AAEF,eAAO,MAAM,gBAAgB,i2CAS5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,y8CAgB5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,g/CAW7B,CAAC;AAEF,eAAO,MAAM,kBAAkB,+3CAgB9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,2jDAkB5B,CAAC;AAEF,eAAO,MAAM,aAAa,g2CAwBzB,CAAC;AAEF,eAAO,MAAM,mBAAmB,i4EAwC/B,CAAC;AAEF,eAAO,MAAM,oBAAoB,k8FAwChC,CAAC;AAEF,eAAO,MAAM,eAAe,qrCAe3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,qgCAc5B,CAAC;AAEF,eAAO,MAAM,eAAe,2jCAQ3B,CAAC;AAEF,eAAO,MAAM,eAAe,mmCAQ3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,qnDAiB5B,CAAC;AAEF,eAAO,MAAM,gBAAgB,o9BAQ5B,CAAC;AAEF,eAAO,MAAM,iBAAiB,o2BAK7B,CAAC;AAEF,eAAO,MAAM,cAAc,wmCAS1B,CAAC;AAEF,eAAO,MAAM,eAAe,0nCAS3B,CAAC;AAEF,eAAO,MAAM,cAAc,u0BAK1B,CAAC;AAEF,eAAO,MAAM,gBAAgB,s0BAK5B,CAAC;AAEF,eAAO,MAAM,kBAAkB,6zBAK9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,4zBAKhC,CAAC;AAEF,eAAO,MAAM,eAAe,2mBAY3B,CAAC;AAEF,eAAO,MAAM,oBAAoB,2zBAKhC,CAAC;AAEF,eAAO,MAAM,qBAAqB,y2BAKjC,CAAC;AAEF,eAAO,MAAM,gBAAgB,wPAM5B,CAAC;AAEF,eAAO,MAAM,eAAe,+KAG3B,CAAC;AAEF,eAAO,MAAM,eAAe,4UAM3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,syBAK7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,gHAG7B,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAoDtG"}
|
package/dist/cli/help.js
CHANGED
|
@@ -4,9 +4,9 @@ export const CLI_TASK_HELP_TEXT = `codegraph - Ask structural questions about a
|
|
|
4
4
|
|
|
5
5
|
Start here:
|
|
6
6
|
Configure every supported agent codegraph install --all --dry-run
|
|
7
|
-
|
|
8
|
-
Review local changes codegraph review
|
|
7
|
+
Map a repository codegraph orient --root . --budget small
|
|
9
8
|
Find a symbol or file codegraph search "SessionManager" --json
|
|
9
|
+
Review local changes codegraph review
|
|
10
10
|
Check runtime health codegraph doctor
|
|
11
11
|
|
|
12
12
|
Run codegraph --help for all commands.`;
|
|
@@ -14,9 +14,9 @@ export const CLI_HELP_TEXT = `codegraph - Code analysis and dependency graph too
|
|
|
14
14
|
|
|
15
15
|
Start here:
|
|
16
16
|
Configure every supported agent codegraph install --all --dry-run
|
|
17
|
-
|
|
18
|
-
Review local changes codegraph review
|
|
17
|
+
Map a repository codegraph orient --root . --budget small
|
|
19
18
|
Find a symbol or file codegraph search "SessionManager" --json
|
|
19
|
+
Review local changes codegraph review
|
|
20
20
|
Check runtime health codegraph doctor
|
|
21
21
|
|
|
22
22
|
Usage: codegraph <command> [options] [path]
|
package/dist/cli/orient.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orient.d.ts","sourceRoot":"","sources":["../../src/cli/orient.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,MAAM,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAkB1D,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBtF;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"orient.d.ts","sourceRoot":"","sources":["../../src/cli/orient.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAE3D,MAAM,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAkB1D,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBtF;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM,CAkC5E"}
|
package/dist/cli/orient.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { orientCodegraph, } from "../agent/orient.js";
|
|
2
|
-
import { formatAgentFollowUpAsCli } from "../agent/followUps.js";
|
|
3
2
|
function parseAgentOrientBudget(rawValue) {
|
|
4
3
|
if (rawValue === undefined)
|
|
5
4
|
return "small";
|
|
@@ -40,16 +39,14 @@ export function formatAgentOrientation(response) {
|
|
|
40
39
|
lines.push("", "Start here");
|
|
41
40
|
for (const focus of response.focus) {
|
|
42
41
|
lines.push(`- ${focus.file ?? focus.label}: ${focus.why}`);
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
42
|
+
}
|
|
43
|
+
if (response.focus.some((focus) => focus.file)) {
|
|
44
|
+
lines.push("Inspect a listed path: codegraph packet get <path>");
|
|
46
45
|
}
|
|
47
46
|
}
|
|
48
|
-
|
|
49
|
-
const remainingRecommendations = response.recommendedNext.filter((next) => !focusFollowUps.has(next.command));
|
|
50
|
-
if (remainingRecommendations.length) {
|
|
47
|
+
if (response.recommendedNext.length) {
|
|
51
48
|
lines.push("", "Recommended next");
|
|
52
|
-
for (const next of
|
|
49
|
+
for (const next of response.recommendedNext) {
|
|
53
50
|
lines.push(`- ${next.command}`);
|
|
54
51
|
}
|
|
55
52
|
}
|
package/dist/cli/orient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orient.js","sourceRoot":"","sources":["../../src/cli/orient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,GAIhB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"orient.js","sourceRoot":"","sources":["../../src/cli/orient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build-index.d.ts","sourceRoot":"","sources":["../../src/indexer/build-index.ts"],"names":[],"mappings":"AAuFA,OAAO,EACL,KAAK,YAAY,EAEjB,KAAK,gBAAgB,EAErB,KAAK,uBAAuB,EAI5B,KAAK,YAAY,EAIlB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"build-index.d.ts","sourceRoot":"","sources":["../../src/indexer/build-index.ts"],"names":[],"mappings":"AAuFA,OAAO,EACL,KAAK,YAAY,EAEjB,KAAK,gBAAgB,EAErB,KAAK,uBAAuB,EAI5B,KAAK,YAAY,EAIlB,MAAM,YAAY,CAAC;AA8kCpB;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAEvG;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAAE,EACpB,IAAI,CAAC,EAAE,YAAY,GAClB,OAAO,CAAC,YAAY,CAAC,CAgBvB;AA4BD;;;;;;GAMG;AACH,wBAAsB,4BAA4B,CAChD,WAAW,EAAE,MAAM,EACnB,IAAI,CAAC,EAAE,uBAAuB,GAC7B,OAAO,CAAC,YAAY,CAAC,CAmwBvB;AAED,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA8IpH"}
|