@functional-systems/srcx 0.1.0-dev.33 → 0.1.0-dev.35

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/CHANGELOG.md CHANGED
@@ -2,12 +2,21 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ - Add `lookup --symbol` for exact indexed definition/declaration lookup with
6
+ verified source chunks and pinned citations in one call. Support path/language
7
+ filters and a bounded result limit, using existing indexes without embeddings
8
+ or reindexing; document the workflow in the bundled agent skill.
9
+
5
10
  - Preserve Java source and test packages named `build`, `dist`, `target` or
6
11
  `coverage` under `src/<source-set>/java/`, while still excluding output trees
7
12
  above the source root and nested dependencies/caches. Advance the pinned source
8
13
  policy to `source-v3`; new registrations/builds use a distinct configuration,
9
14
  and presets from the earlier source policy are not accepted by this runtime.
10
15
 
16
+ - Document a frozen nine-session comparison of semantic retrieval against adaptive
17
+ local and lexical search, including cleaned corpora, equal answer coverage,
18
+ measured overhead and the absence of a demonstrated semantic task advantage.
19
+
11
20
  - Look up explicit generated Collection names directly instead of discovering
12
21
  every repository. Exact Collection names take precedence over aliases; only
13
22
  missing Collections fall back to discovery. Preserve descriptor, schema and
package/CONTRIBUTING.md CHANGED
@@ -36,6 +36,10 @@ version/help, Git import and WASM parsing, resumable publication against a
36
36
  loopback fixture, version-selected search, and exact reads. It does not call
37
37
  LambdaDB or publish npm packages.
38
38
 
39
+ The Node test runner has a two-minute timeout per test-file process. The CLI
40
+ contract file runs several sequential subprocess-based scenarios, so its combined
41
+ runtime on shared CI runners can exceed one minute even when each scenario passes.
42
+
39
43
  Keep package and lockfile versions synchronized; the executable reads the package
40
44
  version. Add changes to `CHANGELOG.md`. Document flag/JSON/exit-code migrations
41
45
  before shipping incompatible behavior. During 0.x, use a minor version for
package/README.md CHANGED
@@ -596,6 +596,25 @@ presets. Only a missing Collection (HTTP 404) falls back to alias discovery;
596
596
  permission, service, descriptor and schema errors remain errors. This does not
597
597
  cache or bypass immutable-version and source-integrity checks.
598
598
 
599
+ `lookup --symbol <name>` returns exact, case-sensitive indexed symbol matches
600
+ and their verified `sourceText` in one call:
601
+
602
+ ```sh
603
+ srcx lookup --repo <collection> --version <resolved-commit> \
604
+ --symbol readToFile --limit 5
605
+ ```
606
+
607
+ Use a name found in the question, search results or source. For `Type.method`,
608
+ look up `method` and inspect the returned `scope` and `path`; use `--path` or
609
+ `--language` to narrow ambiguity. Lookup uses the existing keyword index and
610
+ requires no managed embeddings or reindexing. Results include definitions and
611
+ declarations, including same-name symbols and pieces of token-split definitions.
612
+ They are source chunks, not guaranteed complete function bodies or resolved
613
+ call targets. The limit defaults to five chunks and accepts 1–20. Results are
614
+ bounded, not an exhaustive symbol inventory; an empty result is not proof of
615
+ absence. `resultId` remains usable with `read` for surrounding lines or a full
616
+ file. Supplied source text can be cited directly without another read.
617
+
599
618
  `read --implementation` follows a contiguous Python or TypeScript/TSX overload
600
619
  group to its unique implementation in the same file and AST scope. It reads the
601
620
  stored source at the result's immutable Tag; no reindexing or embedding is needed.
package/VALIDATION.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Validation record
2
2
 
3
+ ## Semantic value against adaptive keyword search
4
+
5
+ The [nine-session comparison](eval/SEMANTIC-VALUE-RESULTS.md) on cleaned, pinned
6
+ Click and Cobra corpora finds equal answer coverage across local, lexical-first
7
+ and semantic-first conditions. Semantic-first averages 35.4% more total input,
8
+ 36.2% more uncached input and 6.7% more time than local. All six indexed agents
9
+ perform one initial search and then investigate locally. Static full-question
10
+ range hits favor semantic (1/3 versus 0/3), but agent-selected first queries
11
+ favor lexical (3/3 versus 1/3). No unique semantic task benefit is established.
12
+
13
+ All 60 search previews/handles, 110 linked citation ranges, nine source pins,
14
+ 69 frozen inputs and four bracketing resolutions are verified. Two publications
15
+ consume 373,832 estimated document tokens; six query embeddings are used. No
16
+ product settings change, no paid retries occur, and the bounded test stops.
17
+
3
18
  ## Agent choice across repositories and versions
