@the-40-thieves/obsidian-tc-shared 1.25.0 → 1.27.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/dist/config/reranker.schema.js +2 -2
- package/dist/config/reranker.schema.js.map +1 -1
- package/dist/config/server.schema.d.ts +6 -0
- package/dist/config/server.schema.d.ts.map +1 -1
- package/dist/config/server.schema.js +14 -1
- package/dist/config/server.schema.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,7 +6,7 @@ export const RerankerConfigSchema = z.object({
|
|
|
6
6
|
provider: z
|
|
7
7
|
.string()
|
|
8
8
|
.min(1)
|
|
9
|
-
.describe("Reranker backend name, resolved against the provider registry at startup. Built-ins: cohere-compatible (any Cohere-format /rerank endpoint), model-tier (the BGE cross-encoder, configured via embeddings.modelTier.full), gateway (the inference gateway passthrough), local (THE-705: a bundled, fully offline cross-encoder — no gateway or Python service required; requires the optional @the-40-thieves/obsidian-tc-reranker-local package), and the profile-gated module."),
|
|
9
|
+
.describe("Reranker backend name, resolved against the provider registry at startup. Built-ins: cohere-compatible (any Cohere-format /rerank endpoint), model-tier (the BGE cross-encoder, configured via embeddings.modelTier.full), gateway (the inference gateway passthrough), local (THE-705/THE-944: a bundled, fully offline cross-encoder — no gateway or Python service required; requires the optional @the-40-thieves/obsidian-tc-reranker-local package, and is also tried AUTOMATICALLY — no need to set provider: 'local' explicitly — when this whole block is left unset, model-tier is not configured, and no gateway URL is configured either), and the profile-gated module."),
|
|
10
10
|
// Optional at the schema level because "required" is not uniform across entries: cohere-compatible
|
|
11
11
|
// genuinely needs one and throws its own actionable boot error when it is absent; model-tier
|
|
12
12
|
// ignores it entirely (its model comes from embeddings.modelTier.full.model) and throws its own
|
|
@@ -48,7 +48,7 @@ export const RerankerConfigSchema = z.object({
|
|
|
48
48
|
.string()
|
|
49
49
|
.min(1)
|
|
50
50
|
.optional()
|
|
51
|
-
.describe("Absolute path to the
|
|
51
|
+
.describe("Absolute path to the ROOT directory under which <model-id>/<revision>/ lives (config.json, tokenizer.json, onnx/model_int8.onnx — see @the-40-thieves/obsidian-tc-reranker-local's README) for provider 'local'. THE-944: no longer required to be pre-populated — fetched and sha256-verified automatically on the first rerank call if not already present. Defaults to that package's own models/ directory. `bun run fetch-model` still works, for offline/CI pre-population. Ignored — and refused at boot if set — by every other provider."),
|
|
52
52
|
// THE-705 round 2: route (i) of provider "local"'s resolution ladder (registry.ts's
|
|
53
53
|
// resolveLocalRerankerModule) — the escape hatch for every deployment shape the bare package
|
|
54
54
|
// specifier and the source-checkout default don't cover (an npm-installed server pointed at a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reranker.schema.js","sourceRoot":"","sources":["../../src/config/reranker.schema.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,mGAAmG;AACnG,uEAAuE;AACvE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACP,
|
|
1
|
+
{"version":3,"file":"reranker.schema.js","sourceRoot":"","sources":["../../src/config/reranker.schema.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,mGAAmG;AACnG,uEAAuE;AACvE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACP,spBAAspB,CACvpB;IACH,mGAAmG;IACnG,6FAA6F;IAC7F,gGAAgG;IAChG,iGAAiG;IACjG,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,iTAAiT,CAClT;IACH,qEAAqE;IACrE,OAAO,EAAE,CAAC;SACP,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,CACP,kTAAkT,CACnT;IACH,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,6JAA6J,CAC9J;IACH,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,kIAAkI,CACnI;IACH,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,EAAE;SACV,QAAQ,CACP,2IAA2I,CAC5I;IACH,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,2UAA2U,CAC5U;IACH,+FAA+F;IAC/F,8FAA8F;IAC9F,+BAA+B;IAC/B,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,mhBAAmhB,CACphB;IACH,oFAAoF;IACpF,6FAA6F;IAC7F,8FAA8F;IAC9F,8FAA8F;IAC9F,6CAA6C;IAC7C,eAAe,EAAE,CAAC;SACf,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACP,4XAA4X,CAC7X;CACJ,CAAC,CAAC"}
|
|
@@ -5,6 +5,9 @@ export declare const ServerConfigObject: z.ZodObject<{
|
|
|
5
5
|
"trusted-local": "trusted-local";
|
|
6
6
|
}>>;
|
|
7
7
|
cacheDir: z.ZodDefault<z.ZodString>;
|
|
8
|
+
db: z.ZodPrefault<z.ZodObject<{
|
|
9
|
+
busyTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
10
|
+
}, z.core.$strip>>;
|
|
8
11
|
vaults: z.ZodArray<z.ZodObject<{
|
|
9
12
|
id: z.ZodString;
|
|
10
13
|
name: z.ZodOptional<z.ZodString>;
|
|
@@ -393,6 +396,9 @@ export declare const ServerConfigSchema: z.ZodObject<{
|
|
|
393
396
|
"trusted-local": "trusted-local";
|
|
394
397
|
}>>;
|
|
395
398
|
cacheDir: z.ZodDefault<z.ZodString>;
|
|
399
|
+
db: z.ZodPrefault<z.ZodObject<{
|
|
400
|
+
busyTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
401
|
+
}, z.core.$strip>>;
|
|
396
402
|
vaults: z.ZodArray<z.ZodObject<{
|
|
397
403
|
id: z.ZodString;
|
|
398
404
|
name: z.ZodOptional<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.schema.d.ts","sourceRoot":"","sources":["../../src/config/server.schema.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAsCxB,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"server.schema.d.ts","sourceRoot":"","sources":["../../src/config/server.schema.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAsCxB,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyI7B,CAAC;AAKH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6C7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE1D"}
|
|
@@ -31,6 +31,19 @@ export const ServerConfigObject = z.object({
|
|
|
31
31
|
.string()
|
|
32
32
|
.default(".obsidian-tc")
|
|
33
33
|
.describe("Directory holding the derived index and caches. Everything in it is regenerable — deleting it forces a full reindex, it is never the source of truth."),
|
|
34
|
+
// THE-935 (GH #878): the first config surface over db/pragmas.ts — no `db` block existed before
|
|
35
|
+
// this, so it is introduced here, beside cacheDir, rather than nested under it.
|
|
36
|
+
db: z
|
|
37
|
+
.object({
|
|
38
|
+
busyTimeoutMs: z
|
|
39
|
+
.number()
|
|
40
|
+
.int()
|
|
41
|
+
.min(1)
|
|
42
|
+
.default(5000)
|
|
43
|
+
.describe("Milliseconds SQLite's busy handler retries a write before giving up, applied FIRST on every connection (THE-745) so it covers even the WAL-conversion window. Raising it is SYMPTOM TREATMENT, not a fix: a rising obsidian_tc_sql_lock_wait_seconds tail past this value is the direct evidence the writers genuinely overlap that long, and the fix is splitting the shared database per vault (THE-467), not raising this further. Easy to miss: stdio MCP spawns ONE SERVER PROCESS PER CLIENT, and every process opens the SAME cache.db, so the concurrent client count is load-bearing for how much contention this has to absorb — one operator measured `server_health` degraded (write_failures, last_write_error 'timed out') at 17 concurrent stdio processes on one cache.db, and ok again at 5 (GH #878)."),
|
|
44
|
+
})
|
|
45
|
+
.prefault({})
|
|
46
|
+
.describe("SQLite connection tuning, applied on every cache.db and experiential.db open."),
|
|
34
47
|
vaults: z
|
|
35
48
|
.array(VaultConfigSchema)
|
|
36
49
|
.min(1)
|
|
@@ -48,7 +61,7 @@ export const ServerConfigObject = z.object({
|
|
|
48
61
|
auth: AuthConfigSchema.prefault({ mode: "none" }).describe("Authentication and token verification."),
|
|
49
62
|
acl: AclConfigSchema.prefault({}).describe("Default path ACL, inherited by any vault without its own."),
|
|
50
63
|
embeddings: EmbeddingsConfigSchema.prefault({}).describe("Embedding provider and indexing throughput."),
|
|
51
|
-
reranker: RerankerConfigSchema.optional().describe("Reranker backend. ABSENT is meaningful: it preserves the historical behaviour of preferring the model-tier cross-encoder when configured, else the gateway passthrough, else a graceful no-op."),
|
|
64
|
+
reranker: RerankerConfigSchema.optional().describe("Reranker backend. ABSENT is meaningful: it preserves the historical behaviour of preferring the model-tier cross-encoder when configured, else the gateway passthrough, else — THE-944 — the bundled offline 'local' cross-encoder IF the optional @the-40-thieves/obsidian-tc-reranker-local package happens to resolve on this deployment and no gateway URL is configured; else a graceful RRF-only no-op, exactly as before THE-944."),
|
|
52
65
|
// THE-832: connection config for the inference gateway itself (extract/synthesize/judge/rerank).
|
|
53
66
|
// ABSENT preserves today's behaviour exactly: falls through to OBSIDIAN_TC_GATEWAY_URL /
|
|
54
67
|
// OBSIDIAN_TC_GATEWAY_TOKEN, then to every generative seam degrading gracefully.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.schema.js","sourceRoot":"","sources":["../../src/config/server.schema.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,kGAAkG;AAClG,+FAA+F;AAC/F,yFAAyF;AACzF,iGAAiG;AACjG,mGAAmG;AACnG,iGAAiG;AACjG,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAC5F,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,uFAAuF;IACvF,kGAAkG;IAClG,kGAAkG;IAClG,mGAAmG;IACnG,0FAA0F;IAC1F,eAAe,EAAE,CAAC;SACf,IAAI,CAAC,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;SACnC,QAAQ,EAAE;SACV,QAAQ,CACP,8PAA8P,CAC/P;IACH,QAAQ,EAAE,CAAC;SACR,MAAM,EAAE;SACR,OAAO,CAAC,cAAc,CAAC;SACvB,QAAQ,CACP,uJAAuJ,CACxJ;IACH,MAAM,EAAE,CAAC;SACN,KAAK,CAAC,iBAAiB,CAAC;SACxB,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,sDAAsD,CAAC;IACnE,IAAI,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CACxC,6FAA6F,CAC9F;IACD,2FAA2F;IAC3F,2FAA2F;IAC3F,+FAA+F;IAC/F,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAChD,6GAA6G,CAC9G;IACD,4FAA4F;IAC5F,gGAAgG;IAChG,uFAAuF;IACvF,6FAA6F;IAC7F,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAChD,2GAA2G,CAC5G;IACD,IAAI,EAAE,gBAAgB,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,QAAQ,CACxD,wCAAwC,CACzC;IACD,GAAG,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CACxC,2DAA2D,CAC5D;IACD,UAAU,EAAE,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CACtD,6CAA6C,CAC9C;IACD,QAAQ,EAAE,oBAAoB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAChD,
|
|
1
|
+
{"version":3,"file":"server.schema.js","sourceRoot":"","sources":["../../src/config/server.schema.ts"],"names":[],"mappings":"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"}
|