@functional-systems/srcx 0.1.0-dev.3 → 0.1.0-dev.30

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.
Files changed (60) hide show
  1. package/CHANGELOG.md +132 -1
  2. package/DESIGN.md +193 -58
  3. package/README.md +542 -38
  4. package/RELEASING.md +30 -9
  5. package/VALIDATION.md +834 -25
  6. package/dist/build.d.ts +81 -1
  7. package/dist/build.js +187 -37
  8. package/dist/build.js.map +1 -1
  9. package/dist/chunk.d.ts +9 -3
  10. package/dist/chunk.js +341 -14
  11. package/dist/chunk.js.map +1 -1
  12. package/dist/cli.js +103 -19
  13. package/dist/cli.js.map +1 -1
  14. package/dist/file-policy.d.ts +20 -0
  15. package/dist/file-policy.js +96 -0
  16. package/dist/file-policy.js.map +1 -0
  17. package/dist/implementation.d.ts +11 -0
  18. package/dist/implementation.js +191 -0
  19. package/dist/implementation.js.map +1 -0
  20. package/dist/publish.d.ts +18 -0
  21. package/dist/publish.js +158 -34
  22. package/dist/publish.js.map +1 -1
  23. package/dist/releases.js +21 -3
  24. package/dist/releases.js.map +1 -1
  25. package/dist/remote.js +38 -9
  26. package/dist/remote.js.map +1 -1
  27. package/dist/repository.d.ts +4 -1
  28. package/dist/repository.js +15 -11
  29. package/dist/repository.js.map +1 -1
  30. package/dist/rerank.d.ts +16 -0
  31. package/dist/rerank.js +87 -0
  32. package/dist/rerank.js.map +1 -0
  33. package/dist/search.d.ts +14 -4
  34. package/dist/search.js +119 -23
  35. package/dist/search.js.map +1 -1
  36. package/dist/skills.d.ts +24 -0
  37. package/dist/skills.js +155 -0
  38. package/dist/skills.js.map +1 -0
  39. package/package.json +16 -5
  40. package/runtime/grammars/README.md +50 -0
  41. package/runtime/grammars/tree-sitter-bash.LICENSE +21 -0
  42. package/runtime/grammars/tree-sitter-bash.wasm +0 -0
  43. package/runtime/grammars/tree-sitter-sql.LICENSE +21 -0
  44. package/runtime/grammars/tree-sitter-sql.wasm +0 -0
  45. package/runtime/grammars/tree-sitter-wasm.LICENSE +21 -0
  46. package/runtime/qwen.py +132 -0
  47. package/runtime/requirements.txt +34 -0
  48. package/skills/srcx-search/SKILL.md +85 -0
  49. package/src/build.ts +258 -47
  50. package/src/chunk.ts +360 -12
  51. package/src/cli.ts +212 -24
  52. package/src/file-policy.ts +157 -0
  53. package/src/implementation.ts +253 -0
  54. package/src/publish.ts +226 -34
  55. package/src/releases.ts +36 -3
  56. package/src/remote.ts +59 -13
  57. package/src/repository.ts +20 -11
  58. package/src/rerank.ts +131 -0
  59. package/src/search.ts +154 -28
  60. package/src/skills.ts +205 -0