4
19
 
5
20
  The [six-session comparison](eval/VERSION-AGENT-RESULTS.md) offers the installed
package/dist/cli.js CHANGED
@@ -13,7 +13,7 @@ import { LambdaRemote } from "./remote.js";
13
13
  import { attachment, destination, discover, register, selectRepository, } from "./repository.js";
14
14
  import { exclusive, lastBuildPath, publish, published, } from "./publish.js";
15
15
  import { resolveVersion, syncTags } from "./releases.js";
16
- import { directHandle, loadHandle, readHandle, search } from "./search.js";
16
+ import { directHandle, loadHandle, readHandle, search, lookup, } from "./search.js";
17
17
  import { candidateLimit } from "./rerank.js";
18
18
  import { manageSkill, SKILL_AGENTS, SKILL_SCOPES } from "./skills.js";
19
19
  const cli = new Command()
@@ -298,6 +298,25 @@ cli
298
298
  }) + "\n"),
299
299
  }));
300
300
  });
301
+ cli
302
+ .command("lookup")
303
+ .description("Find exact indexed symbol definitions and return their source chunks")
304
+ .requiredOption("--repo <name>")
305
+ .requiredOption("--version <commit-branch-or-release>")
306
+ .requiredOption("--symbol <name>", "Exact case-sensitive indexed symbol name")
307
+ .option("--path <path>", "Exact path filter for ambiguous names")
308
+ .option("--language <name>", "Exact programming-language filter")
309
+ .option("--limit <count>", "Maximum source chunks (1–20; results may be partial)", integer, 5)
310
+ .action(async (o) => {
311
+ invariant(o.limit >= 1 && o.limit <= 20, "Lookup limit must be between 1 and 20.");
312
+ const { remote, settings } = await connected();
313
+ const r = await selectRepository(remote, o.repo), store = remote.store(r.collection);
314
+ const v = await resolveVersion(store, r, o.version);
315
+ output(await lookup(store, settings, r, v, o.symbol, o.limit, {
316
+ path: o.path,
317
+ language: o.language,
318
+ }));
319
+ });
301
320
  cli
302
321
  .command("read")
