codesift-mcp 0.12.0 → 0.14.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/README.md +44 -1
- package/dist/cli/commands.d.ts.map +1 -1
- package/dist/cli/commands.js +49 -3
- package/dist/cli/commands.js.map +1 -1
- package/dist/cli/help.d.ts.map +1 -1
- package/dist/cli/help.js +25 -2
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/hooks/pre-tool-use.d.ts +1 -0
- package/dist/cli/hooks/pre-tool-use.d.ts.map +1 -1
- package/dist/cli/hooks/pre-tool-use.js +11 -2
- package/dist/cli/hooks/pre-tool-use.js.map +1 -1
- package/dist/cli/owner-only-file.d.ts +51 -0
- package/dist/cli/owner-only-file.d.ts.map +1 -0
- package/dist/cli/owner-only-file.js +121 -0
- package/dist/cli/owner-only-file.js.map +1 -0
- package/dist/cli/service.d.ts +17 -1
- package/dist/cli/service.d.ts.map +1 -1
- package/dist/cli/service.js +28 -12
- package/dist/cli/service.js.map +1 -1
- package/dist/cli/setup/codex.d.ts.map +1 -1
- package/dist/cli/setup/codex.js +14 -7
- package/dist/cli/setup/codex.js.map +1 -1
- package/dist/cli/setup/fs.d.ts +12 -0
- package/dist/cli/setup/fs.d.ts.map +1 -1
- package/dist/cli/setup/fs.js +17 -2
- package/dist/cli/setup/fs.js.map +1 -1
- package/dist/cli/setup/mcp.d.ts +14 -1
- package/dist/cli/setup/mcp.d.ts.map +1 -1
- package/dist/cli/setup/mcp.js +55 -5
- package/dist/cli/setup/mcp.js.map +1 -1
- package/dist/cli/setup/types.d.ts +19 -0
- package/dist/cli/setup/types.d.ts.map +1 -1
- package/dist/config.d.ts +13 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +21 -0
- package/dist/config.js.map +1 -1
- package/dist/formatters-core.d.ts +7 -0
- package/dist/formatters-core.d.ts.map +1 -1
- package/dist/formatters-core.js +14 -3
- package/dist/formatters-core.js.map +1 -1
- package/dist/parser/extractors/hono-inline-analyzer.js +2 -2
- package/dist/parser/extractors/hono-inline-analyzer.js.map +1 -1
- package/dist/register-tool-groups/core/search.d.ts.map +1 -1
- package/dist/register-tool-groups/core/search.js +14 -0
- package/dist/register-tool-groups/core/search.js.map +1 -1
- package/dist/register-tool-groups/core/symbols.d.ts.map +1 -1
- package/dist/register-tool-groups/core/symbols.js +50 -5
- package/dist/register-tool-groups/core/symbols.js.map +1 -1
- package/dist/register-tools/runtime.d.ts +15 -6
- package/dist/register-tools/runtime.d.ts.map +1 -1
- package/dist/register-tools/runtime.js +30 -12
- package/dist/register-tools/runtime.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +96 -11
- package/dist/server.js.map +1 -1
- package/dist/storage/_shared.d.ts +21 -0
- package/dist/storage/_shared.d.ts.map +1 -1
- package/dist/storage/_shared.js +36 -0
- package/dist/storage/_shared.js.map +1 -1
- package/dist/storage/embedding-store.d.ts +12 -1
- package/dist/storage/embedding-store.d.ts.map +1 -1
- package/dist/storage/embedding-store.js +42 -2
- package/dist/storage/embedding-store.js.map +1 -1
- package/dist/storage/index-footprint.d.ts +12 -0
- package/dist/storage/index-footprint.d.ts.map +1 -0
- package/dist/storage/index-footprint.js +41 -0
- package/dist/storage/index-footprint.js.map +1 -0
- package/dist/storage/index-store.d.ts +61 -3
- package/dist/storage/index-store.d.ts.map +1 -1
- package/dist/storage/index-store.js +409 -13
- package/dist/storage/index-store.js.map +1 -1
- package/dist/storage/registry.d.ts.map +1 -1
- package/dist/storage/registry.js +64 -1
- package/dist/storage/registry.js.map +1 -1
- package/dist/storage/shared-embedding-cache.d.ts +29 -0
- package/dist/storage/shared-embedding-cache.d.ts.map +1 -0
- package/dist/storage/shared-embedding-cache.js +120 -0
- package/dist/storage/shared-embedding-cache.js.map +1 -0
- package/dist/storage/sqlite/accessors.d.ts +34 -0
- package/dist/storage/sqlite/accessors.d.ts.map +1 -0
- package/dist/storage/sqlite/accessors.js +178 -0
- package/dist/storage/sqlite/accessors.js.map +1 -0
- package/dist/storage/sqlite/connection.d.ts +43 -0
- package/dist/storage/sqlite/connection.d.ts.map +1 -0
- package/dist/storage/sqlite/connection.js +241 -0
- package/dist/storage/sqlite/connection.js.map +1 -0
- package/dist/storage/sqlite/errors.d.ts +38 -0
- package/dist/storage/sqlite/errors.d.ts.map +1 -0
- package/dist/storage/sqlite/errors.js +150 -0
- package/dist/storage/sqlite/errors.js.map +1 -0
- package/dist/storage/sqlite/index-io.d.ts +49 -0
- package/dist/storage/sqlite/index-io.d.ts.map +1 -0
- package/dist/storage/sqlite/index-io.js +268 -0
- package/dist/storage/sqlite/index-io.js.map +1 -0
- package/dist/storage/sqlite/meta.d.ts +41 -0
- package/dist/storage/sqlite/meta.d.ts.map +1 -0
- package/dist/storage/sqlite/meta.js +28 -0
- package/dist/storage/sqlite/meta.js.map +1 -0
- package/dist/storage/sqlite/rows.d.ts +64 -0
- package/dist/storage/sqlite/rows.d.ts.map +1 -0
- package/dist/storage/sqlite/rows.js +186 -0
- package/dist/storage/sqlite/rows.js.map +1 -0
- package/dist/storage/sqlite/runtime.d.ts +6 -0
- package/dist/storage/sqlite/runtime.d.ts.map +1 -0
- package/dist/storage/sqlite/runtime.js +31 -0
- package/dist/storage/sqlite/runtime.js.map +1 -0
- package/dist/storage/sqlite/schema.d.ts +34 -0
- package/dist/storage/sqlite/schema.d.ts.map +1 -0
- package/dist/storage/sqlite/schema.js +98 -0
- package/dist/storage/sqlite/schema.js.map +1 -0
- package/dist/storage/sqlite-index-store.d.ts +49 -0
- package/dist/storage/sqlite-index-store.d.ts.map +1 -0
- package/dist/storage/sqlite-index-store.js +48 -0
- package/dist/storage/sqlite-index-store.js.map +1 -0
- package/dist/storage/telemetry/config.d.ts.map +1 -1
- package/dist/storage/telemetry/config.js +14 -3
- package/dist/storage/telemetry/config.js.map +1 -1
- package/dist/storage/telemetry/payload.d.ts.map +1 -1
- package/dist/storage/telemetry/payload.js +4 -1
- package/dist/storage/telemetry/payload.js.map +1 -1
- package/dist/storage/telemetry/retro-aggregator.d.ts +27 -0
- package/dist/storage/telemetry/retro-aggregator.d.ts.map +1 -0
- package/dist/storage/telemetry/retro-aggregator.js +179 -0
- package/dist/storage/telemetry/retro-aggregator.js.map +1 -0
- package/dist/storage/telemetry/sanitizer.d.ts +30 -0
- package/dist/storage/telemetry/sanitizer.d.ts.map +1 -1
- package/dist/storage/telemetry/sanitizer.js +23 -0
- package/dist/storage/telemetry/sanitizer.js.map +1 -1
- package/dist/storage/telemetry/uploader.d.ts.map +1 -1
- package/dist/storage/telemetry/uploader.js +6 -0
- package/dist/storage/telemetry/uploader.js.map +1 -1
- package/dist/storage/workspace-resolver.js +1 -1
- package/dist/storage/workspace-resolver.js.map +1 -1
- package/dist/tools/index-tools/file-indexer.js +19 -19
- package/dist/tools/index-tools/file-indexer.js.map +1 -1
- package/dist/tools/index-tools/folder-indexer.d.ts.map +1 -1
- package/dist/tools/index-tools/folder-indexer.js +4 -1
- package/dist/tools/index-tools/folder-indexer.js.map +1 -1
- package/dist/tools/index-tools/parse.d.ts.map +1 -1
- package/dist/tools/index-tools/parse.js +4 -1
- package/dist/tools/index-tools/parse.js.map +1 -1
- package/dist/tools/index-tools/registry.d.ts +16 -0
- package/dist/tools/index-tools/registry.d.ts.map +1 -1
- package/dist/tools/index-tools/registry.js +95 -1
- package/dist/tools/index-tools/registry.js.map +1 -1
- package/dist/tools/index-tools.d.ts +2 -2
- package/dist/tools/index-tools.d.ts.map +1 -1
- package/dist/tools/index-tools.js +2 -2
- package/dist/tools/index-tools.js.map +1 -1
- package/dist/tools/plan-turn/stale-index.d.ts +32 -0
- package/dist/tools/plan-turn/stale-index.d.ts.map +1 -1
- package/dist/tools/plan-turn/stale-index.js +42 -5
- package/dist/tools/plan-turn/stale-index.js.map +1 -1
- package/dist/tools/search-tools/types.d.ts +20 -0
- package/dist/tools/search-tools/types.d.ts.map +1 -1
- package/dist/tools/search-tools/zero-hit.d.ts.map +1 -1
- package/dist/tools/search-tools/zero-hit.js +0 -0
- package/dist/tools/search-tools/zero-hit.js.map +1 -1
- package/dist/tools/status-tools.d.ts +20 -0
- package/dist/tools/status-tools.d.ts.map +1 -1
- package/dist/tools/status-tools.js +69 -18
- package/dist/tools/status-tools.js.map +1 -1
- package/dist/tools/symbol-tools.d.ts +95 -1
- package/dist/tools/symbol-tools.d.ts.map +1 -1
- package/dist/tools/symbol-tools.js +182 -26
- package/dist/tools/symbol-tools.js.map +1 -1
- package/dist/tools/workspace-scope-helper.d.ts.map +1 -1
- package/dist/tools/workspace-scope-helper.js +8 -1
- package/dist/tools/workspace-scope-helper.js.map +1 -1
- package/dist/tools/workspace-tools.d.ts.map +1 -1
- package/dist/tools/workspace-tools.js +9 -1
- package/dist/tools/workspace-tools.js.map +1 -1
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/git-head.d.ts +12 -0
- package/dist/utils/git-head.d.ts.map +1 -1
- package/dist/utils/git-head.js +25 -0
- package/dist/utils/git-head.js.map +1 -1
- package/dist/utils/loopback.d.ts +23 -0
- package/dist/utils/loopback.d.ts.map +1 -0
- package/dist/utils/loopback.js +71 -0
- package/dist/utils/loopback.js.map +1 -0
- package/package.json +6 -4
|
@@ -2,7 +2,9 @@ import { unlink } from "node:fs/promises";
|
|
|
2
2
|
import { stat } from "node:fs/promises";
|
|
3
3
|
import { join, resolve, dirname } from "node:path";
|
|
4
4
|
import { EXTRACTOR_VERSIONS } from "../index-shared.js";
|
|
5
|
-
import { loadIndex, loadIndexOrStale } from "../../storage/index-store.js";
|
|
5
|
+
import { loadIndex, loadIndexOrStale, loadIndexSummary, summariseIndex, collectExtractorVersionMismatches, } from "../../storage/index-store.js";
|
|
6
|
+
import { classifyStorageError, } from "../../storage/sqlite-index-store.js";
|
|
7
|
+
import { IndexStorageError } from "../../storage/sqlite-index-store.js";
|
|
6
8
|
import { getRepo, listRepos as listRegistryRepos, removeRepo, resolveRegisteredRepoMeta, getRepoName, } from "../../storage/registry.js";
|
|
7
9
|
import { stopWatcher } from "../../storage/watcher.js";
|
|
8
10
|
import { getEmbeddingPath, getEmbeddingMetaPath, loadEmbeddings, } from "../../storage/embedding-store.js";
|
|
@@ -105,6 +107,21 @@ export async function getCodeIndex(repoName, options) {
|
|
|
105
107
|
const result = await loadIndexOrStale(meta.index_path, { ...EXTRACTOR_VERSIONS });
|
|
106
108
|
if (!result)
|
|
107
109
|
return null;
|
|
110
|
+
if (result.status === "unreadable") {
|
|
111
|
+
// Deliberately NOT `return null`. Null here means "this repo has no index", and every tool
|
|
112
|
+
// downstream renders that as an authoritative empty answer. A locked or corrupt store is a
|
|
113
|
+
// fault the caller must see, not a repo with nothing in it.
|
|
114
|
+
//
|
|
115
|
+
// Typed rather than a generic Error, and carrying the code: index_status maps this straight
|
|
116
|
+
// into its `unreadable` field. A generic Error forced it to re-read the store to rediscover
|
|
117
|
+
// what happened — a second hit on an already-struggling database, and a race, since a
|
|
118
|
+
// transient SQLITE_BUSY that cleared between the two reads produced a "fault" nobody could
|
|
119
|
+
// reproduce.
|
|
120
|
+
throw new IndexStorageError(`[codesift] index for ${resolvedName} is unreadable (${result.code}): ${result.message}. ` +
|
|
121
|
+
`This is a storage fault, not an empty index — the previous behaviour would have ` +
|
|
122
|
+
`reported "no results". Retry if the code is SQLITE_BUSY; otherwise run index_folder ` +
|
|
123
|
+
`to rebuild ${meta.index_path}.`, result.code, meta.index_path);
|
|
124
|
+
}
|
|
108
125
|
if (result.status === "stale") {
|
|
109
126
|
const extra = result.mismatch_detail ? ` — ${result.mismatch_detail}` : "";
|
|
110
127
|
console.warn(`[codesift] stale index for ${resolvedName}: extractor_version_mismatch ` +
|
|
@@ -115,6 +132,83 @@ export async function getCodeIndex(repoName, options) {
|
|
|
115
132
|
codeIndexes.set(resolvedName, result.index);
|
|
116
133
|
return result.index;
|
|
117
134
|
}
|
|
135
|
+
/**
|
|
136
|
+
* Files + metadata for a repo, without constructing its symbols (ADR-004 stage 2).
|
|
137
|
+
*
|
|
138
|
+
* Same resolution, staleness and unreadable semantics as `getCodeIndex` — a storage fault must
|
|
139
|
+
* still surface as a fault here, not as a repo with nothing in it. The difference is only what is
|
|
140
|
+
* built: a full load of the tgm-survey-platform index costs ~1.0 s and 349 MB of heap, effectively
|
|
141
|
+
* all of it symbol objects, and `index_status` — which reports counts it reads from metadata and
|
|
142
|
+
* never touches `index.symbols` — was paying that in full.
|
|
143
|
+
*
|
|
144
|
+
* Returns `IndexSummary`, which has no `symbols` field at all rather than an empty one: a caller
|
|
145
|
+
* that needs symbols must fail to compile, not read an empty array as "this repo has none".
|
|
146
|
+
*/
|
|
147
|
+
export async function getIndexSummary(repoName, options) {
|
|
148
|
+
const config = loadConfig();
|
|
149
|
+
const resolved = await resolveRegisteredRepoMeta(config.registryPath, repoName);
|
|
150
|
+
if (!resolved)
|
|
151
|
+
return null;
|
|
152
|
+
const { resolvedName, meta } = resolved;
|
|
153
|
+
if (!options?.skipFreshness) {
|
|
154
|
+
await ensureIndexFresh(resolvedName);
|
|
155
|
+
}
|
|
156
|
+
// A full index already in memory answers this for free; going back to the database would be
|
|
157
|
+
// slower than projecting what we are holding.
|
|
158
|
+
//
|
|
159
|
+
// The staleness check below is deliberately NOT repeated here, and this mirrors `getCodeIndex`
|
|
160
|
+
// exactly: `codeIndexes` is written in one place only (the tail of `getCodeIndex`), and only
|
|
161
|
+
// after `loadIndexOrStale` reported `ok` — so a cached entry is version-validated by
|
|
162
|
+
// construction. `EXTRACTOR_VERSIONS` is a module constant and cannot drift inside a process,
|
|
163
|
+
// so there is no window in which a cached index becomes stale. Two independent reviewers read
|
|
164
|
+
// this shortcut as a missing check, which is why it is spelled out rather than left implicit.
|
|
165
|
+
const cached = codeIndexes.get(resolvedName);
|
|
166
|
+
if (cached)
|
|
167
|
+
return summariseIndex(cached);
|
|
168
|
+
try {
|
|
169
|
+
const summary = await loadIndexSummary(meta.index_path);
|
|
170
|
+
if (summary === null)
|
|
171
|
+
return null;
|
|
172
|
+
// Staleness parity with getCodeIndex — via the SAME function its path uses.
|
|
173
|
+
//
|
|
174
|
+
// The first version called `isExtractorVersionCurrent`, which looks equivalent and is not: it
|
|
175
|
+
// short-circuits `if (!index.extractor_version) return false`, whereas
|
|
176
|
+
// `collectExtractorVersionMismatches` only flags a language it can actually see among
|
|
177
|
+
// `files`. An index with no `extractor_version` whose files are entirely in languages absent
|
|
178
|
+
// from EXTRACTOR_VERSIONS (go, rust, markdown, sql, prisma) therefore loaded fine through
|
|
179
|
+
// `getCodeIndex` and came back null here — and `index_status`'s fallback probe re-runs
|
|
180
|
+
// `loadIndexOrStale`, which also says "ok", so it matched neither the stale nor the
|
|
181
|
+
// unreadable branch and fell through to a bare `{indexed:false}` with no diagnostic at all.
|
|
182
|
+
// A correctly-indexed repo reported as never-indexed, confidently and silently.
|
|
183
|
+
const mismatches = collectExtractorVersionMismatches(summary, { ...EXTRACTOR_VERSIONS });
|
|
184
|
+
if (mismatches.length > 0) {
|
|
185
|
+
// Log parity too: getCodeIndex warns here, and without this the server log simply goes
|
|
186
|
+
// dark for a stale repo whose only traffic is index_status.
|
|
187
|
+
const first = mismatches[0];
|
|
188
|
+
console.warn(`[codesift] stale index for ${resolvedName}: extractor_version_mismatch ` +
|
|
189
|
+
`(${first.language} expected ${first.expected}, got ${first.actual}). ` +
|
|
190
|
+
`Run index_folder to refresh.`);
|
|
191
|
+
return null;
|
|
192
|
+
}
|
|
193
|
+
return summary;
|
|
194
|
+
}
|
|
195
|
+
catch (err) {
|
|
196
|
+
const code = classifyStorageError(err);
|
|
197
|
+
if (code === null)
|
|
198
|
+
throw err;
|
|
199
|
+
// Mirrors getCodeIndex: null means "no index", and a locked or corrupt store is not that.
|
|
200
|
+
//
|
|
201
|
+
// The underlying detail belongs in `message`, not only in `cause`: `index_status` copies
|
|
202
|
+
// `err.message` verbatim into `unreadable.message`, the one field whose entire job is telling
|
|
203
|
+
// an agent WHAT went wrong. Reporting only the classified code there would say "something is
|
|
204
|
+
// broken" where the old path said which thing — a strictly worse diagnostic from a change
|
|
205
|
+
// whose point was to lose nothing.
|
|
206
|
+
const detail = err instanceof Error ? err.message : String(err);
|
|
207
|
+
throw new IndexStorageError(`[codesift] index for ${resolvedName} is unreadable (${code}): ${detail}. This is a storage ` +
|
|
208
|
+
`fault, not an empty index. Retry if the code is SQLITE_BUSY; otherwise run index_folder ` +
|
|
209
|
+
`to rebuild ${meta.index_path}.`, code, meta.index_path, { cause: err });
|
|
210
|
+
}
|
|
211
|
+
}
|
|
118
212
|
/**
|
|
119
213
|
* Walk up from dir until a .git directory is found. Returns the git root or null.
|
|
120
214
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/tools/index-tools/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/tools/index-tools/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { indexFolder, resetIndexFolderRedundancyForTesting, type IndexFolderResult } from "./index-tools/folder-indexer.js";
|
|
2
2
|
import { indexFile, clearLastIndexedStateForTesting, ensureIndexFresh, resetFreshnessCache } from "./index-tools/file-indexer.js";
|
|
3
|
-
import { listAllRepos, invalidateCache, getBM25Index, getCodeIndex, getEmbeddingCache, autoIndexCurrentRepo, _cachedEmbeddingReposForTesting, _embeddingLoadCountForTesting, _resetEmbeddingLoadCountForTesting, type RepoSummary } from "./index-tools/registry.js";
|
|
3
|
+
import { listAllRepos, invalidateCache, getBM25Index, getCodeIndex, getIndexSummary, getEmbeddingCache, autoIndexCurrentRepo, _cachedEmbeddingReposForTesting, _embeddingLoadCountForTesting, _resetEmbeddingLoadCountForTesting, type RepoSummary } from "./index-tools/registry.js";
|
|
4
4
|
import { embedSymbols } from "./index-tools/parse.js";
|
|
5
5
|
import { drainLegacyHashQueue, ASTRO_LOCK_FILENAME, EXTRACTOR_VERSIONS_FILENAME, checkAstroExtractorVersion, type AstroReindexResult } from "./index-tools/snapshots.js";
|
|
6
|
-
export { indexFolder, resetIndexFolderRedundancyForTesting, indexFile, clearLastIndexedStateForTesting, ensureIndexFresh, resetFreshnessCache, listAllRepos, invalidateCache, getBM25Index, getCodeIndex, getEmbeddingCache, autoIndexCurrentRepo, _cachedEmbeddingReposForTesting, _embeddingLoadCountForTesting, _resetEmbeddingLoadCountForTesting, embedSymbols, drainLegacyHashQueue, ASTRO_LOCK_FILENAME, EXTRACTOR_VERSIONS_FILENAME, checkAstroExtractorVersion, };
|
|
6
|
+
export { indexFolder, resetIndexFolderRedundancyForTesting, indexFile, clearLastIndexedStateForTesting, ensureIndexFresh, resetFreshnessCache, listAllRepos, invalidateCache, getBM25Index, getCodeIndex, getIndexSummary, getEmbeddingCache, autoIndexCurrentRepo, _cachedEmbeddingReposForTesting, _embeddingLoadCountForTesting, _resetEmbeddingLoadCountForTesting, embedSymbols, drainLegacyHashQueue, ASTRO_LOCK_FILENAME, EXTRACTOR_VERSIONS_FILENAME, checkAstroExtractorVersion, };
|
|
7
7
|
export type { IndexFolderResult, RepoSummary, AstroReindexResult };
|
|
8
8
|
export declare function indexRepo(url: string, options?: {
|
|
9
9
|
branch?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-tools.d.ts","sourceRoot":"","sources":["../../src/tools/index-tools.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,oCAAoC,EAAE,KAAK,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAC5H,OAAO,EAAE,SAAS,EAAE,+BAA+B,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAClI,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,6BAA6B,EAAE,kCAAkC,EAAE,KAAK,WAAW,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"index-tools.d.ts","sourceRoot":"","sources":["../../src/tools/index-tools.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,WAAW,EAAE,oCAAoC,EAAE,KAAK,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAC5H,OAAO,EAAE,SAAS,EAAE,+BAA+B,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAClI,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,6BAA6B,EAAE,kCAAkC,EAAE,KAAK,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACtR,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,KAAK,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAOzK,OAAO,EACL,WAAW,EACX,oCAAoC,EACpC,SAAS,EACT,+BAA+B,EAC/B,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,+BAA+B,EAC/B,6BAA6B,EAC7B,kCAAkC,EAClC,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,EACnB,2BAA2B,EAC3B,0BAA0B,GAC3B,CAAC;AACF,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;AAEnE,wBAAsB,SAAS,CAC7B,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;IACR,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;CACtC,GACA,OAAO,CAAC,iBAAiB,CAAC,CAgE5B;AAED;;;;;;;;;;GAUG;AAEH;;;;mEAImE;AACnE,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAQ/D"}
|
|
@@ -6,14 +6,14 @@ import { loadConfig } from "../config.js";
|
|
|
6
6
|
import { stopWatcher } from "../storage/watcher.js";
|
|
7
7
|
import { indexFolder, resetIndexFolderRedundancyForTesting } from "./index-tools/folder-indexer.js";
|
|
8
8
|
import { indexFile, clearLastIndexedStateForTesting, ensureIndexFresh, resetFreshnessCache } from "./index-tools/file-indexer.js";
|
|
9
|
-
import { listAllRepos, invalidateCache, getBM25Index, getCodeIndex, getEmbeddingCache, autoIndexCurrentRepo, _cachedEmbeddingReposForTesting, _embeddingLoadCountForTesting, _resetEmbeddingLoadCountForTesting } from "./index-tools/registry.js";
|
|
9
|
+
import { listAllRepos, invalidateCache, getBM25Index, getCodeIndex, getIndexSummary, getEmbeddingCache, autoIndexCurrentRepo, _cachedEmbeddingReposForTesting, _embeddingLoadCountForTesting, _resetEmbeddingLoadCountForTesting } from "./index-tools/registry.js";
|
|
10
10
|
import { embedSymbols } from "./index-tools/parse.js";
|
|
11
11
|
import { drainLegacyHashQueue, ASTRO_LOCK_FILENAME, EXTRACTOR_VERSIONS_FILENAME, checkAstroExtractorVersion } from "./index-tools/snapshots.js";
|
|
12
12
|
import { activeWatchers, bm25Indexes, codeIndexes, embeddingCaches } from "./index-tools/state.js";
|
|
13
13
|
const GIT_CLONE_TIMEOUT_MS = 120_000;
|
|
14
14
|
const GIT_CHECKOUT_TIMEOUT_MS = 30_000;
|
|
15
15
|
const GIT_PULL_TIMEOUT_MS = 60_000;
|
|
16
|
-
export { indexFolder, resetIndexFolderRedundancyForTesting, indexFile, clearLastIndexedStateForTesting, ensureIndexFresh, resetFreshnessCache, listAllRepos, invalidateCache, getBM25Index, getCodeIndex, getEmbeddingCache, autoIndexCurrentRepo, _cachedEmbeddingReposForTesting, _embeddingLoadCountForTesting, _resetEmbeddingLoadCountForTesting, embedSymbols, drainLegacyHashQueue, ASTRO_LOCK_FILENAME, EXTRACTOR_VERSIONS_FILENAME, checkAstroExtractorVersion, };
|
|
16
|
+
export { indexFolder, resetIndexFolderRedundancyForTesting, indexFile, clearLastIndexedStateForTesting, ensureIndexFresh, resetFreshnessCache, listAllRepos, invalidateCache, getBM25Index, getCodeIndex, getIndexSummary, getEmbeddingCache, autoIndexCurrentRepo, _cachedEmbeddingReposForTesting, _embeddingLoadCountForTesting, _resetEmbeddingLoadCountForTesting, embedSymbols, drainLegacyHashQueue, ASTRO_LOCK_FILENAME, EXTRACTOR_VERSIONS_FILENAME, checkAstroExtractorVersion, };
|
|
17
17
|
export async function indexRepo(url, options) {
|
|
18
18
|
validateGitUrl(url);
|
|
19
19
|
if (options?.branch) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-tools.js","sourceRoot":"","sources":["../../src/tools/index-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,oCAAoC,EAA0B,MAAM,iCAAiC,CAAC;AAC5H,OAAO,EAAE,SAAS,EAAE,+BAA+B,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAClI,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,+BAA+B,EAAE,6BAA6B,EAAE,kCAAkC,EAAoB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"index-tools.js","sourceRoot":"","sources":["../../src/tools/index-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,36 @@
|
|
|
1
1
|
import type { CodeIndex } from "../../types.js";
|
|
2
2
|
export declare function safeReadGitHead(repoRoot: string): string | null;
|
|
3
|
+
/**
|
|
4
|
+
* How much the index can be trusted, and on what evidence.
|
|
5
|
+
*
|
|
6
|
+
* A boolean cannot carry this. "git HEAD moved, so the index is definitely behind" and "there is
|
|
7
|
+
* no git here, so I am guessing from the index being over a day old" both used to come out as
|
|
8
|
+
* `true`, and "HEAD matches" and "I could not check but it is recent" both came out as `false`.
|
|
9
|
+
* The second pair is the dangerous one: an agent reading `staleIndex: false` cannot tell a
|
|
10
|
+
* verified-current index from one nobody could verify, so an empty result reads as proof of
|
|
11
|
+
* absence either way.
|
|
12
|
+
*
|
|
13
|
+
* `basis` is the part that matters — it says what the verdict rests on, so a caller can decide
|
|
14
|
+
* whether to state a conclusion or to hedge it.
|
|
15
|
+
*/
|
|
16
|
+
export type IndexFreshness = {
|
|
17
|
+
status: "current";
|
|
18
|
+
basis: "git_head_match_clean_worktree";
|
|
19
|
+
} | {
|
|
20
|
+
status: "stale";
|
|
21
|
+
basis: "git_head_moved";
|
|
22
|
+
indexedCommit: string;
|
|
23
|
+
headCommit: string;
|
|
24
|
+
} | {
|
|
25
|
+
status: "unknown";
|
|
26
|
+
basis: "no_git_head" | "no_indexed_commit" | "worktree_dirty" | "worktree_state_unknown";
|
|
27
|
+
ageMs: number;
|
|
28
|
+
likelyStale: boolean;
|
|
29
|
+
};
|
|
30
|
+
export declare function assessIndexFreshness(index: CodeIndex, lastGitCommit: string | undefined): IndexFreshness;
|
|
31
|
+
/**
|
|
32
|
+
* Boolean view, kept for callers that genuinely only need "should I suggest a reindex".
|
|
33
|
+
* Preserves the original semantics exactly: unknown-and-old counts as stale.
|
|
34
|
+
*/
|
|
3
35
|
export declare function isStaleIndex(index: CodeIndex, lastGitCommit: string | undefined): boolean;
|
|
4
36
|
//# sourceMappingURL=stale-index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stale-index.d.ts","sourceRoot":"","sources":["../../../src/tools/plan-turn/stale-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAOhD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG/D;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAChB,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC,OAAO,
|
|
1
|
+
{"version":3,"file":"stale-index.d.ts","sourceRoot":"","sources":["../../../src/tools/plan-turn/stale-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAOhD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG/D;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,cAAc,GACtB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,+BAA+B,CAAA;CAAE,GAC7D;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,gBAAgB,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACvF;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,aAAa,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,wBAAwB,CAAC;IACzF,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEN,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,SAAS,EAChB,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC,cAAc,CAgChB;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAChB,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC,OAAO,CAKT"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getCurrentGitCommit } from "../../utils/git-head.js";
|
|
1
|
+
import { getCurrentGitCommit, isWorktreeDirty } from "../../utils/git-head.js";
|
|
2
2
|
const STALE_INDEX_TIME_FALLBACK_MS = 24 * 60 * 60 * 1000;
|
|
3
3
|
const GIT_HEAD_TIMEOUT_MS = 1500;
|
|
4
4
|
const FULL_GIT_SHA_RE = /^[0-9a-f]{40}$/;
|
|
@@ -6,12 +6,49 @@ export function safeReadGitHead(repoRoot) {
|
|
|
6
6
|
const head = getCurrentGitCommit(repoRoot, GIT_HEAD_TIMEOUT_MS);
|
|
7
7
|
return head !== null && FULL_GIT_SHA_RE.test(head) ? head : null;
|
|
8
8
|
}
|
|
9
|
-
export function
|
|
9
|
+
export function assessIndexFreshness(index, lastGitCommit) {
|
|
10
10
|
const headSha = safeReadGitHead(index.root);
|
|
11
11
|
if (headSha !== null && lastGitCommit !== undefined) {
|
|
12
|
-
|
|
12
|
+
if (headSha === lastGitCommit) {
|
|
13
|
+
// HEAD agreeing is necessary, not sufficient: uncommitted, staged and untracked changes
|
|
14
|
+
// never move it, so an index predating them still compares equal.
|
|
15
|
+
const dirty = isWorktreeDirty(index.root);
|
|
16
|
+
const ageMs = Date.now() - (index.updated_at ?? index.created_at ?? 0);
|
|
17
|
+
if (dirty === true) {
|
|
18
|
+
return { status: "unknown", basis: "worktree_dirty", ageMs, likelyStale: true };
|
|
19
|
+
}
|
|
20
|
+
if (dirty === null) {
|
|
21
|
+
return { status: "unknown", basis: "worktree_state_unknown", ageMs, likelyStale: false };
|
|
22
|
+
}
|
|
23
|
+
return { status: "current", basis: "git_head_match_clean_worktree" };
|
|
24
|
+
}
|
|
25
|
+
return {
|
|
26
|
+
status: "stale",
|
|
27
|
+
basis: "git_head_moved",
|
|
28
|
+
indexedCommit: lastGitCommit,
|
|
29
|
+
headCommit: headSha,
|
|
30
|
+
};
|
|
13
31
|
}
|
|
14
|
-
|
|
15
|
-
|
|
32
|
+
// No commit to compare against. Age is a heuristic, not evidence — say so rather than
|
|
33
|
+
// reporting a guess in the same shape as a measurement.
|
|
34
|
+
const ageMs = Date.now() - (index.updated_at ?? index.created_at ?? 0);
|
|
35
|
+
return {
|
|
36
|
+
status: "unknown",
|
|
37
|
+
basis: headSha === null ? "no_git_head" : "no_indexed_commit",
|
|
38
|
+
ageMs,
|
|
39
|
+
likelyStale: ageMs > STALE_INDEX_TIME_FALLBACK_MS,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Boolean view, kept for callers that genuinely only need "should I suggest a reindex".
|
|
44
|
+
* Preserves the original semantics exactly: unknown-and-old counts as stale.
|
|
45
|
+
*/
|
|
46
|
+
export function isStaleIndex(index, lastGitCommit) {
|
|
47
|
+
const freshness = assessIndexFreshness(index, lastGitCommit);
|
|
48
|
+
if (freshness.status === "stale")
|
|
49
|
+
return true;
|
|
50
|
+
if (freshness.status === "unknown")
|
|
51
|
+
return freshness.likelyStale;
|
|
52
|
+
return false;
|
|
16
53
|
}
|
|
17
54
|
//# sourceMappingURL=stale-index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stale-index.js","sourceRoot":"","sources":["../../../src/tools/plan-turn/stale-index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"stale-index.js","sourceRoot":"","sources":["../../../src/tools/plan-turn/stale-index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/E,MAAM,4BAA4B,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACzD,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,MAAM,eAAe,GAAG,gBAAgB,CAAC;AAEzC,MAAM,UAAU,eAAe,CAAC,QAAgB;IAC9C,MAAM,IAAI,GAAG,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;IAChE,OAAO,IAAI,KAAK,IAAI,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AACnE,CAAC;AAyBD,MAAM,UAAU,oBAAoB,CAClC,KAAgB,EAChB,aAAiC;IAEjC,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,OAAO,KAAK,IAAI,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QACpD,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;YAC9B,wFAAwF;YACxF,kEAAkE;YAClE,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;YACvE,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YAClF,CAAC;YACD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;YAC3F,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAAC;QACvE,CAAC;QACD,OAAO;YACL,MAAM,EAAE,OAAO;YACf,KAAK,EAAE,gBAAgB;YACvB,aAAa,EAAE,aAAa;YAC5B,UAAU,EAAE,OAAO;SACpB,CAAC;IACJ,CAAC;IACD,sFAAsF;IACtF,wDAAwD;IACxD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;IACvE,OAAO;QACL,MAAM,EAAE,SAAS;QACjB,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,mBAAmB;QAC7D,KAAK;QACL,WAAW,EAAE,KAAK,GAAG,4BAA4B;KAClD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAC1B,KAAgB,EAChB,aAAiC;IAEjC,MAAM,SAAS,GAAG,oBAAoB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC7D,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC,WAAW,CAAC;IACjE,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -24,5 +24,25 @@ export interface SearchTextOptions {
|
|
|
24
24
|
export interface ZeroHitFallbackResult {
|
|
25
25
|
suggestions?: string[];
|
|
26
26
|
semantic_results?: string;
|
|
27
|
+
/**
|
|
28
|
+
* Whether the semantic rescue actually ran.
|
|
29
|
+
*
|
|
30
|
+
* Without this, "searched by meaning and found nothing" and "never searched by meaning" reach
|
|
31
|
+
* the agent as the same empty result — and the second one is not evidence of absence.
|
|
32
|
+
* `repo_not_embedded` is the common case (no embedding provider configured, or lite mode on a
|
|
33
|
+
* <24 GB machine), and it is silent today.
|
|
34
|
+
*/
|
|
35
|
+
semantic_coverage?: {
|
|
36
|
+
status: "searched" | "repo_not_embedded" | "timed_out" | "unknown";
|
|
37
|
+
detail?: string;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Whether the index the search ran against reflects the working tree. An empty result over an
|
|
41
|
+
* index that predates the code is not a statement about the code.
|
|
42
|
+
*/
|
|
43
|
+
index_freshness?: {
|
|
44
|
+
status: "current" | "stale" | "unknown";
|
|
45
|
+
detail?: string;
|
|
46
|
+
};
|
|
27
47
|
}
|
|
28
48
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/tools/search-tools/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;AAE1D,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,YAAY,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/tools/search-tools/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;AAE1D,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,YAAY,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;;;OAOG;IACH,iBAAiB,CAAC,EAAE;QAClB,MAAM,EAAE,UAAU,GAAG,mBAAmB,GAAG,WAAW,GAAG,SAAS,CAAC;QACnE,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF;;;OAGG;IACH,eAAe,CAAC,EAAE;QAChB,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;QACxC,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zero-hit.d.ts","sourceRoot":"","sources":["../../../src/tools/search-tools/zero-hit.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AA2CxD,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,qBAAqB,CAAC,
|
|
1
|
+
{"version":3,"file":"zero-hit.d.ts","sourceRoot":"","sources":["../../../src/tools/search-tools/zero-hit.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AA2CxD,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,qBAAqB,CAAC,CA+EhC"}
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zero-hit.js","sourceRoot":"","sources":["../../../src/tools/search-tools/zero-hit.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"zero-hit.js","sourceRoot":"","sources":["../../../src/tools/search-tools/zero-hit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,SAAS,mBAAmB,CAAC,CAAS,EAAE,CAAS,EAAE,GAAW;IAC5D,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG;QAAE,OAAO,GAAG,GAAG,CAAC,CAAC;IACxD,IAAI,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;IACzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,GAAG,CAAC,CAAE,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAE,GAAG,IAAI,CAAC,CAAC;YACtF,IAAI,OAAO,CAAC,CAAC,CAAE,GAAG,UAAU;gBAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC;QACzD,CAAC;QACD,IAAI,UAAU,GAAG,GAAG;YAAE,OAAO,GAAG,GAAG,CAAC,CAAC;QACrC,QAAQ,GAAG,OAAO,CAAC;IACrB,CAAC;IACD,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAE,CAAC;AAC7B,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAa,EAAE,KAAuB;IACnE,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;IAC5C,MAAM,cAAc,GAA2C,EAAE,CAAC;IAClE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC;YAAE,SAAS;QAC1E,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,cAAc,KAAK,eAAe;YAAE,SAAS;QACjD,IAAI,KAAa,CAAC;QAClB,IAAI,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,eAAe,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YACzF,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,mBAAmB,CAAC,eAAe,EAAE,cAAc,EAAE,0BAA0B,CAAC,CAAC;YAClG,IAAI,QAAQ,GAAG,0BAA0B;gBAAE,SAAS;YACpD,KAAK,GAAG,EAAE,GAAG,QAAQ,CAAC;QACxB,CAAC;QACD,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACrC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAClC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CACjE,CAAC;QACF,IAAI,cAAc,CAAC,MAAM,GAAG,uBAAuB;YAAE,cAAc,CAAC,GAAG,EAAE,CAAC;IAC5E,CAAC;IACD,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAY,EACZ,KAAa;IAEb,MAAM,QAAQ,GAA0B,EAAE,CAAC;IAC3C,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAClC,IAAI,YAAY,CAAC,MAAM,GAAG,sBAAsB;QAAE,OAAO,QAAQ,CAAC;IAElE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,WAAW,GAAG,qBAAqB,CACvC,YAAY,EACZ,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAC3C,CAAC;gBACF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;oBAAE,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAC;YACjE,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0CAA0C;QAC5C,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;QAC5B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAC9D,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAC9D,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,QAAQ,CAAC,iBAAiB,GAAG;gBAC3B,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,4EAA4E;aACrF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC;YAC/C,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,kCAAkC,CAAC,CAAC;YAC9E,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;YAC/E,MAAM,aAAa,GAAG,UAAU,CAAC,gBAAgB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;mBACtE,UAAU,CAAC,qBAAqB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;YAEhE,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,mFAAmF;gBACnF,mFAAmF;gBACnF,QAAQ,CAAC,iBAAiB,GAAG;oBAC3B,MAAM,EAAE,mBAAmB;oBAC3B,MAAM,EACJ,+EAA+E;wBAC/E,8CAA8C;iBACjD,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,mFAAmF;gBACnF,sCAAsC;gBACtC,MAAM,SAAS,GAAG,UAAU,CAAC;gBAC7B,MAAM,eAAe,GAAG,MAAM,aAAa,CACzC,cAAc,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,EACtE,wBAAwB,EACxB,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;gBACF,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;oBAClC,QAAQ,CAAC,iBAAiB,GAAG;wBAC3B,MAAM,EAAE,WAAW;wBACnB,MAAM,EAAE,0BAA0B,wBAAwB,sBAAsB;qBACjF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,iBAAiB,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;oBACpD,IAAI,eAAe,IAAI,eAAe,KAAK,cAAc,EAAE,CAAC;wBAC1D,QAAQ,CAAC,gBAAgB,GAAG,eAAe,CAAC;oBAC9C,CAAC;gBACH,CAAC;YACH,CAAC;YAED,QAAQ,CAAC,eAAe,GAAG,MAAM,0BAA0B,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,0FAA0F;QAC1F,6CAA6C;QAC7C,QAAQ,CAAC,iBAAiB,KAAK;YAC7B,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,2BAA2B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACtF,CAAC;IACJ,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,wFAAwF;AACxF,KAAK,UAAU,0BAA0B,CACvC,IAAY,EACZ,YAA0C;IAE1C,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,wCAAwC,EAAE,CAAC;QAC3F,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;QAC7E,MAAM,SAAS,GAAG,oBAAoB,CAAC,KAAK,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC;QAC5E,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QACjE,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACjC,OAAO;gBACL,MAAM,EAAE,OAAO;gBACf,MAAM,EACJ,0BAA0B,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,eAAe;oBAC5E,GAAG,SAAS,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,6CAA6C;aACnF,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;QACtD,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,MAAM,EACJ,2CAA2C,SAAS,CAAC,KAAK,aAAa,KAAK,OAAO;gBACnF,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,uCAAuC,CAAC,CAAC,CAAC,EAAE,CAAC;SACzE,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,yCAAyC,EAAE,CAAC;IAClF,CAAC;AACH,CAAC"}
|
|
@@ -16,6 +16,26 @@ export interface IndexStatusResult {
|
|
|
16
16
|
actual_version: string;
|
|
17
17
|
mismatch_detail?: string;
|
|
18
18
|
};
|
|
19
|
+
/** Set when this index was upgraded from the v1 SQLite schema, which silently dropped symbols
|
|
20
|
+
* whose non-unique `id` collided. `symbol_count` below is then a floor, not a count: the
|
|
21
|
+
* upgrade preserved every row still stored and could not recover the rest. Reported here
|
|
22
|
+
* because this is the tool whose job is to say whether the index can be trusted — without it
|
|
23
|
+
* the marker would exist in the database and inform nobody. Clears on a reindex that
|
|
24
|
+
* re-parses every file. */
|
|
25
|
+
lossy_migration?: {
|
|
26
|
+
reason: "v1_schema_dropped_colliding_symbols";
|
|
27
|
+
hint: string;
|
|
28
|
+
};
|
|
29
|
+
/** When the index store exists but could not be read at all — locked, corrupt, permissions.
|
|
30
|
+
* Same principle as `stale`, one step further: an agent told "not indexed" will rebuild,
|
|
31
|
+
* which is wrong (and destructive) for a database that is merely busy. `indexed` stays
|
|
32
|
+
* false because nothing could be read, but this field is what says why. */
|
|
33
|
+
unreadable?: {
|
|
34
|
+
reason: "storage_error";
|
|
35
|
+
/** SQLITE_* or errno code. SQLITE_BUSY is worth retrying; SQLITE_CORRUPT is not. */
|
|
36
|
+
code: string;
|
|
37
|
+
message: string;
|
|
38
|
+
};
|
|
19
39
|
}
|
|
20
40
|
export declare function indexStatus(repo: string): Promise<IndexStatusResult>;
|
|
21
41
|
//# sourceMappingURL=status-tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-tools.d.ts","sourceRoot":"","sources":["../../src/tools/status-tools.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"status-tools.d.ts","sourceRoot":"","sources":["../../src/tools/status-tools.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;+CAG2C;IAC3C,KAAK,CAAC,EAAE;QACN,MAAM,EAAE,4BAA4B,CAAC;QACrC,QAAQ,EAAE,MAAM,CAAC;QACjB,gBAAgB,EAAE,MAAM,CAAC;QACzB,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF;;;;;gCAK4B;IAC5B,eAAe,CAAC,EAAE;QAChB,MAAM,EAAE,qCAAqC,CAAC;QAC9C,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF;;;gFAG4E;IAC5E,UAAU,CAAC,EAAE;QACX,MAAM,EAAE,eAAe,CAAC;QACxB,oFAAoF;QACpF,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAmBD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAgE1E"}
|
|
@@ -1,11 +1,19 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getIndexSummary } from "./index-tools.js";
|
|
2
2
|
import { loadConfig } from "../config.js";
|
|
3
3
|
import { resolveRegisteredRepoMeta } from "../storage/registry.js";
|
|
4
4
|
import { loadIndexOrStale } from "../storage/index-store.js";
|
|
5
|
+
import { isIndexStorageError } from "../storage/sqlite-index-store.js";
|
|
5
6
|
import { EXTRACTOR_VERSIONS } from "./index-shared.js";
|
|
6
7
|
// ---------------------------------------------------------------------------
|
|
7
8
|
// Tool implementation
|
|
8
9
|
// ---------------------------------------------------------------------------
|
|
10
|
+
/**
|
|
11
|
+
* One translation from a storage fault to the reported field.
|
|
12
|
+
* Three copies of this literal drifted apart is exactly how the code and the type stop agreeing.
|
|
13
|
+
*/
|
|
14
|
+
function toUnreadable(fault) {
|
|
15
|
+
return { unreadable: { reason: "storage_error", code: fault.code, message: fault.message } };
|
|
16
|
+
}
|
|
9
17
|
const TEXT_STUB_LANGUAGES = new Set([
|
|
10
18
|
"kotlin", "swift", "dart", "scala", "groovy",
|
|
11
19
|
"elixir", "lua", "zig", "nim", "gradle", "sbt",
|
|
@@ -14,18 +22,38 @@ export async function indexStatus(repo) {
|
|
|
14
22
|
// Status check should NOT block on freshness — telemetry showed p99=43s
|
|
15
23
|
// because ensureIndexFresh triggers git-diff + reindex of changed files.
|
|
16
24
|
// Stale-but-fast metadata is the right tradeoff for a status call.
|
|
17
|
-
|
|
25
|
+
// ADR-004 stage 2: this tool reports counts and file metadata and never touches
|
|
26
|
+
// `index.symbols`, so it reads the narrow summary. On the measured 240k-symbol index that is
|
|
27
|
+
// ~1.0 s and 349 MB of heap it no longer builds to answer a status question.
|
|
28
|
+
let index;
|
|
29
|
+
try {
|
|
30
|
+
index = await getIndexSummary(repo, { skipFreshness: true });
|
|
31
|
+
}
|
|
32
|
+
catch (err) {
|
|
33
|
+
// getIndexSummary throws on an unreadable store so that ordinary tools cannot render a storage
|
|
34
|
+
// fault as an empty result. This tool is the exception: reporting index health IS its job,
|
|
35
|
+
// so it describes the fault instead of propagating it — straight from the caught error, with
|
|
36
|
+
// no second read. Re-probing would hit an already-struggling store again and could observe a
|
|
37
|
+
// different outcome than the one being reported.
|
|
38
|
+
if (isIndexStorageError(err)) {
|
|
39
|
+
return {
|
|
40
|
+
indexed: false,
|
|
41
|
+
...toUnreadable(err),
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
throw err;
|
|
45
|
+
}
|
|
18
46
|
if (!index) {
|
|
19
|
-
//
|
|
47
|
+
// getIndexSummary returns null both for "no index file" and for stale-version
|
|
20
48
|
// mismatches. Disambiguate by reading the index path directly: if the file
|
|
21
49
|
// exists but extractor_version drifted, surface a structured stale signal
|
|
22
50
|
// instead of a generic "not indexed". Agents acting on "not indexed" will
|
|
23
51
|
// run index_folder, but agents acting on "stale" can be told the same fix
|
|
24
52
|
// applies AND that some data is still on disk — useful for reasoning about
|
|
25
53
|
// partial coverage during the rebuild.
|
|
26
|
-
const
|
|
27
|
-
if (
|
|
28
|
-
return { indexed: false,
|
|
54
|
+
const problem = await probeIndexProblem(repo);
|
|
55
|
+
if (problem)
|
|
56
|
+
return { indexed: false, ...problem };
|
|
29
57
|
return { indexed: false };
|
|
30
58
|
}
|
|
31
59
|
const languageBreakdown = {};
|
|
@@ -45,13 +73,25 @@ export async function indexStatus(repo) {
|
|
|
45
73
|
};
|
|
46
74
|
if (stubLangs.size > 0)
|
|
47
75
|
result.text_stub_languages = [...stubLangs].sort();
|
|
76
|
+
if (index.lossy_migration === true) {
|
|
77
|
+
result.lossy_migration = {
|
|
78
|
+
reason: "v1_schema_dropped_colliding_symbols",
|
|
79
|
+
hint: "symbol_count is a floor, not a count — the v1 schema discarded symbols sharing an id " +
|
|
80
|
+
"(same file and line). Run index_folder to re-parse every file and restore them.",
|
|
81
|
+
};
|
|
82
|
+
}
|
|
48
83
|
return result;
|
|
49
84
|
}
|
|
50
|
-
/** Probe the on-disk index
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
-
* `
|
|
54
|
-
|
|
85
|
+
/** Probe the on-disk index and describe why it did not load: drifted extractor versions, or a
|
|
86
|
+
* storage fault. Returns null for the genuine "never indexed" case.
|
|
87
|
+
*
|
|
88
|
+
* It reports `unreadable` as well as `stale` because this path is reachable with a fault: a
|
|
89
|
+
* store that read fine a moment ago (so `getCodeIndex` returned null rather than throwing) can
|
|
90
|
+
* be locked by the time this probe runs. Falling through to a bare `{indexed:false}` there
|
|
91
|
+
* would reintroduce exactly the misdiagnosis this change removes.
|
|
92
|
+
*
|
|
93
|
+
* Uses `resolveRegisteredRepoMeta` so registry resolution stays aligned with `getCodeIndex`. */
|
|
94
|
+
async function probeIndexProblem(repo) {
|
|
55
95
|
const config = loadConfig();
|
|
56
96
|
let result;
|
|
57
97
|
try {
|
|
@@ -60,16 +100,27 @@ async function detectStale(repo) {
|
|
|
60
100
|
return null;
|
|
61
101
|
result = await loadIndexOrStale(resolved.meta.index_path, { ...EXTRACTOR_VERSIONS });
|
|
62
102
|
}
|
|
63
|
-
catch {
|
|
64
|
-
|
|
103
|
+
catch (err) {
|
|
104
|
+
if (isIndexStorageError(err)) {
|
|
105
|
+
return toUnreadable(err);
|
|
106
|
+
}
|
|
107
|
+
// Anything else here (registry I/O, an unexpected TypeError) is a live fault. Returning
|
|
108
|
+
// null would render it as {indexed:false} — an authoritative "nothing indexed" over a
|
|
109
|
+
// problem nobody can see. Let it propagate.
|
|
110
|
+
throw err;
|
|
111
|
+
}
|
|
112
|
+
if (result?.status === "unreadable") {
|
|
113
|
+
return toUnreadable(result);
|
|
65
114
|
}
|
|
66
115
|
if (result?.status === "stale") {
|
|
67
116
|
return {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
117
|
+
stale: {
|
|
118
|
+
reason: "extractor_version_mismatch",
|
|
119
|
+
language: result.language,
|
|
120
|
+
expected_version: result.expected_version,
|
|
121
|
+
actual_version: result.actual_version,
|
|
122
|
+
...(result.mismatch_detail ? { mismatch_detail: result.mismatch_detail } : {}),
|
|
123
|
+
},
|
|
73
124
|
};
|
|
74
125
|
}
|
|
75
126
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-tools.js","sourceRoot":"","sources":["../../src/tools/status-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"status-tools.js","sourceRoot":"","sources":["../../src/tools/status-tools.ts"],"names":[],"mappings":"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"}
|