@adhd/sox-embedding-provider 0.5.0 → 0.5.1
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/fastembedLock.d.ts +47 -0
- package/dist/fastembedLock.d.ts.map +1 -1
- package/dist/fastembedLock.js +35 -0
- package/dist/fastembedLock.js.map +1 -1
- package/dist/fastembedProcessHost.d.ts.map +1 -1
- package/dist/fastembedProcessHost.js +22 -2
- package/dist/fastembedProcessHost.js.map +1 -1
- package/dist/onnxStderrFilter.d.ts +78 -0
- package/dist/onnxStderrFilter.d.ts.map +1 -0
- package/dist/onnxStderrFilter.js +100 -0
- package/dist/onnxStderrFilter.js.map +1 -0
- package/dist/package.json +1 -1
- package/dist/sharedFastembedProcess.d.ts +15 -4
- package/dist/sharedFastembedProcess.d.ts.map +1 -1
- package/dist/sharedFastembedProcess.js +78 -15
- package/dist/sharedFastembedProcess.js.map +1 -1
- package/package.json +2 -2
package/dist/fastembedLock.d.ts
CHANGED
|
@@ -38,6 +38,26 @@ export interface FastembedLockInfo {
|
|
|
38
38
|
* BL-331's own postmortem already warns against over-trusting.
|
|
39
39
|
*/
|
|
40
40
|
poolGroup?: string;
|
|
41
|
+
/**
|
|
42
|
+
* (BL-432) The service label of the process that OWNS this fastembed host
|
|
43
|
+
* (e.g. `memory-server`, `backlog`), threaded from the parent via
|
|
44
|
+
* `SOX_FASTEMBED_SERVICE` — the same env-threading shape as `poolGroup`.
|
|
45
|
+
*
|
|
46
|
+
* Two jobs:
|
|
47
|
+
* 1. IDENTITY in the BL-331 warning: "another fastembed host process
|
|
48
|
+
* (pid N, service X, started …)" names WHO the competing host belongs
|
|
49
|
+
* to, not just a bare pid an agent has to `ps` for.
|
|
50
|
+
* 2. SAME-SERVICE SUPPRESSION: a lock whose `service` equals our own is the
|
|
51
|
+
* sequential-CLI false positive (one service's own host, still named by
|
|
52
|
+
* the lock from an earlier run, or a second instance of the SAME
|
|
53
|
+
* service) and must NOT warn. Genuine CROSS-service contention still
|
|
54
|
+
* does.
|
|
55
|
+
*
|
|
56
|
+
* `undefined` when the owner declared no service identity (an
|
|
57
|
+
* uninitialised/`'unlabeled'` telemetry process), in which case neither
|
|
58
|
+
* suppression nor identity applies — the pre-BL-432 behaviour, unchanged.
|
|
59
|
+
*/
|
|
60
|
+
service?: string;
|
|
41
61
|
}
|
|
42
62
|
/**
|
|
43
63
|
* Resolved fresh on every call (not a module-level constant) so tests can
|
|
@@ -45,4 +65,31 @@ export interface FastembedLockInfo {
|
|
|
45
65
|
* needing `vi.resetModules()`.
|
|
46
66
|
*/
|
|
47
67
|
export declare function resolveFastembedLockPath(): string;
|
|
68
|
+
/**
|
|
69
|
+
* BL-432: the env key a parent writes and a forked host reads to label the
|
|
70
|
+
* lock with the OWNING service's identity. Mirrors `SOX_FASTEMBED_POOL_GROUP`
|
|
71
|
+
* (see `poolGroup` above) — set on the child's env by
|
|
72
|
+
* `SharedFastembedProcessClient.ensureProcess()`, read by the writer
|
|
73
|
+
* (`checkAndClaimFastembedLock`) and the parent-side reader alike.
|
|
74
|
+
*/
|
|
75
|
+
export declare const SOX_FASTEMBED_SERVICE = "SOX_FASTEMBED_SERVICE";
|
|
76
|
+
/**
|
|
77
|
+
* Normalize a candidate service identity. An empty string, or the telemetry
|
|
78
|
+
* "never configured" sentinel `'unlabeled'`, carries no identity and must
|
|
79
|
+
* NEVER drive same-service suppression — otherwise every process that never
|
|
80
|
+
* called `initTelemetry()` would suppress every other, including genuine
|
|
81
|
+
* cross-service contention. Returns `undefined` for those cases.
|
|
82
|
+
*/
|
|
83
|
+
export declare function normalizeFastembedService(service: string | undefined): string | undefined;
|
|
84
|
+
/**
|
|
85
|
+
* THIS process's own service identity for lock purposes.
|
|
86
|
+
*
|
|
87
|
+
* A forked host reads the owner's label from `SOX_FASTEMBED_SERVICE` (the
|
|
88
|
+
* parent set it on this child's env). The PARENT itself has no such env var for
|
|
89
|
+
* its own process, so it passes its telemetry service explicitly as
|
|
90
|
+
* `telemetryService` (from `currentRuntimeState().service`). Env wins when both
|
|
91
|
+
* are present, so a propagated owner label is never overwritten by a child's
|
|
92
|
+
* own (different) telemetry service.
|
|
93
|
+
*/
|
|
94
|
+
export declare function resolveFastembedServiceLabel(telemetryService?: string): string | undefined;
|
|
48
95
|
//# sourceMappingURL=fastembedLock.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastembedLock.d.ts","sourceRoot":"","sources":["../src/fastembedLock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH,uDAAuD;AACvD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"fastembedLock.d.ts","sourceRoot":"","sources":["../src/fastembedLock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAKH,uDAAuD;AACvD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;;;;;;;;OAaG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAE7D;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAGzF;AAED;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAI1F"}
|
package/dist/fastembedLock.js
CHANGED
|
@@ -29,4 +29,39 @@ import { join } from 'node:path';
|
|
|
29
29
|
export function resolveFastembedLockPath() {
|
|
30
30
|
return process.env['SOX_FASTEMBED_LOCK_PATH'] ?? join(tmpdir(), 'sox-fastembed-host.lock');
|
|
31
31
|
}
|
|
32
|
+
/**
|
|
33
|
+
* BL-432: the env key a parent writes and a forked host reads to label the
|
|
34
|
+
* lock with the OWNING service's identity. Mirrors `SOX_FASTEMBED_POOL_GROUP`
|
|
35
|
+
* (see `poolGroup` above) — set on the child's env by
|
|
36
|
+
* `SharedFastembedProcessClient.ensureProcess()`, read by the writer
|
|
37
|
+
* (`checkAndClaimFastembedLock`) and the parent-side reader alike.
|
|
38
|
+
*/
|
|
39
|
+
export const SOX_FASTEMBED_SERVICE = 'SOX_FASTEMBED_SERVICE';
|
|
40
|
+
/**
|
|
41
|
+
* Normalize a candidate service identity. An empty string, or the telemetry
|
|
42
|
+
* "never configured" sentinel `'unlabeled'`, carries no identity and must
|
|
43
|
+
* NEVER drive same-service suppression — otherwise every process that never
|
|
44
|
+
* called `initTelemetry()` would suppress every other, including genuine
|
|
45
|
+
* cross-service contention. Returns `undefined` for those cases.
|
|
46
|
+
*/
|
|
47
|
+
export function normalizeFastembedService(service) {
|
|
48
|
+
if (service === undefined || service === '' || service === 'unlabeled')
|
|
49
|
+
return undefined;
|
|
50
|
+
return service;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* THIS process's own service identity for lock purposes.
|
|
54
|
+
*
|
|
55
|
+
* A forked host reads the owner's label from `SOX_FASTEMBED_SERVICE` (the
|
|
56
|
+
* parent set it on this child's env). The PARENT itself has no such env var for
|
|
57
|
+
* its own process, so it passes its telemetry service explicitly as
|
|
58
|
+
* `telemetryService` (from `currentRuntimeState().service`). Env wins when both
|
|
59
|
+
* are present, so a propagated owner label is never overwritten by a child's
|
|
60
|
+
* own (different) telemetry service.
|
|
61
|
+
*/
|
|
62
|
+
export function resolveFastembedServiceLabel(telemetryService) {
|
|
63
|
+
const fromEnv = process.env[SOX_FASTEMBED_SERVICE];
|
|
64
|
+
const candidate = fromEnv !== undefined && fromEnv !== '' ? fromEnv : telemetryService;
|
|
65
|
+
return normalizeFastembedService(candidate);
|
|
66
|
+
}
|
|
32
67
|
//# sourceMappingURL=fastembedLock.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastembedLock.js","sourceRoot":"","sources":["../src/fastembedLock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"fastembedLock.js","sourceRoot":"","sources":["../src/fastembedLock.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AA2CjC;;;;GAIG;AACH,MAAM,UAAU,wBAAwB;IACtC,OAAO,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,yBAAyB,CAAC,CAAC;AAC7F,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAA2B;IACnE,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,IAAI,OAAO,KAAK,WAAW;QAAE,OAAO,SAAS,CAAC;IACzF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,4BAA4B,CAAC,gBAAyB;IACpE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC;IACvF,OAAO,yBAAyB,CAAC,SAAS,CAAC,CAAC;AAC9C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastembedProcessHost.d.ts","sourceRoot":"","sources":["../src/fastembedProcessHost.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AA2DH,6EAA6E;AAC7E,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAQ/C;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,IAAI,IAAI,
|
|
1
|
+
{"version":3,"file":"fastembedProcessHost.d.ts","sourceRoot":"","sources":["../src/fastembedProcessHost.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AA2DH,6EAA6E;AAC7E,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAQ/C;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,IAAI,IAAI,CA8EjD"}
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
*/
|
|
59
59
|
import * as fs from 'node:fs';
|
|
60
60
|
import { bootstrapChildTelemetry, childTelemetrySnapshot, log } from '@adhd/sox-telemetry';
|
|
61
|
-
import { resolveFastembedLockPath } from './fastembedLock.js';
|
|
61
|
+
import { resolveFastembedLockPath, resolveFastembedServiceLabel } from './fastembedLock.js';
|
|
62
62
|
// BUG-005: MODEL_MAP + resolveModelDim live in the side-effect-free
|
|
63
63
|
// `fastembedModels.js` (see its doc comment — importing them from
|
|
64
64
|
// `./fastembed.js` here would drag parent-side modules into this child
|
|
@@ -136,6 +136,11 @@ export function checkAndClaimFastembedLock() {
|
|
|
136
136
|
// preserves today's exact behaviour there. See `fastembedLock.ts`'s
|
|
137
137
|
// `poolGroup` doc comment for why this must be checked before warning.
|
|
138
138
|
const ownPoolGroup = process.env['SOX_FASTEMBED_POOL_GROUP'];
|
|
139
|
+
// (BL-432) The OWNING service's identity, threaded from the parent via
|
|
140
|
+
// `SOX_FASTEMBED_SERVICE` (the same env pattern as `SOX_FASTEMBED_POOL_GROUP`
|
|
141
|
+
// directly above). `undefined` for a host whose owner never declared a
|
|
142
|
+
// service — see `fastembedLock.ts`'s `service` doc comment.
|
|
143
|
+
const ownService = resolveFastembedServiceLabel();
|
|
139
144
|
try {
|
|
140
145
|
if (fs.existsSync(lockPath)) {
|
|
141
146
|
const raw = fs.readFileSync(lockPath, 'utf8');
|
|
@@ -143,11 +148,24 @@ export function checkAndClaimFastembedLock() {
|
|
|
143
148
|
const isKnownPoolSibling = typeof prev.poolGroup === 'string' &&
|
|
144
149
|
ownPoolGroup !== undefined &&
|
|
145
150
|
prev.poolGroup === ownPoolGroup;
|
|
151
|
+
// (BL-432) The sequential-CLI false positive: a lock naming OUR OWN
|
|
152
|
+
// service (e.g. a previous run of the same CLI, or a second instance of
|
|
153
|
+
// the same service) is not "a genuinely unrelated fastembed host".
|
|
154
|
+
// Suppress it exactly as a pool sibling is suppressed. Requires BOTH
|
|
155
|
+
// sides to carry a real identity — `ownService === undefined` (owner
|
|
156
|
+
// never declared one) or an unlabelled/old lock keeps the original
|
|
157
|
+
// warn-on-any-live-pid behaviour.
|
|
158
|
+
const isSameService = typeof prev.service === 'string' &&
|
|
159
|
+
ownService !== undefined &&
|
|
160
|
+
prev.service === ownService;
|
|
146
161
|
if (typeof prev.pid === 'number' &&
|
|
147
162
|
prev.pid !== process.pid &&
|
|
148
163
|
isPidAlive(prev.pid) &&
|
|
149
|
-
!isKnownPoolSibling
|
|
164
|
+
!isKnownPoolSibling &&
|
|
165
|
+
!isSameService) {
|
|
166
|
+
const prevService = typeof prev.service === 'string' ? prev.service : 'unknown';
|
|
150
167
|
const msg = `another fastembed host process (pid ${prev.pid}, ` +
|
|
168
|
+
`service ${prevService}, ` +
|
|
151
169
|
`started ${prev.startedAt ?? 'unknown'}) is ALREADY RUNNING on this machine. ` +
|
|
152
170
|
`Concurrent onnxruntime-node CoreML/ANE execution across separate OS processes has ` +
|
|
153
171
|
`been observed to cause severe (25-50x) embed latency due to Neural Engine/hardware ` +
|
|
@@ -157,6 +175,7 @@ export function checkAndClaimFastembedLock() {
|
|
|
157
175
|
console.error(`[fastembed] WARNING (BL-331): ${msg}`);
|
|
158
176
|
log.warn('embedding_provider.fastembed.competing_host_detected', {
|
|
159
177
|
competing_pid: prev.pid,
|
|
178
|
+
competing_service: prevService,
|
|
160
179
|
competing_started_at: prev.startedAt ?? 'unknown',
|
|
161
180
|
lock_file: lockPath,
|
|
162
181
|
});
|
|
@@ -177,6 +196,7 @@ export function checkAndClaimFastembedLock() {
|
|
|
177
196
|
pid: process.pid,
|
|
178
197
|
startedAt: new Date().toISOString(),
|
|
179
198
|
...(ownPoolGroup !== undefined ? { poolGroup: ownPoolGroup } : {}),
|
|
199
|
+
...(ownService !== undefined ? { service: ownService } : {}),
|
|
180
200
|
};
|
|
181
201
|
fs.writeFileSync(lockPath, JSON.stringify(info));
|
|
182
202
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fastembedProcessHost.js","sourceRoot":"","sources":["../src/fastembedProcessHost.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyDG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC3F,OAAO,EAAE,wBAAwB,EAA0B,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"fastembedProcessHost.js","sourceRoot":"","sources":["../src/fastembedProcessHost.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* (BUG-EMBED-ONNX-COREML-STDERR-NOISE-001) Filters the ONNX Runtime CoreML
|
|
3
|
+
* graph-partitioning warning out of the fastembed child's inherited stderr,
|
|
4
|
+
* while forwarding every other byte through verbatim, unbuffered, and in
|
|
5
|
+
* order.
|
|
6
|
+
*
|
|
7
|
+
* ── Why this exists ─────────────────────────────────────────────────────────
|
|
8
|
+
*
|
|
9
|
+
* `sharedFastembedProcess.ts` forks `fastembedProcessHost.ts` with
|
|
10
|
+
* `resolveExecutionProviders()` returning `['coreml', 'cpu']` on darwin
|
|
11
|
+
* (`fastembedProcessHost.ts`). bge-base's `word_embeddings` tensor is shaped
|
|
12
|
+
* `{30522,768}`, and CoreML's execution provider cannot host any input
|
|
13
|
+
* dimension over 16384 — so onnxruntime's native CoreML EP logs, at EVERY
|
|
14
|
+
* model load:
|
|
15
|
+
*
|
|
16
|
+
* [W:onnxruntime:, helper.cc:83 IsInputSupported] CoreML does not support
|
|
17
|
+
* input dim > 16384. Input:embeddings.word_embeddings.weight,
|
|
18
|
+
* shape: {30522,768}
|
|
19
|
+
*
|
|
20
|
+
* This is emitted by the native onnxruntime addon straight to the process's
|
|
21
|
+
* real stderr fd (not through any JS logger this package controls), and
|
|
22
|
+
* `sharedFastembedProcess.ts` forks the child with
|
|
23
|
+
* `stdio: ['ignore', 'inherit', 'inherit', 'ipc']` — so it lands on every
|
|
24
|
+
* `adhd-backlog` (or any other consumer) invocation's terminal, on every
|
|
25
|
+
* single command, even though the node in question simply falls back to CPU
|
|
26
|
+
* silently and nothing is actually wrong.
|
|
27
|
+
*
|
|
28
|
+
* ── Why this is a stderr *filter*, not a log-severity option ────────────────
|
|
29
|
+
*
|
|
30
|
+
* onnxruntime-node's `InferenceSession.SessionOptions` DOES expose a
|
|
31
|
+
* `logSeverityLevel` (0=Verbose…4=Fatal) that would suppress Warning-level
|
|
32
|
+
* messages at the source — a cleaner fix, if it were reachable. It is not:
|
|
33
|
+
* `fastembed@2.1.0`'s `FlagEmbedding.init()` (`fastembed.js`'s
|
|
34
|
+
* `ort.InferenceSession.create(modelPath, { executionProviders,
|
|
35
|
+
* graphOptimizationLevel: "all" })`) hardcodes its own `SessionOptions`
|
|
36
|
+
* literal with no passthrough for caller options, and `fastembed`'s public
|
|
37
|
+
* `InitOptions` type has no `sessionOptions`/`logSeverityLevel` field either
|
|
38
|
+
* (verified against the installed `fastembed@2.1.0` and
|
|
39
|
+
* `onnxruntime-node@1.21.0` packages — not assumed). Filtering the child's
|
|
40
|
+
* stderr byte stream is therefore the only lever this package can pull.
|
|
41
|
+
*
|
|
42
|
+
* ── Why this must NOT become "throw away all child stderr" ──────────────────
|
|
43
|
+
*
|
|
44
|
+
* `fastembedProcessHost.ts`'s BL-331 lock check intentionally
|
|
45
|
+
* `console.error`s a loud, greppable line when a competing fastembed host is
|
|
46
|
+
* detected (guarding against a silent 25-50x embed-latency regression), and
|
|
47
|
+
* `resolveExecutionProviders()` intentionally `console.error`s when
|
|
48
|
+
* `SOX_EMBED_EXECUTION_PROVIDER` forces a non-default provider. A blanket
|
|
49
|
+
* "pipe stderr, discard everything" fix would silently destroy both of those
|
|
50
|
+
* — reintroducing exactly the silent-failure class BL-331 exists to prevent.
|
|
51
|
+
* So this filter matches ONLY the known-benign CoreML dim-limit warning text
|
|
52
|
+
* and passes every other line — including genuine errors and both lines
|
|
53
|
+
* above — straight through unmodified.
|
|
54
|
+
*/
|
|
55
|
+
/**
|
|
56
|
+
* True if `line` is the known-benign ONNX Runtime CoreML dim-limit warning
|
|
57
|
+
* (see module doc comment). This is a plain substring match — deliberately
|
|
58
|
+
* narrow (not a broad `onnxruntime`/`[W:` pattern) so this filter can never
|
|
59
|
+
* swallow an unrelated onnxruntime warning or error that happens to share the
|
|
60
|
+
* `[W:onnxruntime:...]` prefix format.
|
|
61
|
+
*/
|
|
62
|
+
export declare function isBenignOnnxCoreMlWarning(line: string): boolean;
|
|
63
|
+
/**
|
|
64
|
+
* Attach a line-buffering filter to a child process's stderr `Readable`,
|
|
65
|
+
* dropping only lines matching {@link isBenignOnnxCoreMlWarning} and writing
|
|
66
|
+
* every other line through to `dest` (defaults to `process.stderr`)
|
|
67
|
+
* unbuffered, verbatim (original line content, `\n`-terminated), and in the
|
|
68
|
+
* order it was received.
|
|
69
|
+
*
|
|
70
|
+
* Chunk boundaries never line up with `\n` boundaries in a real pipe, so
|
|
71
|
+
* this buffers a trailing partial line across `data` events instead of
|
|
72
|
+
* filtering mid-line: `source` is split on `\n` as chunks arrive, each
|
|
73
|
+
* complete line is tested and (if not benign) written immediately, and any
|
|
74
|
+
* remaining partial line is flushed on `end` (also filtered, so a benign
|
|
75
|
+
* warning that happens to be the final unterminated write is still caught).
|
|
76
|
+
*/
|
|
77
|
+
export declare function attachOnnxStderrFilter(source: NodeJS.ReadableStream, dest?: NodeJS.WritableStream): void;
|
|
78
|
+
//# sourceMappingURL=onnxStderrFilter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onnxStderrFilter.d.ts","sourceRoot":"","sources":["../src/onnxStderrFilter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AAIH;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,CAAC,cAAc,EAC7B,IAAI,GAAE,MAAM,CAAC,cAA+B,GAC3C,IAAI,CAmBN"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* (BUG-EMBED-ONNX-COREML-STDERR-NOISE-001) Filters the ONNX Runtime CoreML
|
|
3
|
+
* graph-partitioning warning out of the fastembed child's inherited stderr,
|
|
4
|
+
* while forwarding every other byte through verbatim, unbuffered, and in
|
|
5
|
+
* order.
|
|
6
|
+
*
|
|
7
|
+
* ── Why this exists ─────────────────────────────────────────────────────────
|
|
8
|
+
*
|
|
9
|
+
* `sharedFastembedProcess.ts` forks `fastembedProcessHost.ts` with
|
|
10
|
+
* `resolveExecutionProviders()` returning `['coreml', 'cpu']` on darwin
|
|
11
|
+
* (`fastembedProcessHost.ts`). bge-base's `word_embeddings` tensor is shaped
|
|
12
|
+
* `{30522,768}`, and CoreML's execution provider cannot host any input
|
|
13
|
+
* dimension over 16384 — so onnxruntime's native CoreML EP logs, at EVERY
|
|
14
|
+
* model load:
|
|
15
|
+
*
|
|
16
|
+
* [W:onnxruntime:, helper.cc:83 IsInputSupported] CoreML does not support
|
|
17
|
+
* input dim > 16384. Input:embeddings.word_embeddings.weight,
|
|
18
|
+
* shape: {30522,768}
|
|
19
|
+
*
|
|
20
|
+
* This is emitted by the native onnxruntime addon straight to the process's
|
|
21
|
+
* real stderr fd (not through any JS logger this package controls), and
|
|
22
|
+
* `sharedFastembedProcess.ts` forks the child with
|
|
23
|
+
* `stdio: ['ignore', 'inherit', 'inherit', 'ipc']` — so it lands on every
|
|
24
|
+
* `adhd-backlog` (or any other consumer) invocation's terminal, on every
|
|
25
|
+
* single command, even though the node in question simply falls back to CPU
|
|
26
|
+
* silently and nothing is actually wrong.
|
|
27
|
+
*
|
|
28
|
+
* ── Why this is a stderr *filter*, not a log-severity option ────────────────
|
|
29
|
+
*
|
|
30
|
+
* onnxruntime-node's `InferenceSession.SessionOptions` DOES expose a
|
|
31
|
+
* `logSeverityLevel` (0=Verbose…4=Fatal) that would suppress Warning-level
|
|
32
|
+
* messages at the source — a cleaner fix, if it were reachable. It is not:
|
|
33
|
+
* `fastembed@2.1.0`'s `FlagEmbedding.init()` (`fastembed.js`'s
|
|
34
|
+
* `ort.InferenceSession.create(modelPath, { executionProviders,
|
|
35
|
+
* graphOptimizationLevel: "all" })`) hardcodes its own `SessionOptions`
|
|
36
|
+
* literal with no passthrough for caller options, and `fastembed`'s public
|
|
37
|
+
* `InitOptions` type has no `sessionOptions`/`logSeverityLevel` field either
|
|
38
|
+
* (verified against the installed `fastembed@2.1.0` and
|
|
39
|
+
* `onnxruntime-node@1.21.0` packages — not assumed). Filtering the child's
|
|
40
|
+
* stderr byte stream is therefore the only lever this package can pull.
|
|
41
|
+
*
|
|
42
|
+
* ── Why this must NOT become "throw away all child stderr" ──────────────────
|
|
43
|
+
*
|
|
44
|
+
* `fastembedProcessHost.ts`'s BL-331 lock check intentionally
|
|
45
|
+
* `console.error`s a loud, greppable line when a competing fastembed host is
|
|
46
|
+
* detected (guarding against a silent 25-50x embed-latency regression), and
|
|
47
|
+
* `resolveExecutionProviders()` intentionally `console.error`s when
|
|
48
|
+
* `SOX_EMBED_EXECUTION_PROVIDER` forces a non-default provider. A blanket
|
|
49
|
+
* "pipe stderr, discard everything" fix would silently destroy both of those
|
|
50
|
+
* — reintroducing exactly the silent-failure class BL-331 exists to prevent.
|
|
51
|
+
* So this filter matches ONLY the known-benign CoreML dim-limit warning text
|
|
52
|
+
* and passes every other line — including genuine errors and both lines
|
|
53
|
+
* above — straight through unmodified.
|
|
54
|
+
*/
|
|
55
|
+
const BENIGN_CORE_ML_WARNING_SUBSTRING = 'CoreML does not support input dim > 16384';
|
|
56
|
+
/**
|
|
57
|
+
* True if `line` is the known-benign ONNX Runtime CoreML dim-limit warning
|
|
58
|
+
* (see module doc comment). This is a plain substring match — deliberately
|
|
59
|
+
* narrow (not a broad `onnxruntime`/`[W:` pattern) so this filter can never
|
|
60
|
+
* swallow an unrelated onnxruntime warning or error that happens to share the
|
|
61
|
+
* `[W:onnxruntime:...]` prefix format.
|
|
62
|
+
*/
|
|
63
|
+
export function isBenignOnnxCoreMlWarning(line) {
|
|
64
|
+
return line.includes(BENIGN_CORE_ML_WARNING_SUBSTRING);
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Attach a line-buffering filter to a child process's stderr `Readable`,
|
|
68
|
+
* dropping only lines matching {@link isBenignOnnxCoreMlWarning} and writing
|
|
69
|
+
* every other line through to `dest` (defaults to `process.stderr`)
|
|
70
|
+
* unbuffered, verbatim (original line content, `\n`-terminated), and in the
|
|
71
|
+
* order it was received.
|
|
72
|
+
*
|
|
73
|
+
* Chunk boundaries never line up with `\n` boundaries in a real pipe, so
|
|
74
|
+
* this buffers a trailing partial line across `data` events instead of
|
|
75
|
+
* filtering mid-line: `source` is split on `\n` as chunks arrive, each
|
|
76
|
+
* complete line is tested and (if not benign) written immediately, and any
|
|
77
|
+
* remaining partial line is flushed on `end` (also filtered, so a benign
|
|
78
|
+
* warning that happens to be the final unterminated write is still caught).
|
|
79
|
+
*/
|
|
80
|
+
export function attachOnnxStderrFilter(source, dest = process.stderr) {
|
|
81
|
+
let buffer = '';
|
|
82
|
+
source.on('data', (chunk) => {
|
|
83
|
+
buffer += chunk.toString('utf8');
|
|
84
|
+
let idx;
|
|
85
|
+
while ((idx = buffer.indexOf('\n')) !== -1) {
|
|
86
|
+
const line = buffer.slice(0, idx);
|
|
87
|
+
buffer = buffer.slice(idx + 1);
|
|
88
|
+
if (!isBenignOnnxCoreMlWarning(line)) {
|
|
89
|
+
dest.write(`${line}\n`);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
source.on('end', () => {
|
|
94
|
+
if (buffer.length > 0 && !isBenignOnnxCoreMlWarning(buffer)) {
|
|
95
|
+
dest.write(buffer);
|
|
96
|
+
}
|
|
97
|
+
buffer = '';
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=onnxStderrFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onnxStderrFilter.js","sourceRoot":"","sources":["../src/onnxStderrFilter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AAEH,MAAM,gCAAgC,GAAG,2CAA2C,CAAC;AAErF;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAY;IACpD,OAAO,IAAI,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAA6B,EAC7B,OAA8B,OAAO,CAAC,MAAM;IAE5C,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAsB,EAAE,EAAE;QAC3C,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,GAAW,CAAC;QAChB,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAClC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YAC/B,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;QACpB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5D,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACrB,CAAC;QACD,MAAM,GAAG,EAAE,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adhd/sox-embedding-provider",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Pluggable text→vector embedding provider — generic EmbeddingProvider interface, config-driven model resolution, async batch-first API (AsyncIterable). Default: fastembed (local ONNX, >=3 model dims proven). Loud-fail: createEmbeddingProvider() throws ResolutionError if config is invalid or model cannot load — no silent downgrade.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"private": false,
|
|
@@ -28,10 +28,18 @@ export declare function __resetCompetingHostCacheForTests(): void;
|
|
|
28
28
|
* `competing_host_pid` telemetry field would read as permanently "contended"
|
|
29
29
|
* for every pooled request, which is exactly the false-positive noise BL-331's
|
|
30
30
|
* own postmortem warns against trusting.
|
|
31
|
+
*
|
|
32
|
+
* (BL-432) `ownService`, when supplied, does the same for SERVICE identity: a
|
|
33
|
+
* lock entry whose `service` equals our own is the sequential-CLI false
|
|
34
|
+
* positive (our own service's earlier/second host), not cross-service
|
|
35
|
+
* contention, and is suppressed. Requires BOTH sides to carry a real identity —
|
|
36
|
+
* `ownService === undefined` or an unlabelled/old lock keeps the original
|
|
37
|
+
* behaviour. The returned `service` is `null` when the lock carries none.
|
|
31
38
|
*/
|
|
32
|
-
export declare function detectCompetingFastembedHost(ownPid: number | undefined, ownPoolGroup?: string): {
|
|
39
|
+
export declare function detectCompetingFastembedHost(ownPid: number | undefined, ownPoolGroup?: string, ownService?: string): {
|
|
33
40
|
pid: number;
|
|
34
41
|
startedAt: string;
|
|
42
|
+
service: string | null;
|
|
35
43
|
} | null;
|
|
36
44
|
/**
|
|
37
45
|
* (BUG-MEMORY-EMBED-HEAD-OF-LINE-BLOCKING-001) The structural shape both
|
|
@@ -224,9 +232,12 @@ export declare class SharedFastembedProcessClient implements SharedFastembedClie
|
|
|
224
232
|
* `queue_depth` > 0 alongside a `response_ms` that scales with it) is
|
|
225
233
|
* distinguishable from "the child itself was slow on a solo request"
|
|
226
234
|
* (`queue_depth` === 0 with a large `response_ms`).
|
|
227
|
-
* 3. `competing_host_pid`
|
|
228
|
-
*
|
|
229
|
-
*
|
|
235
|
+
* 3. `competing_host_pid` (+ `competing_host_service`, BL-432) — present
|
|
236
|
+
* only when a second, still-live `fastembedProcessHost` process belonging
|
|
237
|
+
* to a DIFFERENT service is detected (BL-331's advisory lock), since
|
|
238
|
+
* that changes embed latency 25-50x independent of queueing. A
|
|
239
|
+
* same-service lock (the sequential-CLI false positive) is suppressed,
|
|
240
|
+
* so this field means genuine cross-service contention.
|
|
230
241
|
*
|
|
231
242
|
* BL-576: `signal`, when supplied, is an external cancellation source —
|
|
232
243
|
* e.g. `operation-guard.ts`'s `withOperationDeadline` abort controller, so
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedFastembedProcess.d.ts","sourceRoot":"","sources":["../src/sharedFastembedProcess.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;
|
|
1
|
+
{"version":3,"file":"sharedFastembedProcess.d.ts","sourceRoot":"","sources":["../src/sharedFastembedProcess.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,8 +21,9 @@ import { dirname, join } from 'node:path';
|
|
|
21
21
|
import { existsSync, readFileSync } from 'node:fs';
|
|
22
22
|
import * as os from 'node:os';
|
|
23
23
|
import { performance } from 'node:perf_hooks';
|
|
24
|
-
import { log, forkChild, _recordChildTelemetry } from '@adhd/sox-telemetry';
|
|
25
|
-
import { resolveFastembedLockPath } from './fastembedLock.js';
|
|
24
|
+
import { log, forkChild, _recordChildTelemetry, currentRuntimeState } from '@adhd/sox-telemetry';
|
|
25
|
+
import { resolveFastembedLockPath, resolveFastembedServiceLabel } from './fastembedLock.js';
|
|
26
|
+
import { attachOnnxStderrFilter } from './onnxStderrFilter.js';
|
|
26
27
|
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
27
28
|
/**
|
|
28
29
|
* Resolve `fastembedProcessHost.js` regardless of whether this module is
|
|
@@ -97,12 +98,14 @@ const COMPETING_HOST_CACHE_TTL_MS = 3000;
|
|
|
97
98
|
let _competingHostCache = null;
|
|
98
99
|
let _competingHostCacheOwnPid;
|
|
99
100
|
let _competingHostCacheOwnPoolGroup;
|
|
101
|
+
let _competingHostCacheOwnService;
|
|
100
102
|
let _competingHostCacheAt = -Infinity;
|
|
101
103
|
/** TEST-ONLY: clear the TTL cache so a test can force a fresh fs read. */
|
|
102
104
|
export function __resetCompetingHostCacheForTests() {
|
|
103
105
|
_competingHostCache = null;
|
|
104
106
|
_competingHostCacheOwnPid = undefined;
|
|
105
107
|
_competingHostCacheOwnPoolGroup = undefined;
|
|
108
|
+
_competingHostCacheOwnService = undefined;
|
|
106
109
|
_competingHostCacheAt = -Infinity;
|
|
107
110
|
}
|
|
108
111
|
/**
|
|
@@ -116,17 +119,26 @@ export function __resetCompetingHostCacheForTests() {
|
|
|
116
119
|
* `competing_host_pid` telemetry field would read as permanently "contended"
|
|
117
120
|
* for every pooled request, which is exactly the false-positive noise BL-331's
|
|
118
121
|
* own postmortem warns against trusting.
|
|
122
|
+
*
|
|
123
|
+
* (BL-432) `ownService`, when supplied, does the same for SERVICE identity: a
|
|
124
|
+
* lock entry whose `service` equals our own is the sequential-CLI false
|
|
125
|
+
* positive (our own service's earlier/second host), not cross-service
|
|
126
|
+
* contention, and is suppressed. Requires BOTH sides to carry a real identity —
|
|
127
|
+
* `ownService === undefined` or an unlabelled/old lock keeps the original
|
|
128
|
+
* behaviour. The returned `service` is `null` when the lock carries none.
|
|
119
129
|
*/
|
|
120
|
-
export function detectCompetingFastembedHost(ownPid, ownPoolGroup) {
|
|
130
|
+
export function detectCompetingFastembedHost(ownPid, ownPoolGroup, ownService) {
|
|
121
131
|
const now = performance.now();
|
|
122
132
|
if (now - _competingHostCacheAt < COMPETING_HOST_CACHE_TTL_MS &&
|
|
123
133
|
_competingHostCacheOwnPid === ownPid &&
|
|
124
|
-
_competingHostCacheOwnPoolGroup === ownPoolGroup
|
|
134
|
+
_competingHostCacheOwnPoolGroup === ownPoolGroup &&
|
|
135
|
+
_competingHostCacheOwnService === ownService) {
|
|
125
136
|
return _competingHostCache;
|
|
126
137
|
}
|
|
127
138
|
_competingHostCacheAt = now;
|
|
128
139
|
_competingHostCacheOwnPid = ownPid;
|
|
129
140
|
_competingHostCacheOwnPoolGroup = ownPoolGroup;
|
|
141
|
+
_competingHostCacheOwnService = ownService;
|
|
130
142
|
try {
|
|
131
143
|
const lockPath = resolveFastembedLockPath();
|
|
132
144
|
if (!existsSync(lockPath)) {
|
|
@@ -136,11 +148,17 @@ export function detectCompetingFastembedHost(ownPid, ownPoolGroup) {
|
|
|
136
148
|
const raw = JSON.parse(readFileSync(lockPath, 'utf8'));
|
|
137
149
|
const pid = typeof raw.pid === 'number' ? raw.pid : null;
|
|
138
150
|
const isKnownPoolSibling = typeof raw.poolGroup === 'string' && ownPoolGroup !== undefined && raw.poolGroup === ownPoolGroup;
|
|
139
|
-
|
|
151
|
+
// (BL-432) Same-service suppression — see this function's doc comment.
|
|
152
|
+
const isSameService = typeof raw.service === 'string' && ownService !== undefined && raw.service === ownService;
|
|
153
|
+
if (pid === null || pid === ownPid || !isPidAlive(pid) || isKnownPoolSibling || isSameService) {
|
|
140
154
|
_competingHostCache = null;
|
|
141
155
|
return null;
|
|
142
156
|
}
|
|
143
|
-
_competingHostCache = {
|
|
157
|
+
_competingHostCache = {
|
|
158
|
+
pid,
|
|
159
|
+
startedAt: typeof raw.startedAt === 'string' ? raw.startedAt : 'unknown',
|
|
160
|
+
service: typeof raw.service === 'string' ? raw.service : null,
|
|
161
|
+
};
|
|
144
162
|
return _competingHostCache;
|
|
145
163
|
}
|
|
146
164
|
catch {
|
|
@@ -317,15 +335,35 @@ export class SharedFastembedProcessClient {
|
|
|
317
335
|
return this.startingPromise;
|
|
318
336
|
this.startingPromise = new Promise((resolveStart) => {
|
|
319
337
|
const hostPath = this.hostPath ?? resolveFastembedHostPath();
|
|
338
|
+
// (BL-432) This client's owning-service identity, forwarded to the child
|
|
339
|
+
// via `SOX_FASTEMBED_SERVICE` so the BL-331 lock it writes names the
|
|
340
|
+
// SERVICE, and so same-service locks can be suppressed. Resolved from the
|
|
341
|
+
// parent's own telemetry service (`currentRuntimeState().service`), or a
|
|
342
|
+
// propagated `SOX_FASTEMBED_SERVICE` if one is already set on us.
|
|
343
|
+
const childService = resolveFastembedServiceLabel(currentRuntimeState().service);
|
|
320
344
|
const c = forkChild(hostPath, { service: 'embedding-provider', role: 'harness', logSink: 'file' }, {
|
|
321
|
-
|
|
345
|
+
// (BUG-EMBED-ONNX-COREML-STDERR-NOISE-001) stderr is 'pipe', not
|
|
346
|
+
// 'inherit' — see `onnxStderrFilter.ts`'s doc comment for why: the
|
|
347
|
+
// native onnxruntime CoreML EP logs a known-benign "CoreML does not
|
|
348
|
+
// support input dim > 16384" warning on every model load (bge-base's
|
|
349
|
+
// {30522,768} word_embeddings tensor), and it must be dropped
|
|
350
|
+
// without touching any other line (the BL-331 competing-host
|
|
351
|
+
// warning and the forced-execution-provider line above both go
|
|
352
|
+
// through `console.error` in the SAME child and must reach the
|
|
353
|
+
// real terminal unmodified). stdout stays 'inherit' — this package
|
|
354
|
+
// never wanted stdout piped, only stderr filtered.
|
|
355
|
+
stdio: ['ignore', 'inherit', 'pipe', 'ipc'],
|
|
322
356
|
// Real inference is CPU-bound in native code; no need to keep the
|
|
323
357
|
// parent process alive on this child's account.
|
|
324
358
|
detached: false,
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
: {}),
|
|
359
|
+
env: {
|
|
360
|
+
...process.env,
|
|
361
|
+
...(this.poolGroup !== undefined ? { SOX_FASTEMBED_POOL_GROUP: this.poolGroup } : {}),
|
|
362
|
+
...(childService !== undefined ? { SOX_FASTEMBED_SERVICE: childService } : {}),
|
|
363
|
+
},
|
|
328
364
|
});
|
|
365
|
+
if (c.stderr)
|
|
366
|
+
attachOnnxStderrFilter(c.stderr);
|
|
329
367
|
_recordChildTelemetry({
|
|
330
368
|
service: 'embedding-provider',
|
|
331
369
|
role: 'harness',
|
|
@@ -401,6 +439,19 @@ export class SharedFastembedProcessClient {
|
|
|
401
439
|
// idle at 0% CPU. Cross-process ANE contention remains unproven; the
|
|
402
440
|
// measured cause of the live slowdown was scheduling QoS (BL-331).
|
|
403
441
|
c.channel?.unref();
|
|
442
|
+
// (BUG-EMBED-ONNX-COREML-STDERR-NOISE-001) Same BL-370 lesson applies to
|
|
443
|
+
// the new 'pipe' stderr handle: attaching the 'data' listener inside
|
|
444
|
+
// `attachOnnxStderrFilter()` puts the underlying Socket into flowing
|
|
445
|
+
// mode, which re-refs it — re-assert `unref()` here so a standalone
|
|
446
|
+
// script with no other outstanding work can still exit promptly instead
|
|
447
|
+
// of hanging on this pipe forever. `child.stderr` is typed as a plain
|
|
448
|
+
// `Readable`, but for `stdio: 'pipe'` it is actually a `net.Socket`
|
|
449
|
+
// (which alone carries `unref()`) — narrowed via a structural check
|
|
450
|
+
// instead of a blind cast so a future Node stdio-shape change fails
|
|
451
|
+
// safe (silently skips the unref) rather than throwing.
|
|
452
|
+
const stderrHandle = c.stderr;
|
|
453
|
+
if (typeof stderrHandle?.unref === 'function')
|
|
454
|
+
stderrHandle.unref();
|
|
404
455
|
this.child = c;
|
|
405
456
|
resolveStart(c);
|
|
406
457
|
});
|
|
@@ -453,9 +504,12 @@ export class SharedFastembedProcessClient {
|
|
|
453
504
|
* `queue_depth` > 0 alongside a `response_ms` that scales with it) is
|
|
454
505
|
* distinguishable from "the child itself was slow on a solo request"
|
|
455
506
|
* (`queue_depth` === 0 with a large `response_ms`).
|
|
456
|
-
* 3. `competing_host_pid`
|
|
457
|
-
*
|
|
458
|
-
*
|
|
507
|
+
* 3. `competing_host_pid` (+ `competing_host_service`, BL-432) — present
|
|
508
|
+
* only when a second, still-live `fastembedProcessHost` process belonging
|
|
509
|
+
* to a DIFFERENT service is detected (BL-331's advisory lock), since
|
|
510
|
+
* that changes embed latency 25-50x independent of queueing. A
|
|
511
|
+
* same-service lock (the sequential-CLI false positive) is suppressed,
|
|
512
|
+
* so this field means genuine cross-service contention.
|
|
459
513
|
*
|
|
460
514
|
* BL-576: `signal`, when supplied, is an external cancellation source —
|
|
461
515
|
* e.g. `operation-guard.ts`'s `withOperationDeadline` abort controller, so
|
|
@@ -504,10 +558,19 @@ export class SharedFastembedProcessClient {
|
|
|
504
558
|
}
|
|
505
559
|
const id = this.nextId++;
|
|
506
560
|
const queueDepth = this.pending.size;
|
|
507
|
-
|
|
561
|
+
// (BL-432) Our own service identity, so `detectCompetingFastembedHost` can
|
|
562
|
+
// suppress a same-service lock (the sequential-CLI false positive) while
|
|
563
|
+
// still reporting genuine cross-service contention with identity.
|
|
564
|
+
const ownService = resolveFastembedServiceLabel(currentRuntimeState().service);
|
|
565
|
+
const competing = detectCompetingFastembedHost(child.pid, this.poolGroup, ownService);
|
|
508
566
|
const baseFields = {
|
|
509
567
|
queue_depth: queueDepth,
|
|
510
|
-
...(competing
|
|
568
|
+
...(competing
|
|
569
|
+
? {
|
|
570
|
+
competing_host_pid: competing.pid,
|
|
571
|
+
competing_host_service: competing.service ?? 'unknown',
|
|
572
|
+
}
|
|
573
|
+
: {}),
|
|
511
574
|
// (BUG-EMBED-POOL-SIZE-DARWIN-FREEMEM-001) See the constructor's
|
|
512
575
|
// `poolSize`/`memberIndex` doc comment: makes "was this process even
|
|
513
576
|
// pooled, and at what size" a directly observable telemetry field
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sharedFastembedProcess.js","sourceRoot":"","sources":["../src/sharedFastembedProcess.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sharedFastembedProcess.js","sourceRoot":"","sources":["../src/sharedFastembedProcess.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adhd/sox-embedding-provider",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.1",
|
|
4
4
|
"description": "Pluggable text→vector embedding provider — generic EmbeddingProvider interface, config-driven model resolution, async batch-first API (AsyncIterable). Default: fastembed (local ONNX, >=3 model dims proven). Loud-fail: createEmbeddingProvider() throws ResolutionError if config is invalid or model cannot load — no silent downgrade.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"private": false,
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"@huggingface/transformers": "^4.2.0",
|
|
28
28
|
"fastembed": "^2.1.0",
|
|
29
|
-
"@adhd/sox-telemetry": "^0.3.
|
|
29
|
+
"@adhd/sox-telemetry": "^0.3.1"
|
|
30
30
|
},
|
|
31
31
|
"sox": {
|
|
32
32
|
"area": "data",
|