303
322
  .option("--result <id>")
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EACL,SAAS,EACT,WAAW,EACX,aAAa,EAGb,MAAM,EACN,SAAS,EACT,kBAAkB,EAClB,SAAS,GACV,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,UAAU,EACV,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,SAAS,EACT,aAAa,EACb,OAAO,EACP,SAAS,GAEV,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACtE,MAAM,GAAG,GAAG,IAAI,OAAO,EAAE;KACtB,IAAI,CAAC,MAAM,CAAC;KACZ,WAAW,CAAC,uCAAuC,CAAC;KACpD,uBAAuB,EAAE;KACzB,OAAO,CACN,IAAI,CAAC,KAAK,CACR,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAClE,CAAC,OAAO,CACV,CAAC;AACJ,MAAM,MAAM,GAAG,CAAC,KAAc,EAAQ,EAAE;IACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AAC9D,CAAC,CAAC;AACF,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,EAAE;IAChC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QACtB,MAAM,IAAI,oBAAoB,CAAC,iCAAiC,CAAC,CAAC;IACpE,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACxB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;QAC1B,MAAM,IAAI,oBAAoB,CAAC,uBAAuB,CAAC,CAAC;IAC1D,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,MAAM,cAAc,GAAG,CAAC,WAAmB,EAAE,EAAE,CAC7C,IAAI,MAAM,CACR,qBAAqB,EACrB,WAAW,GAAG,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAC9D,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CACpB,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAChE,CAAC;AACJ,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAC5B,IAAI,MAAM,CACR,sBAAsB,EACtB,mEAAmE,CACpE,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CACnB,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAC5D,CAAC;AACJ,KAAK,UAAU,SAAS;IACtB,MAAM,QAAQ,GAAG,MAAM,YAAY,EAAE,CAAC;IACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;AAC1D,CAAC;AACD,MAAM,MAAM,GAAG,GAAG;KACf,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CACV,sEAAsE,CACvE,CAAC;AACJ,KAAK,MAAM,SAAS,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAU,EAAE,CAAC;IAC3E,MAAM;SACH,OAAO,CAAC,SAAS,CAAC;SAClB,SAAS,CACR,IAAI,MAAM,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;SAC/C,OAAO,CAAC,YAAY,CAAC;SACrB,mBAAmB,EAAE,CACzB;SACA,SAAS,CACR,IAAI,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC;SAChD,OAAO,CAAC,YAAY,CAAC;SACrB,OAAO,CAAC,MAAM,CAAC,CACnB;SACA,MAAM,CACL,oBAAoB,EACpB,oEAAoE,CACrE;SACA,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC;AACD,GAAG;KACA,OAAO,CAAC,WAAW,CAAC;KACpB,cAAc,CAAC,qBAAqB,CAAC;KACrC,cAAc,CAAC,kBAAkB,CAAC;KAClC,MAAM,CACL,sBAAsB,EACtB,6CAA6C,EAC7C,kBAAkB,CACnB;KACA,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAClB,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAC5D,CAAC;AACJ,GAAG;KACA,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CACV,4EAA4E,CAC7E;KACA,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC/C,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;IAC/C,MAAM,CAAC;QACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,WAAW,CAAC,MAAM;QAC/B,WAAW,EAAE,aAAa;QAC1B,cAAc,EAAE,aAAa;KAC9B,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AACL,MAAM,IAAI,GAAG,GAAG;KACb,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,sCAAsC,CAAC,CAAC;AACvD,IAAI;KACD,OAAO,CAAC,KAAK,CAAC;KACd,cAAc,CAAC,oBAAoB,CAAC;KACpC,MAAM,CAAC,iBAAiB,CAAC;KACzB,MAAM,CAAC,sBAAsB,CAAC;KAC9B,MAAM,CAAC,mBAAmB,EAAE,sCAAsC,CAAC;KACnE,SAAS,CAAC,cAAc,CAAC,gCAAgC,CAAC,CAAC;KAC3D,SAAS,CAAC,gBAAgB,EAAE,CAAC;KAC7B,SAAS,CACR,IAAI,MAAM,CACR,qBAAqB,EACrB,+DAA+D,CAChE;KACE,OAAO,CAAC,CAAC,MAAM,EAAE,wBAAwB,EAAE,wBAAwB,CAAC,CAAC;KACrE,OAAO,CAAC,MAAM,CAAC,CACnB;KACA,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IAClB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IACrC,IAAI,MAA0C,CAAC;IAC/C,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;QACV,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,SAAS,CAAC,EAAE,GAAG,CAAC,EAAE,sBAAsB,CAAC,CAAC;QAC1C,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;IACzD,CAAC;IACD,MAAM,CACJ,MAAM,QAAQ,CAAC,MAAM,EAAE;QACrB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,MAAM;QACN,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC;KAC1D,CAAC,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AACL,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE;IACrC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IACrC,MAAM,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AACH,IAAI;KACD,OAAO,CAAC,MAAM,CAAC;KACf,cAAc,CAAC,eAAe,CAAC;KAC/B,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IAClB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IACrC,MAAM,CAAC,MAAM,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AACL,GAAG;KACA,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CACV,0EAA0E,CAC3E;KACA,MAAM,CACL,oBAAoB,EACpB,0DAA0D,CAC3D;KACA,MAAM,CAAC,iBAAiB,CAAC;KACzB,MAAM,CAAC,eAAe,EAAE,8BAA8B,CAAC;KACvD,MAAM,CAAC,aAAa,EAAE,sCAAsC,CAAC;KAC7D,MAAM,CAAC,WAAW,EAAE,6CAA6C,CAAC;KAClE,SAAS,CAAC,gBAAgB,EAAE,CAAC;KAC7B,SAAS,CACR,IAAI,MAAM,CACR,qBAAqB,EACrB,0EAA0E,CAC3E,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,wBAAwB,EAAE,wBAAwB,CAAC,CAAC,CACxE;KACA,SAAS,CACR,cAAc,CACZ,kFAAkF,CACnF,CACF;KACA,MAAM,CAAC,sBAAsB,EAAE,wBAAwB,CAAC;KACxD,MAAM,CACL,wBAAwB,EACxB,4CAA4C,CAC7C;KACA,MAAM,CAAC,wBAAwB,EAAE,wCAAwC,CAAC;KAC1E,MAAM,CACL,UAAU,EACV,+DAA+D,CAChE;KACA,MAAM,CAAC,qBAAqB,EAAE,0BAA0B,EAAE,OAAO,EAAE,GAAG,CAAC;KACvE,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IAClB,SAAS,CACP,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,EACpC,kGAAkG,CACnG,CAAC;IACF,SAAS,CACP,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,EACpC,kGAAkG,CACnG,CAAC;IACF,SAAS,CACP,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,EACrC,oGAAoG,CACrG,CAAC;IACF,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,0BAA0B,CAAC,CAAC;IAC3D,SAAS,CACP,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,MAAM,EACvB,6CAA6C,CAC9C,CAAC;IACF,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAAC;IAC3E,SAAS,CACP,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,EAC5D,sEAAsE,CACvE,CAAC;IACF,MAAM,UAAU,GAAG,KAAK,EACtB,MAA4C,EAC5C,QAAgB,EAChB,KAAc,EACd,SAAiB,MAAM,EACvB,EAAE;QACF,SAAS,CAAC,CAAC,CAAC,GAAG,EAAE,sCAAsC,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;QACvD,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,IAAI,GAAG,MAAM,YAAY,CAC7B,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CACpC,CAAC;YACF,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5C,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;wBAAE,MAAM,KAAK,CAAC;gBACtE,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC3C,MAAM,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;QACvE,OAAO,WAAW,CAAC;YACjB,QAAQ,EAAE,MAAM;YAChB,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,cAAc,EAAE,MAAM;YACtB,MAAM,EAAE,IAAI;YACZ,QAAQ;YACR,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CAAC;IACF,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACb,IAAI,CAAQ,CAAC;QACb,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACf,CAAC,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAChC,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,IAAI,MAAM,CAAC;YACX,IAAI,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;YAC/D,IAAI,CAAC,CAAC,IAAI;gBAAE,MAAM,GAAG,MAAM,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;iBACjD,CAAC;gBACJ,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,2CAA2C,CAAC,CAAC;gBAC/D,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;gBAC/C,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBACxD,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC;gBACnC,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAChD,CAAC;YACD,CAAC,GAAG,MAAM,UAAU,CAClB,MAAM,EACN,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,EACpD,SAAS,EACT,MAAM,CACP,CAAC;QACJ,CAAC;QACD,MAAM,CAAC;YACL,MAAM,EAAE,mBAAmB;YAC3B,QAAQ,EAAE,CAAC,CAAC,SAAS;YACrB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAChC,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,MAAM,EAAE,CAAC,CAAC,MAAM;gBAChB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;aAC3B,CAAC,CAAC;YACH,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,SAAS,CACP,CAAC,CAAC,IAAI,EACN,oEAAoE,CACrE,CAAC;IACF,SAAS,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,EAAE,2BAA2B,CAAC,CAAC;IACtD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC/C,MAAM,CAAC,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAC9C,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,EAC3C,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACrC,MAAM,CACJ,MAAM,SAAS,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;QAChC,oEAAoE;QACpE,+DAA+D;QAC/D,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC;QAChE,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ;YAClB,CAAC,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC7B,CAAC,CAAC,MAAM,UAAU,CACd,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,EAC7B,SAAS,EACT,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAC3B,CAAC,CAAC,MAAM,IAAI,MAAM,CACnB,CAAC;QACN,IAAI,QAA0D,CAAC;QAC/D,mEAAmE;QACnE,4EAA4E;QAC5E,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,MAAM,YAAY,CAG5B,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;YACzB,IAAI,IAAI,EAAE,CAAC;gBACT,IAAI,CAAC;oBACH,QAAQ,GAAG;wBACT,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,KAAK,EAAE,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;qBACtC,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;wBACpD,MAAM,KAAK,CAAC;gBAChB,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;YACb,KAAK;YACL,OAAO,EAAE,CAAC;YACV,KAAK,EAAE,CAAC;YACR,KAAK;YACL,QAAQ;YACR,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,SAAS,EAAE,CAAC,CAAC,OAAO,GAAG,IAAI;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AACL,GAAG;KACA,OAAO,CAAC,UAAU,CAAC;KACnB,cAAc,CAAC,eAAe,CAAC;KAC/B,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IAClB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IACrC,MAAM,CAAC,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,MAAM,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC;AACL,GAAG;KACA,OAAO,CAAC,SAAS,CAAC;KAClB,cAAc,CAAC,eAAe,CAAC;KAC/B,cAAc,CAAC,kCAAkC,CAAC;KAClD,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IAClB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IACrC,MAAM,CAAC,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAC,MAAM,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC,CAAC;AACL,GAAG;KACA,OAAO,CAAC,QAAQ,CAAC;KACjB,cAAc,CAAC,eAAe,CAAC;KAC/B,cAAc,CAAC,sCAAsC,CAAC;KACtD,cAAc,CACb,gBAAgB,EAChB,6CAA6C,CAC9C;KACA,WAAW,CACV,OAAO,EACP,yFAAyF;IACvF,2GAA2G;IAC3G,0EAA0E;IAC1E,iFAAiF,CACpF;KACA,MAAM,CAAC,iBAAiB,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,CAAC;KACtD,SAAS,CACR,IAAI,MAAM,CACR,eAAe,EACf,uEAAuE,CACxE;KACE,OAAO,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;KAC1C,OAAO,CAAC,SAAS,CAAC,CACtB;KACA,SAAS,CACR,IAAI,MAAM,CACR,kBAAkB,EAClB,8DAA8D,CAC/D,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CACpB;KACA,MAAM,CACL,sBAAsB,EACtB,sDAAsD,EACtD,OAAO,CACR;KACA,MAAM,CAAC,eAAe,EAAE,mBAAmB,CAAC;KAC5C,MAAM,CAAC,mBAAmB,EAAE,mCAAmC,CAAC;KAChE,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IAClB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAClC,cAAc,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC3B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC/C,MAAM,CAAC,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAC9C,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,EAClC,CAAC,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,CACJ,MAAM,MAAM,CACV,KAAK,EACL,QAAQ,EACR,CAAC,EACD,CAAC,EACD,CAAC,CAAC,KAAK,EACP,CAAC,CAAC,KAAK,EACP;QACE,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,QAAQ,EAAE,CAAC,CAAC,QAAQ;KACrB,EACD,CAAC,CAAC,IAAI,EACN;QACE,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,IAAI,CAAC,SAAS,CAAC;YACb,KAAK,EAAE,eAAe;YACtB,GAAG,MAAM;YACT,SAAS,EAAE,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO;SACvC,CAAC,GAAG,IAAI,CACV;KACJ,CACF,CACF,CAAC;AACJ,CAAC,CAAC,CAAC;AACL,GAAG;KACA,OAAO,CAAC,MAAM,CAAC;KACf,MAAM,CAAC,eAAe,CAAC;KACvB,MAAM,CAAC,eAAe,CAAC;KACvB,MAAM,CAAC,sCAAsC,CAAC;KAC9C,MAAM,CAAC,eAAe,CAAC;KACvB,MAAM,CAAC,qBAAqB,CAAC;KAC7B,MAAM,CAAC,mBAAmB,EAAE,yBAAyB,EAAE,OAAO,EAAE,CAAC,CAAC;KAClE,MAAM,CAAC,aAAa,CAAC;KACrB,MAAM,CACL,kBAAkB,EAClB,yDAAyD,CAC1D;KACA,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IAClB,SAAS,CACP,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EACxE,+EAA+E,CAChF,CAAC;IACF,SAAS,CACP,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,EACvC,2DAA2D,CAC5D,CAAC;IACF,SAAS,CACP,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EACzD,sCAAsC,CACvC,CAAC;IACF,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC/C,IAAI,MAAM,CAAC;IACX,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,GAAG,MAAM,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACpC,SAAS,CACP,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ;YACnC,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,EACrC,6CAA6C,CAC9C,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,SAAS,CACP,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,EAC7B,+CAA+C,CAChD,CAAC;QACF,MAAM,CAAC,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAC9C,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QACrC,MAAM,GAAG,MAAM,YAAY,CACzB,KAAK,EACL,QAAQ,EACR,CAAC,EACD,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EACzC,CAAC,CAAC,IAAI,CACP,CAAC;IACJ,CAAC;IACD,IAAI,KAAmC,CAAC;IACxC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QACZ,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,wBAAwB,CAAC,CAAC;QAC/D,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAqB,CAAC;IAC7D,CAAC;IACD,MAAM,CACJ,MAAM,UAAU,CACd,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,EAC1C,QAAQ,EACR,MAAM,EACN;QACE,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAC/C,KAAK;QACL,cAAc,EAAE,CAAC,CAAC,cAAc;KACjC,CACF,CACF,CAAC;AACJ,CAAC,CAAC,CAAC;AACL,GAAG;KACA,OAAO,CAAC,KAAK,CAAC;KACd,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CACV,wEAAwE,CACzE;KACA,cAAc,CAAC,eAAe,CAAC;KAC/B,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;IAClB,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IAC/C,MAAM,CAAC,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAC9C,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,EACtC,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IAC9C,MAAM,CACJ,MAAM,SAAS,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;QAChC,SAAS,CACP,CAAC,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC,CAAC,EAClD,6DAA6D,CAC9D,CAAC;QACF,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AACL,IAAI,CAAC;IACH,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;AACzB,CAAC;AAAC,OAAO,CAAC,EAAE,CAAC;IACX,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC;IACrE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,OAAO,IAAI,CAAC,CAAC;IAC3C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/search.d.ts CHANGED
@@ -33,6 +33,11 @@ export declare function search(store: CollectionStore, s: Settings, r: Repositor
33
33
  path?: string;
34
34
  language?: string;
35
35
  }, mode?: SearchMode, options?: RerankOptions): Promise<unknown[]>;