@@ -1 +1 @@
1
- {"version":3,"file":"releases.js","sourceRoot":"","sources":["../src/releases.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"releases.js","sourceRoot":"","sources":["../src/releases.ts"],"names":[],"mappings":"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"}
package/dist/remote.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { LambdaDBClient, branchRef, tagRef, branchSource, tagSource, tagTarget, } from "@functional-systems/lambdadb";
2
- import { invariant } from "./common.js";
2
+ import { hash, invariant } from "./common.js";
3
3
  export class RemoteError extends Error {
4
4
  }
5
5
  async function request(operation, call) {
@@ -41,6 +41,30 @@ export class LambdaRemote {
41
41
  store(name) {
42
42
  const c = this.client.collection(name);
43
43
  const ref = (r) => r.kind === "tag" ? tagRef(r.name) : branchRef(r.name);
44
+ // Some deployments omit managed vectors from list/query responses despite
45
+ // includeVectors. Keep the same immutable Tag and exact non-vector payload.
46
+ const hydrate = async (r, docs) => {
47
+ const missing = docs.filter((d) => d.embeddingStatus === "managed" && d.embedding === undefined);
48
+ const hydrated = new Map();
49
+ if (missing.length) {
50
+ invariant(r.kind === "tag", "Managed vector hydration requires an immutable Tag.");
51
+ const fetched = await request("fetch omitted vectors", () => c.docs.fetch({
52
+ ref: tagRef(r.name),
53
+ ids: missing.map((d) => d.id),
54
+ consistentRead: false,
55
+ includeVectors: true,
56
+ }));
57
+ const expected = new Map(missing.map((d) => [d.id, hash(d)]));
58
+ for (const item of fetched.docs) {
59
+ const doc = item.doc;
60
+ const { embedding: _, ...source } = doc;
61
+ invariant(!hydrated.has(doc.id) && expected.get(doc.id) === hash(source), "Returned/fetched managed payloads disagree.");
62
+ hydrated.set(doc.id, doc);
63
+ }
64
+ invariant(hydrated.size === expected.size, "Returned managed records are missing from fetch.");
65
+ }
66
+ return docs.map((doc) => hydrated.get(doc.id) ?? doc);
67
+ };
44
68
  return {
45
69
  fetch: (r, ids, consistent = false) => request("fetch", async () => {
46
70
  invariant(!consistent || r.kind === "branch", "Consistent reads require a Branch.");
@@ -69,8 +93,8 @@ export class LambdaRemote {
69
93
  includeVectors: true,
70
94
  pageToken: cursor,
71
95
  }));
72
- for (const d of page.docs)
73
- yield d.doc;
96
+ for (const doc of await hydrate(r, page.docs.map((d) => d.doc)))
97
+ yield doc;
74
98
  cursor = page.nextPageToken || undefined;
75
99
  if (cursor) {
76
100
  invariant(!seen.has(cursor), "LambdaDB repeated a pagination cursor.");
@@ -117,12 +141,17 @@ export class LambdaRemote {
117
141
  ? c.aliases.retarget(name, { target: tagTarget(target) })
118
142
  : c.aliases.create({ aliasName: name, target: tagTarget(target) }));
119
143
  },
120
- query: (tag, query, size) => request("query", async () => (await c.query({
121
- ref: tagRef(tag),
122
- consistentRead: false,
123
- query,
124
- size,
125
- })).docs.map((h) => ({ doc: h.doc, score: h.score }))),
144
+ query: async (name, query, size) => {
145
+ const result = await request("query", () => c.query({
146
+ ref: tagRef(name),
147
+ consistentRead: false,
148
+ query,
149
+ size,
150
+ includeVectors: true,
151
+ }));
152
+ const docs = await hydrate({ kind: "tag", name }, result.docs.map((h) => h.doc));
153
+ return result.docs.map((h, i) => ({ doc: docs[i], score: h.score }));
154
+ },
126
155
  };
127
156
  }
128
157
  }
@@ -1 +1 @@
1
- {"version":3,"file":"remote.js","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,SAAS,EACT,MAAM,EACN,YAAY,EACZ,SAAS,EACT,SAAS,GAEV,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,SAAS,EAAY,MAAM,aAAa,CAAC;AAkClD,MAAM,OAAO,WAAY,SAAQ,KAAK;CAAG;AACzC,KAAK,UAAU,OAAO,CACpB,SAAiB,EACjB,IAAsB;IAEtB,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,EAAE,CAAC;IACtB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,sFAAsF;QACtF,MAAM,MAAM,GAAI,CAA6B,CAAC,UAAU,CAAC;QACzD,MAAM,IAAI,WAAW,CACnB,YAAY,SAAS,UAAU,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,8DAA8D,EAClJ,EAAE,KAAK,EAAE,CAAC,EAAE,CACb,CAAC;IACJ,CAAC;AACH,CAAC;AACD,MAAM,OAAO,YAAY;IAEF;IADZ,MAAM,CAAiB;IAChC,YAAqB,QAAkB;QAAlB,aAAQ,GAAR,QAAQ,CAAU;QACrC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC5C,SAAS,CAAC,GAAG,EAAE,gCAAgC,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC;YAC/B,OAAO,EAAE,QAAQ,CAAC,QAAQ;YAC1B,WAAW,EAAE,QAAQ,CAAC,OAAO;YAC7B,aAAa,EAAE,GAAG;YAClB,WAAW,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;YACjC,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IACD,KAAK,CAAC,WAAW;QACf,OAAO,OAAO,CACZ,kBAAkB,EAClB,KAAK,IAAI,EAAE,CACT,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,WAAW,CACpE,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,MAAM,CACV,IAAY,EACZ,YAA+C,EAC/C,WAAmB,EACnB,IAA4B;QAE5B,MAAM,OAAO,CAAC,mBAAmB,EAAE,GAAG,EAAE,CACtC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC;YAC3B,cAAc,EAAE,IAAI;YACpB,YAAY;YACZ,WAAW;YACX,IAAI;SACL,CAAC,CACH,CAAC;IACJ,CAAC;IACD,KAAK,CAAC,IAAY;QAChB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,CAAC,CAAM,EAAE,EAAE,CACrB,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACxD,OAAO;YACL,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,GAAG,KAAK,EAAE,EAAE,CACpC,OAAO,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;gBAC1B,SAAS,CACP,CAAC,UAAU,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAClC,oCAAoC,CACrC,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAC/B,CAAC,CAAC,IAAI,KAAK,QAAQ;oBACjB,CAAC,CAAC;wBACE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;wBACtB,GAAG;wBACH,cAAc,EAAE,UAAU;wBAC1B,cAAc,EAAE,IAAI;qBACrB;oBACH,CAAC,CAAC;wBACE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;wBACnB,GAAG;wBACH,cAAc,EAAE,KAAK;wBACrB,cAAc,EAAE,IAAI;qBACrB,CACN,CAAC;gBACF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAU,CAAC,CAAC;YAC9C,CAAC,CAAC;YACJ,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;gBACX,IAAI,MAA0B,CAAC;gBAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;gBAC/B,GAAG,CAAC;oBACF,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAChD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;wBACV,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;wBACX,IAAI,EAAE,GAAG;wBACT,cAAc,EAAE,IAAI;wBACpB,SAAS,EAAE,MAAM;qBAClB,CAAC,CACH,CAAC;oBACF,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,IAAI;wBAAE,MAAM,CAAC,CAAC,GAAU,CAAC;oBAC9C,MAAM,GAAG,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC;oBACzC,IAAI,MAAM,EAAE,CAAC;wBACX,SAAS,CACP,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EACjB,wCAAwC,CACzC,CAAC;wBACF,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACnB,CAAC;gBACH,CAAC,QAAQ,MAAM,EAAE;YACnB,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;gBAC7B,MAAM,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE;gBAC5B,IAAI,GAAG,CAAC,MAAM;oBACZ,MAAM,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC;YACD,QAAQ,EAAE,GAAG,EAAE,CACb,OAAO,CAAC,eAAe,EAAE,KAAK,IAAI,EAAE,CAClC,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC7C,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,UAAU,EAAE,CAAC,CAAC,YAAY,EAAE,UAAU,IAAI,IAAI;gBAC9C,MAAM,EAAE,CAAC,CAAC,YAAY,EAAE,IAAI,IAAI,IAAI;aACrC,CAAC,CAAC,CACJ;YACH,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;gBAC7B,MAAM,OAAO,CAAC,eAAe,EAAE,GAAG,EAAE,CAClC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CACtE,CAAC;YACJ,CAAC;YACD,IAAI,EAAE,GAAG,EAAE,CACT,OAAO,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE,CAC9B,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrC,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,UAAU,EAAE,CAAC,CAAC,UAAU;aACzB,CAAC,CAAC,CACJ;YACH,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CACpB,OAAO,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;gBAC/B,MAAM,CAAC,GAAG,CACR,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;oBAClB,OAAO,EAAE,IAAI;oBACb,MAAM,EACJ,MAAM,CAAC,IAAI,KAAK,KAAK;wBACnB,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;wBACxB,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC;iBAChC,CAAC,CACH,CAAC,GAAG,CAAC;gBACN,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;YACpD,CAAC,CAAC;YACJ,OAAO,EAAE,GAAG,EAAE,CACZ,OAAO,CAAC,cAAc,EAAE,KAAK,IAAI,EAAE,CACjC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3C,IAAI,EAAE,CAAC,CAAC,SAAS;gBACjB,MAAM,EAAE,CAAC,CAAC,UAAU;gBACpB,IAAI,EAAE,CAAC,CAAC,UAAU;gBAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;aACrB,CAAC,CAAC,CACJ;YACH,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;gBACpC,MAAM,OAAO,CAAC,WAAW,EAAE,GAAG,EAAE,CAC9B,MAAM;oBACJ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzD,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CACrE,CAAC;YACJ,CAAC;YACD,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAC1B,OAAO,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAC1B,CACE,MAAM,CAAC,CAAC,KAAK,CAAC;gBACZ,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC;gBAChB,cAAc,EAAE,KAAK;gBACrB,KAAK;gBACL,IAAI;aACL,CAAC,CACH,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAU,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAC3D;SACJ,CAAC;IACJ,CAAC;CACF;AACD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAY,EAAO,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,IAAY,EAAO,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;AAClE,MAAM,CAAC,KAAK,UAAU,GAAG,CACvB,KAAsB,EACtB,GAAQ,EACR,EAAU,EACV,UAAU,GAAG,KAAK;IAElB,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IACtD,SAAS,CACP,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAClD,0BAA0B,CAC3B,CAAC;IACF,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"remote.js","sourceRoot":"","sources":["../src/remote.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
+ import { type Preset } from "./build.js";
1
2
  import { type Identity } from "./git.js";
2
3
  import { LambdaRemote } from "./remote.js";
3
4
  import { type Binding } from "./publish.js";
4
5
  import { type Settings } from "./settings.js";
5
6
  export type Repository = Binding & {
7
+ preset?: Preset;
6
8
  collection: string;
7
9
  name: string;
8
10
  description: string;
@@ -11,7 +13,7 @@ export type Repository = Binding & {
11
13
  export declare function destination(s: Settings, collection: string): string;
12
14
  export declare function collectionName(key: string, name: string, configHash: string): string;
13
15
  /** LambdaDB adds its built-in keyword id index to collection metadata. */
14
- export declare function matchesIndexSchema(actual: unknown): boolean;
16
+ export declare function matchesIndexSchema(actual: unknown, preset?: Preset): boolean;
15
17
  export declare function discover(remote: LambdaRemote): Promise<{
16
18
  repositories: Repository[];
17
19
  partial: {
@@ -25,5 +27,6 @@ export declare function register(remote: LambdaRemote, args: {
25
27
  remote?: string;
26
28
  description?: string;
27
29
  labels?: Record<string, string>;
30
+ preset?: Preset;
28
31
  }): Promise<Repository>;
29
32
  export declare function attachment(s: Settings, r: Repository): Promise<Identity>;
@@ -1,7 +1,7 @@
1
1
  import { randomUUID } from "node:crypto";
2
2
  import { join } from "node:path";
3
3
  import { atomic, hash, invariant, optionalJson, PURPOSE, } from "./common.js";
4
- import { PRESET, INDEX_CONFIGS } from "./build.js";
4
+ import { PRESET, indexConfigs, supportedPreset } from "./build.js";
5
5
  import { identity } from "./git.js";
6
6
  import { one, branch } from "./remote.js";
7
7
  import { exclusive } from "./publish.js";
@@ -18,13 +18,13 @@ export function collectionName(key, name, configHash) {
18
18
  return `code-${slug}-${hash(["collection-v1", key, configHash]).slice(0, 16)}`;
19
19
  }
20
20
  /** LambdaDB adds its built-in keyword id index to collection metadata. */
21
- export function matchesIndexSchema(actual) {
21
+ export function matchesIndexSchema(actual, preset = PRESET) {
22
22
  if (!actual || typeof actual !== "object" || Array.isArray(actual))
23
23
  return false;
24
24
  const { id, ...fields } = actual;
25
25
  if (id !== undefined && hash(id) !== hash({ type: "keyword" }))
26
26
  return false;
27
- return hash(fields) === hash(INDEX_CONFIGS);
27
+ return hash(fields) === hash(indexConfigs(preset));
28
28
  }
29
29
  function descriptor(r) {
30
30
  return {
@@ -37,24 +37,25 @@ function descriptor(r) {
37
37
  repoId: r.repoId,
38
38
  indexId: r.indexId,
39
39
  name: r.name,
40
- preset: PRESET,
40
+ preset: r.preset ?? PRESET,
41
41
  initialization: "ready",
42
42
  };
43
43
  }
44
44
  function decode(doc, c) {
45
45
  invariant(doc?.role === "repository" &&
46
46
  doc.initialization === "ready" &&
47
- doc.configHash === hash(PRESET) &&
48
- hash(doc.preset) === hash(PRESET), "Repository is partially initialized or uses an unsupported preset.");
47
+ supportedPreset(doc.preset) &&
48
+ doc.configHash === hash(doc.preset), "Repository is partially initialized or uses an unsupported preset.");
49
49
  invariant(doc.indexId === c.tags["index-id"] &&
50
50
  doc.configHash === c.tags["config-hash"] &&
51
51
  c.tags.purpose === PURPOSE, "Repository descriptor and Collection labels disagree.");
52
- invariant(matchesIndexSchema(c.indexConfigs), "Collection schema differs from the pinned preset.");
52
+ invariant(matchesIndexSchema(c.indexConfigs, doc.preset), "Collection schema differs from the pinned preset.");
53
53
  invariant(typeof doc.repoKey === "string" &&
54
54
  typeof doc.repoId === "string" &&
55
55
  typeof doc.indexId === "string" &&
56
56
  typeof doc.name === "string", "Malformed repository descriptor.");
57
57
  return {
58
+ preset: doc.preset,
58
59
  collection: c.collectionName,
59
60
  repoKey: doc.repoKey,
60
61
  repoId: doc.repoId,
@@ -91,13 +92,15 @@ export async function selectRepository(remote, selector) {
91
92
  r.repoKey.split("/").slice(1).join("/") === selector ||
92
93
  r.collection === selector);
93
94
  invariant(selected.length === 1, selected.length
94
- ? "Ambiguous repository; use its full source identity or Collection name."
95
+ ? "Ambiguous repository; use its exact Collection name (presets have separate Collections)."
95
96
  : `Repository not found${partial.length ? "; partially initialized collections exist (see repo list)" : ""}.`);
96
97
  return selected[0];
97
98
  }
98
99
  export async function register(remote, args) {
99
100
  const source = await identity(args.path, args.remote);
100
- const configHash = hash(PRESET), collection = collectionName(source.key, source.name, configHash), state = destination(remote.settings, collection);
101
+ const preset = args.preset ?? PRESET;
102
+ invariant(supportedPreset(preset), "Unsupported repository preset.");
103
+ const configHash = hash(preset), collection = collectionName(source.key, source.name, configHash), state = destination(remote.settings, collection);
101
104
  return exclusive(state, async () => {
102
105
  const initPath = join(state, "initialization.json");
103
106
  let intent = await optionalJson(initPath);
@@ -127,6 +130,7 @@ export async function register(remote, args) {
127
130
  invariant(description.length <= 255, "Description exceeds 255 characters.");
128
131
  const indexId = randomUUID();
129
132
  intent = {
133
+ preset,
130
134
  repoKey: source.key,
131
135
  name: source.name,
132
136
  repoId: randomUUID(),
@@ -149,9 +153,9 @@ export async function register(remote, args) {
149
153
  invariant(intent.repoKey === source.key && intent.configHash === configHash, "Provisioning journal identity mismatch.");
150
154
  if (existing)
151
155
  invariant(hash(existing.tags) === hash(intent.tags) &&
152
- matchesIndexSchema(existing.indexConfigs), "Existing Collection differs from provisioning journal.");
156
+ matchesIndexSchema(existing.indexConfigs, preset), "Existing Collection differs from provisioning journal.");
153
157
  else
154
- await remote.create(collection, JSON.parse(JSON.stringify(INDEX_CONFIGS)), intent.description, intent.tags);
158
+ await remote.create(collection, JSON.parse(JSON.stringify(indexConfigs(preset))), intent.description, intent.tags);
155
159
  const store = remote.store(collection);
156
160
  const branches = await store.branches();
157
161
  const empty = branches.find((b) => b.name === "checkpoint-empty");
@@ -1 +1 @@
1
- {"version":3,"file":"repository.js","sourceRoot":"","sources":["../src/repository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repository.js","sourceRoot":"","sources":["../src/repository.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export declare const QWEN_MODEL = "Qwen/Qwen3-Reranker-0.6B";
2
+ export declare const QWEN_REVISION = "e61197ed45024b0ed8a2d74b80b4d909f1255473";
3
+ export type Candidate = {
4
+ id: string;
5
+ text: string;
6
+ };
7
+ export type RerankOptions = {
8
+ rerank?: "qwen";
9
+ candidates?: number;
10
+ onTiming?: (timing: Record<string, unknown>) => void;
11
+ };
12
+ export declare function candidateLimit(limit: number, options: RerankOptions): number;
13
+ export declare function qwenScores(query: string, candidates: Candidate[]): Promise<{
14
+ scores: number[];
15
+ elapsedMs: number;
16
+ }>;
package/dist/rerank.js ADDED
@@ -0,0 +1,87 @@
1
+ import { execFile } from "node:child_process";
2
+ import { fileURLToPath } from "node:url";
3
+ import { invariant } from "./common.js";
4
+ export const QWEN_MODEL = "Qwen/Qwen3-Reranker-0.6B";
5
+ export const QWEN_REVISION = "e61197ed45024b0ed8a2d74b80b4d909f1255473";
6
+ // Reserved worker exit codes; never interpret or forward library stderr.
7
+ const WORKER_FAILURES = {
8
+ 20: "Qwen Python dependencies are missing or incompatible. Install runtime/requirements.txt with the Python selected by SRCX_RERANK_PYTHON.",
9
+ 21: "Qwen model cache is missing or incomplete. Download the pinned model revision from README and check HF_HUB_CACHE.",
10
+ 22: "Qwen device is invalid or unavailable. Set SRCX_RERANK_DEVICE to auto or cpu, or a supported mps/cuda device.",
11
+ 23: "Qwen query/chunk pair exceeds 8,192 tokens. Shorten the query or use search without --rerank; source is not truncated.",
12
+ 24: "Qwen request exceeds 4 MiB. Reduce --candidates or shorten the query.",
13
+ };
14
+ export function candidateLimit(limit, options) {
15
+ invariant(Number.isInteger(limit) && limit >= 1 && limit <= 100, "Limit must be an integer from 1 to 100.");
16
+ invariant(options.rerank === undefined || options.rerank === "qwen", "Unknown reranker.");
17
+ invariant(options.rerank || options.candidates === undefined, "--candidates requires --rerank qwen.");
18
+ const count = options.rerank
19
+ ? (options.candidates ?? Math.max(50, limit))
20
+ : limit;
21
+ invariant(Number.isInteger(count) && count >= limit && count <= 100, "Candidates must be an integer between --limit and 100.");
22
+ if (options.rerank)
23
+ invariant(process.env.SRCX_RERANK_PYTHON, "Set SRCX_RERANK_PYTHON to the prepared Python executable; see README reranker setup.");
24
+ return count;
25
+ }
26
+ export async function qwenScores(query, candidates) {
27
+ invariant(candidates.length > 0 &&
28
+ candidates.length <= 100 &&
29
+ new Set(candidates.map((c) => c.id)).size === candidates.length, "Invalid reranker candidates.");
30
+ const input = JSON.stringify({ query, candidates });
31
+ invariant(Buffer.byteLength(input) <= 4 * 1024 * 1024, "Reranker input exceeds 4 MiB. Reduce --candidates or shorten the query; no fallback was applied.");
32
+ const python = process.env.SRCX_RERANK_PYTHON;
33
+ invariant(python, "Set SRCX_RERANK_PYTHON to the prepared Python executable.");
34
+ const start = performance.now();
35
+ const stdout = await new Promise((resolve, reject) => {
36
+ const child = execFile(python, [fileURLToPath(new URL("../runtime/qwen.py", import.meta.url))], {
37
+ encoding: "utf8",
38
+ timeout: 120_000,
39
+ killSignal: "SIGKILL",
40
+ maxBuffer: 1024 * 1024,
41
+ env: {
42
+ ...process.env,
43
+ HF_HUB_OFFLINE: "1",
44
+ HF_HUB_DISABLE_TELEMETRY: "1",
45
+ TOKENIZERS_PARALLELISM: "false",
46
+ },
47
+ }, (error, output) => {
48
+ if (!error)
49
+ return resolve(output);
50
+ let message = "Qwen reranking failed. Check Python dependencies, cached model and SRCX_RERANK_DEVICE.";
51
+ if (error.code === "ENOENT")
52
+ message =
53
+ "Qwen Python executable was not found. Set SRCX_RERANK_PYTHON to an existing Python executable.";
54
+ else if (error.code === "EACCES")
55
+ message =
56
+ "Qwen Python executable cannot be started. Check execute permissions for SRCX_RERANK_PYTHON.";
57
+ else if (error.killed && error.signal === "SIGKILL" && !error.code)
58
+ message =
59
+ "Qwen reranking exceeded 120 seconds. Reduce --candidates or use an available faster device via SRCX_RERANK_DEVICE.";
60
+ else if (typeof error.code === "number")
61
+ message = WORKER_FAILURES[error.code] ?? message;
62
+ reject(new Error(`${message} No fallback was applied.`));
63
+ });
64
+ // An early worker exit can close stdin before Node finishes writing.
65
+ child.stdin?.on("error", () => { });
66
+ child.stdin?.end(input);
67
+ });
68
+ let response;
69
+ try {
70
+ response = JSON.parse(stdout);
71
+ }
72
+ catch {
73
+ throw new Error("Invalid Qwen response.");
74
+ }
75
+ invariant(response?.model === QWEN_MODEL &&
76
+ response?.revision === QWEN_REVISION &&
77
+ Array.isArray(response.scores) &&
78
+ response.scores.length === candidates.length, "Qwen response model or candidate count mismatch.");
79
+ const scores = response.scores.map((entry, index) => {
80
+ invariant(entry?.id === candidates[index].id &&
81
+ typeof entry.score === "number" &&
82
+ Number.isFinite(entry.score), "Qwen response candidate identity or score mismatch.");
83
+ return entry.score;
84
+ });
85
+ return { scores, elapsedMs: performance.now() - start };
86
+ }
87
+ //# sourceMappingURL=rerank.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rerank.js","sourceRoot":"","sources":["../src/rerank.ts"],"names":[],"mappings":"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"}
package/dist/search.d.ts CHANGED
@@ -2,7 +2,9 @@ import { type CollectionStore } from "./remote.js";
2
2
  import { type Settings } from "./settings.js";
3
3
  import type { Repository } from "./repository.js";
4
4
  import type { Published } from "./publish.js";
5
- import type { InventoryItem } from "./build.js";
5
+ import { type InventoryItem } from "./build.js";
6
+ import { type Implementation } from "./implementation.js";
7
+ import { type RerankOptions } from "./rerank.js";
6
8
  export type Handle = {
7
9
  id: string;
8
10
  endpoint: string;
@@ -22,17 +24,27 @@ export declare function lexicalQuery(query: string, filters?: {
22
24
  path?: string;
23
25
  language?: string;
24
26
  }): Record<string, unknown>;
27
+ export type SearchMode = "lexical" | "semantic" | "hybrid";
28
+ export declare function retrievalQuery(query: string, size: number, filters: {
29
+ path?: string;
30
+ language?: string;
31
+ }, mode: SearchMode): Record<string, unknown>;
25
32
  export declare function search(store: CollectionStore, s: Settings, r: Repository, v: Published, query: string, size?: number, filters?: {
26
33
  path?: string;
27
34
  language?: string;
28
- }): Promise<unknown[]>;
35
+ }, mode?: SearchMode, options?: RerankOptions): Promise<unknown[]>;
29
36
  export declare function loadHandle(id: string): Promise<Handle>;
30
37
  export declare function directHandle(store: CollectionStore, s: Settings, r: Repository, v: Published, path: string): Promise<Handle>;
31
38
  export declare function readHandle(store: CollectionStore, s: Settings, h: Handle, options?: {
32
39
  context?: number;
33
40
  fullFile?: boolean;
34
41
  lines?: [number, number];
42
+ exactChunk?: boolean;
43
+ implementation?: boolean;
35
44
  }): Promise<{
45
+ sourceText: string;
46
+ citation: string;
47
+ implementation?: Implementation | undefined;
36
48
  repository: string;
37
49
  commitOid: string;
38
50
  version: string;
@@ -41,6 +53,4 @@ export declare function readHandle(store: CollectionStore, s: Settings, h: Handl
41
53
  startLine: number;
42
54
  endLine: number;
43
55
  contentHash: string;
44
- sourceText: string;
45
- citation: string;
46
56
  }>;