36
+ /** Exact indexed symbol lookup; declarations and same-name definitions remain visible. */
37
+ export declare function lookup(store: CollectionStore, s: Settings, r: Repository, v: Published, symbol: string, size?: number, filters?: {
38
+ path?: string;
39
+ language?: string;
40
+ }): Promise<unknown[]>;
36
41
  export declare function loadHandle(id: string): Promise<Handle>;
37
42
  export declare function directHandle(store: CollectionStore, s: Settings, r: Repository, v: Published, path: string): Promise<Handle>;
38
43
  export declare function readHandle(store: CollectionStore, s: Settings, h: Handle, options?: {
package/dist/search.js CHANGED
@@ -70,6 +70,24 @@ export async function search(store, s, r, v, query, size = 10, filters = {}, mod
70
70
  const count = candidateLimit(size, options);
71
71
  invariant(mode === "lexical" || r.preset?.embedding?.managed, "Semantic/hybrid search requires a managed embedding Collection; register with --embedding text-embedding-3-small or text-embedding-3-large.");
72
72
  const request = retrievalQuery(query, count, filters, mode);
73
+ return queryResults(store, s, r, v, request, count, size, query, options, started);
74
+ }
75
+ /** Exact indexed symbol lookup; declarations and same-name definitions remain visible. */
76
+ export async function lookup(store, s, r, v, symbol, size = 5, filters = {}) {
77
+ const started = performance.now();
78
+ invariant(symbol.trim().length > 0 && symbol.length <= 200, "Symbol must contain 1–200 characters.");
79
+ invariant(Number.isInteger(size) && size >= 1 && size <= 20, "Lookup limit must be between 1 and 20.");
80
+ const request = {
81
+ bool: Object.entries({ kind: "chunk", symbol, ...filters })
82
+ .filter(([, value]) => value !== undefined)
83
+ .map(([field, value]) => ({
84
+ queryString: { query: value, defaultField: field, skipSyntax: true },
85
+ occur: "filter",
86
+ })),
87
+ };
88
+ return queryResults(store, s, r, v, request, size, size, symbol, {}, started, true);
89
+ }
90
+ async function queryResults(store, s, r, v, request, count, size, query, options, started, includeSource = false) {
73
91
  const entries = await inventoryAt(store, r, v);
74
92
  const files = new Map(entries.filter((e) => e.status === "included").map((e) => [e.fileId, e]));
75
93
  const candidates = [];
@@ -79,6 +97,7 @@ export async function search(store, s, r, v, query, size = 10, filters = {}, mod
79
97
  for (const hit of hits) {
80
98
  const d = hit.doc, e = files.get(d.fileId);
81
99
  invariant(d.kind === "chunk" &&
100
+ (!includeSource || d.symbol === query) &&
82
101
  d.configHash === r.configHash &&
83
102
  e?.chunkIds?.includes(d.id) &&
84
103
  d.contentHash === e.contentHash &&
@@ -100,7 +119,7 @@ export async function search(store, s, r, v, query, size = 10, filters = {}, mod
100
119
  };
101
120
  // Check the exact source/ranges before persisting an evidence handle.
102
121
  const evidence = await readHandle(store, s, handle, {
103
- exactChunk: !!options.rerank,
122
+ exactChunk: includeSource || !!options.rerank,
104
123
  });
105
124
  candidates.push({
106
125
  handle,
@@ -115,8 +134,13 @@ export async function search(store, s, r, v, query, size = 10, filters = {}, mod
115
134
  startLine: d.startLine,
116
135
  endLine: d.endLine,
117
136
  symbol: d.symbol,
118
- score: hit.score,
119
- excerpt: evidence.sourceText.slice(0, 600),
137
+ ...(includeSource
138
+ ? {
139
+ scope: d.scope,
140
+ chunkKind: d.chunkKind,
141
+ sourceText: evidence.sourceText,
142
+ }
143
+ : { score: hit.score, excerpt: evidence.sourceText.slice(0, 600) }),
120
144
  citation: evidence.citation,
121
145
  },
122
146
  });
@@ -135,9 +159,9 @@ export async function search(store, s, r, v, query, size = 10, filters = {}, mod
135
159
  .map((c, index) => ({ ...c, rerankScore: response.scores[index] }))
136
160
  .sort((a, b) => b.rerankScore - a.rerankScore || a.index - b.index);
137
161
  }
138
- if (options.rerank)
162
+ if (options.rerank || includeSource)
139
163
  invariant((await store.tags()).find((t) => t.name === v.tagName)?.snapshotId ===
140
- v.snapshotId, "Pinned Tag was deleted or recreated during reranking.");
164
+ v.snapshotId, "Pinned Tag was deleted or recreated during result preparation.");
141
165
  const result = [];
142
166
  for (const c of ranked.slice(0, size)) {
143
167
  await atomic(join(stateRoot(), "results", c.handle.id + ".json"), c.handle);
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@functional-systems/srcx",
3
- "version": "0.1.0-dev.33",
3
+ "version": "0.1.0-dev.35",
4
4
  "private": false,
5
5
  "description": "Version-aware code search on LambdaDB",
6
6
  "type": "module",
@@ -28,7 +28,7 @@
28
28
  "scripts": {
29
29
  "build": "tsc && node -e \"require('node:fs').chmodSync('dist/cli.js', 0o755)\"",
30
30
  "typecheck": "tsc --noEmit",
31
- "test": "npm run build && node --test --test-timeout=60000 test/*.test.mjs",
31
+ "test": "npm run build && node --test --test-timeout=120000 test/*.test.mjs",
32
32
  "start": "node dist/cli.js",
33
33
  "demo": "npm run build && node scripts/demo.mjs",
34
34
  "prepack": "npm run build",
@@ -66,5 +66,5 @@
66
66
  "url": "https://github.com/lambdadb/srcx/issues"
67
67
  },
68
68
  "license": "Apache-2.0",
69
- "gitHead": "2afbf938ef0916da5aa4e5b7744a700128581a6b"
69
+ "gitHead": "25781d8a66271798be0bc2f807010c5b73a29f65"
70
70
  }
@@ -50,6 +50,24 @@ managed embeddings and incur query embedding usage. Use them when appropriate to
50
50
  the task and configured access, not as an automatic remedy for every missed hit.
51
51
  `--language` filters the programming language; it does not select a query language.
52
52
 
53
+ When the question or inspected source supplies a symbol name, use exact lookup
54
+ rather than searching every occurrence of that identifier:
55
+
56
+ ```sh
57
+ srcx lookup --repo <collection> --version <resolved-commit> \
58
+ --symbol readToFile --limit 5
59
+ ```
60
+
61
+ Lookup returns indexed definitions/declarations with `sourceText`, scope, path,
62
+ lines and a pinned result handle in one call; do not reread identical source just
63
+ to obtain a citation. Names are exact and case-sensitive. For `Type.method`, use
64
+ `method` and check returned scope/path; add `--path` when the file is known.
65
+ Same-name symbols, declarations and split chunks may all appear. This is not
66
+ reference finding or runtime dispatch resolution, and a limit-sized or empty
67
+ response does not prove completeness or absence. Use natural-language search to
68
+ find an entry point when identifiers are unknown, then inspect connected
69
+ implementation and tests as needed. Lookup uses no query embedding.
70
+
53
71
  A hit in the right file is not necessarily the answering implementation. Follow
54
72
  relevant definitions, callers and tests and read enough source to establish the
55
73
  behavior. For a Python or TypeScript/TSX overload declaration, use
package/src/cli.ts CHANGED
@@ -35,7 +35,13 @@ import {
35
35
  type Published,
36
36
  } from "./publish.js";
37
37
  import { resolveVersion, syncTags } from "./releases.js";
38
- import { directHandle, loadHandle, readHandle, search } from "./search.js";
38
+ import {
39
+ directHandle,
40
+ loadHandle,
41
+ readHandle,
42
+ search,
43
+ lookup,
44
+ } from "./search.js";
39
45
  import { candidateLimit } from "./rerank.js";
40
46
  import { manageSkill, SKILL_AGENTS, SKILL_SCOPES } from "./skills.js";
41
47
  const cli = new Command()
@@ -454,6 +460,38 @@ cli
454
460
  ),
455
461
  );
456
462
  });
463
+ cli
464
+ .command("lookup")
465
+ .description(
466
+ "Find exact indexed symbol definitions and return their source chunks",
467
+ )
468
+ .requiredOption("--repo <name>")
469
+ .requiredOption("--version <commit-branch-or-release>")
470
+ .requiredOption("--symbol <name>", "Exact case-sensitive indexed symbol name")
471
+ .option("--path <path>", "Exact path filter for ambiguous names")
472
+ .option("--language <name>", "Exact programming-language filter")
473
+ .option(
474
+ "--limit <count>",
475
+ "Maximum source chunks (1–20; results may be partial)",
476
+ integer,
477
+ 5,
478
+ )
479
+ .action(async (o) => {
480
+ invariant(
481
+ o.limit >= 1 && o.limit <= 20,
482
+ "Lookup limit must be between 1 and 20.",
483
+ );
484
+ const { remote, settings } = await connected();
485
+ const r = await selectRepository(remote, o.repo),
486
+ store = remote.store(r.collection);
487
+ const v = await resolveVersion(store, r, o.version);
488
+ output(
489
+ await lookup(store, settings, r, v, o.symbol, o.limit, {
490
+ path: o.path,
491
+ language: o.language,
492
+ }),
493
+ );
494
+ });
457
495
  cli
458
496
  .command("read")
459
497
  .option("--result <id>")
package/src/search.ts CHANGED
@@ -137,6 +137,75 @@ export async function search(
137
137
  "Semantic/hybrid search requires a managed embedding Collection; register with --embedding text-embedding-3-small or text-embedding-3-large.",
138
138
  );
139
139
  const request = retrievalQuery(query, count, filters, mode);
140
+ return queryResults(
141
+ store,
142
+ s,
143
+ r,
144
+ v,
145
+ request,
146
+ count,
147
+ size,
148
+ query,
149
+ options,
150
+ started,
151
+ );
152
+ }
153
+
154
+ /** Exact indexed symbol lookup; declarations and same-name definitions remain visible. */
155
+ export async function lookup(
156
+ store: CollectionStore,
157
+ s: Settings,
158
+ r: Repository,
159
+ v: Published,
160
+ symbol: string,
161
+ size = 5,
162
+ filters: { path?: string; language?: string } = {},
163
+ ): Promise<unknown[]> {
164
+ const started = performance.now();
165
+ invariant(
166
+ symbol.trim().length > 0 && symbol.length <= 200,
167
+ "Symbol must contain 1–200 characters.",
168
+ );
169
+ invariant(
170
+ Number.isInteger(size) && size >= 1 && size <= 20,
171
+ "Lookup limit must be between 1 and 20.",
172
+ );
173
+ const request = {
174
+ bool: Object.entries({ kind: "chunk", symbol, ...filters })
175
+ .filter(([, value]) => value !== undefined)
176
+ .map(([field, value]) => ({
177
+ queryString: { query: value, defaultField: field, skipSyntax: true },
178
+ occur: "filter",
179
+ })),
180
+ };
181
+ return queryResults(
182
+ store,
183
+ s,
184
+ r,
185
+ v,
186
+ request,
187
+ size,
188
+ size,
189
+ symbol,
190
+ {},
191
+ started,
192
+ true,
193
+ );
194
+ }
195
+
196
+ async function queryResults(
197
+ store: CollectionStore,
198
+ s: Settings,
199
+ r: Repository,
200
+ v: Published,
201
+ request: Record<string, unknown>,
202
+ count: number,
203
+ size: number,
204
+ query: string,
205
+ options: RerankOptions,
206
+ started: number,
207
+ includeSource = false,
208
+ ): Promise<unknown[]> {
140
209
  const entries = await inventoryAt(store, r, v);
141
210
  const files = new Map(
142
211
  entries.filter((e) => e.status === "included").map((e) => [e.fileId, e]),
@@ -153,6 +222,7 @@ export async function search(
153
222
  e = files.get(d.fileId as string);
154
223
  invariant(
155
224
  d.kind === "chunk" &&
225
+ (!includeSource || d.symbol === query) &&
156
226
  d.configHash === r.configHash &&
157
227
  e?.chunkIds?.includes(d.id) &&
158
228
  d.contentHash === e.contentHash &&
@@ -176,7 +246,7 @@ export async function search(
176
246
  };
177
247
  // Check the exact source/ranges before persisting an evidence handle.
178
248
  const evidence = await readHandle(store, s, handle, {
179
- exactChunk: !!options.rerank,
249
+ exactChunk: includeSource || !!options.rerank,
180
250
  });
181
251
  candidates.push({
182
252
  handle,
@@ -191,8 +261,13 @@ export async function search(
191
261
  startLine: d.startLine,
192
262
  endLine: d.endLine,
193
263
  symbol: d.symbol,
194
- score: hit.score,
195
- excerpt: evidence.sourceText.slice(0, 600),
264
+ ...(includeSource
265
+ ? {
266
+ scope: d.scope,
267
+ chunkKind: d.chunkKind,
268
+ sourceText: evidence.sourceText,
269
+ }
270
+ : { score: hit.score, excerpt: evidence.sourceText.slice(0, 600) }),
196
271
  citation: evidence.citation,
197
272
  },
198
273
  });
@@ -214,11 +289,11 @@ export async function search(
214
289
  .map((c, index) => ({ ...c, rerankScore: response.scores[index]! }))
215
290
  .sort((a, b) => b.rerankScore - a.rerankScore || a.index - b.index);
216
291
  }
217
- if (options.rerank)
292
+ if (options.rerank || includeSource)
218
293
  invariant(
219
294
  (await store.tags()).find((t) => t.name === v.tagName)?.snapshotId ===
220
295
  v.snapshotId,
221
- "Pinned Tag was deleted or recreated during reranking.",
296
+ "Pinned Tag was deleted or recreated during result preparation.",
222
297
  );
223
298
  const result = [];
224
299
  for (const c of ranked.slice(0, size)) {