llm-relay 0.62.0 → 0.63.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/accounting-store-io.js +0 -33
- package/dist/accounting-store-io.js.map +1 -1
- package/dist/accounting-store-schema.js +0 -65
- package/dist/accounting-store-schema.js.map +1 -1
- package/dist/accounting-store.js +0 -195
- package/dist/accounting-store.js.map +1 -1
- package/dist/accounting.js +0 -72
- package/dist/accounting.js.map +1 -1
- package/dist/anthropic.js +0 -18
- package/dist/anthropic.js.map +1 -1
- package/dist/authEnv.js +0 -78
- package/dist/authEnv.js.map +1 -1
- package/dist/availability-snapshot.js +0 -58
- package/dist/availability-snapshot.js.map +1 -1
- package/dist/availability.js +0 -162
- package/dist/availability.js.map +1 -1
- package/dist/backend.js +1 -416
- package/dist/backend.js.map +1 -1
- package/dist/benchmarks.js +1 -63
- package/dist/benchmarks.js.map +1 -1
- package/dist/breaker-persistence.js +0 -59
- package/dist/breaker-persistence.js.map +1 -1
- package/dist/candidates.js +0 -64
- package/dist/candidates.js.map +1 -1
- package/dist/catalog.js +1 -140
- package/dist/catalog.js.map +1 -1
- package/dist/circuit-breaker.js +1 -90
- package/dist/circuit-breaker.js.map +1 -1
- package/dist/claude-hook.js +0 -81
- package/dist/claude-hook.js.map +1 -1
- package/dist/cli.d.ts +36 -0
- package/dist/cli.js +73 -730
- package/dist/cli.js.map +1 -1
- package/dist/config-edit.js +0 -11
- package/dist/config-edit.js.map +1 -1
- package/dist/config.d.ts +21 -0
- package/dist/config.js +22 -372
- package/dist/config.js.map +1 -1
- package/dist/configured-limits.js +0 -58
- package/dist/configured-limits.js.map +1 -1
- package/dist/context-limits.js +0 -97
- package/dist/context-limits.js.map +1 -1
- package/dist/control-authorization.js +0 -36
- package/dist/control-authorization.js.map +1 -1
- package/dist/cooldown-clear.js +0 -6
- package/dist/cooldown-clear.js.map +1 -1
- package/dist/credential-fleet.js +0 -5
- package/dist/credential-fleet.js.map +1 -1
- package/dist/credential-select.js +4 -30
- package/dist/credential-select.js.map +1 -1
- package/dist/dashboard-auth.js +0 -29
- package/dist/dashboard-auth.js.map +1 -1
- package/dist/dashboard-contract.js +0 -46
- package/dist/dashboard-contract.js.map +1 -1
- package/dist/dashboard-routes.js +0 -32
- package/dist/dashboard-routes.js.map +1 -1
- package/dist/dashboard-snapshot.js +0 -154
- package/dist/dashboard-snapshot.js.map +1 -1
- package/dist/dashboard-static.js +0 -22
- package/dist/dashboard-static.js.map +1 -1
- package/dist/delegate-gate/cast-necessity.js +1 -22
- package/dist/delegate-gate/cast-necessity.js.map +1 -1
- package/dist/delegate-gate/cli.js +0 -6
- package/dist/delegate-gate/cli.js.map +1 -1
- package/dist/delegate-gate/diff-parser.js +0 -32
- package/dist/delegate-gate/diff-parser.js.map +1 -1
- package/dist/delegate-gate/fix.js +0 -10
- package/dist/delegate-gate/fix.js.map +1 -1
- package/dist/delegate-gate/gate.js +0 -12
- package/dist/delegate-gate/gate.js.map +1 -1
- package/dist/delegate-gate/minimality.js +0 -38
- package/dist/delegate-gate/minimality.js.map +1 -1
- package/dist/delegate-gate/post-image.js +1 -13
- package/dist/delegate-gate/post-image.js.map +1 -1
- package/dist/delegate-gate/shared-state.js +0 -23
- package/dist/delegate-gate/shared-state.js.map +1 -1
- package/dist/delegate-gate/test-assertions.js +1 -54
- package/dist/delegate-gate/test-assertions.js.map +1 -1
- package/dist/delegate-gate/types.js +0 -11
- package/dist/delegate-gate/types.js.map +1 -1
- package/dist/dialect-stream.js +9 -37
- package/dist/dialect-stream.js.map +1 -1
- package/dist/dispatch-exhaustion-persistence.js +0 -35
- package/dist/dispatch-exhaustion-persistence.js.map +1 -1
- package/dist/dispatch.js +0 -269
- package/dist/dispatch.js.map +1 -1
- package/dist/documents.js +0 -92
- package/dist/documents.js.map +1 -1
- package/dist/dotenv.js +0 -22
- package/dist/dotenv.js.map +1 -1
- package/dist/dynamic-pools.js +0 -93
- package/dist/dynamic-pools.js.map +1 -1
- package/dist/emitSse.js +0 -64
- package/dist/emitSse.js.map +1 -1
- package/dist/executable-lookup.js +0 -59
- package/dist/executable-lookup.js.map +1 -1
- package/dist/hard-cap.js +1 -32
- package/dist/hard-cap.js.map +1 -1
- package/dist/host-routing.js +0 -40
- package/dist/host-routing.js.map +1 -1
- package/dist/installed-hosts.js +0 -71
- package/dist/installed-hosts.js.map +1 -1
- package/dist/json-shape.js +0 -19
- package/dist/json-shape.js.map +1 -1
- package/dist/kernel/contracts.js +0 -26
- package/dist/kernel/contracts.js.map +1 -1
- package/dist/kernel/request-lifecycle.js +0 -4
- package/dist/kernel/request-lifecycle.js.map +1 -1
- package/dist/key-checker.js +0 -115
- package/dist/key-checker.js.map +1 -1
- package/dist/key-import.js +0 -20
- package/dist/key-import.js.map +1 -1
- package/dist/keys-cli.js +0 -15
- package/dist/keys-cli.js.map +1 -1
- package/dist/keystore.js +2 -51
- package/dist/keystore.js.map +1 -1
- package/dist/lane-cadence.js +1 -51
- package/dist/lane-cadence.js.map +1 -1
- package/dist/lane-manifest.js +0 -54
- package/dist/lane-manifest.js.map +1 -1
- package/dist/lane-probe.js +0 -36
- package/dist/lane-probe.js.map +1 -1
- package/dist/lane-quota-probe.js +0 -61
- package/dist/lane-quota-probe.js.map +1 -1
- package/dist/log.js +0 -17
- package/dist/log.js.map +1 -1
- package/dist/mcp/lane-runner.d.ts +114 -0
- package/dist/mcp/lane-runner.js +186 -0
- package/dist/mcp/lane-runner.js.map +1 -0
- package/dist/mcp/protocol.d.ts +98 -0
- package/dist/mcp/protocol.js +67 -0
- package/dist/mcp/protocol.js.map +1 -0
- package/dist/mcp/server.d.ts +78 -0
- package/dist/mcp/server.js +360 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/metadata.js +0 -73
- package/dist/metadata.js.map +1 -1
- package/dist/network-block.js +0 -45
- package/dist/network-block.js.map +1 -1
- package/dist/offload.js +0 -21
- package/dist/offload.js.map +1 -1
- package/dist/onboarding.js +0 -36
- package/dist/onboarding.js.map +1 -1
- package/dist/openai-dialect.js +0 -32
- package/dist/openai-dialect.js.map +1 -1
- package/dist/openai-request.js +0 -236
- package/dist/openai-request.js.map +1 -1
- package/dist/os-keyring.js +0 -28
- package/dist/os-keyring.js.map +1 -1
- package/dist/ping/cadence.js +3 -90
- package/dist/ping/cadence.js.map +1 -1
- package/dist/ping/metrics.js +0 -91
- package/dist/ping/metrics.js.map +1 -1
- package/dist/ping/ping.js +0 -17
- package/dist/ping/ping.js.map +1 -1
- package/dist/ping/probe-cache.js +2 -53
- package/dist/ping/probe-cache.js.map +1 -1
- package/dist/ping/quota.js +0 -17
- package/dist/ping/quota.js.map +1 -1
- package/dist/ping/runtime-telemetry.js +1 -18
- package/dist/ping/runtime-telemetry.js.map +1 -1
- package/dist/pool-health.js +0 -49
- package/dist/pool-health.js.map +1 -1
- package/dist/presets.js +0 -4
- package/dist/presets.js.map +1 -1
- package/dist/process-safety-net.js +0 -36
- package/dist/process-safety-net.js.map +1 -1
- package/dist/quota-demotion.js +1 -35
- package/dist/quota-demotion.js.map +1 -1
- package/dist/quota-observation.js +0 -21
- package/dist/quota-observation.js.map +1 -1
- package/dist/rate-limits.js +1 -94
- package/dist/rate-limits.js.map +1 -1
- package/dist/refusal-interpretation.js +2 -327
- package/dist/refusal-interpretation.js.map +1 -1
- package/dist/registry.js +0 -11
- package/dist/registry.js.map +1 -1
- package/dist/repair.js +1 -119
- package/dist/repair.js.map +1 -1
- package/dist/request-log.js +0 -2
- package/dist/request-log.js.map +1 -1
- package/dist/reshaper.js +0 -85
- package/dist/reshaper.js.map +1 -1
- package/dist/resolved-attempt.js +0 -3
- package/dist/resolved-attempt.js.map +1 -1
- package/dist/responses-request.js +0 -187
- package/dist/responses-request.js.map +1 -1
- package/dist/routes/admin.js +0 -38
- package/dist/routes/admin.js.map +1 -1
- package/dist/secret-file-acl.js +0 -26
- package/dist/secret-file-acl.js.map +1 -1
- package/dist/self-update.js +0 -118
- package/dist/self-update.js.map +1 -1
- package/dist/server.js +15 -952
- package/dist/server.js.map +1 -1
- package/dist/session-pin.js +0 -9
- package/dist/session-pin.js.map +1 -1
- package/dist/setup-claude.js +0 -9
- package/dist/setup-claude.js.map +1 -1
- package/dist/spend-headroom.js +0 -20
- package/dist/spend-headroom.js.map +1 -1
- package/dist/sse-frames.js +0 -31
- package/dist/sse-frames.js.map +1 -1
- package/dist/sse.js +1 -19
- package/dist/sse.js.map +1 -1
- package/dist/state-paths.js +0 -16
- package/dist/state-paths.js.map +1 -1
- package/dist/stream-commit.js +1 -27
- package/dist/stream-commit.js.map +1 -1
- package/dist/target-facts.js +2 -130
- package/dist/target-facts.js.map +1 -1
- package/dist/telemetry.js +0 -8
- package/dist/telemetry.js.map +1 -1
- package/dist/think-tags.js +1 -38
- package/dist/think-tags.js.map +1 -1
- package/dist/tier-data.js +0 -29
- package/dist/tier-data.js.map +1 -1
- package/dist/tool-dialects.js +1 -103
- package/dist/tool-dialects.js.map +1 -1
- package/dist/tool-use-ids.js +0 -51
- package/dist/tool-use-ids.js.map +1 -1
- package/dist/usage-observer.js +0 -52
- package/dist/usage-observer.js.map +1 -1
- package/dist/validator.js +1 -25
- package/dist/validator.js.map +1 -1
- package/dist/winenv.js +0 -63
- package/dist/winenv.js.map +1 -1
- package/dist/write-behind.js +0 -12
- package/dist/write-behind.js.map +1 -1
- package/package.json +2 -2
- package/skills/llm-relay/SKILL.md +26 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage-observer.js","sourceRoot":"","sources":["../src/usage-observer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"usage-observer.js","sourceRoot":"","sources":["../src/usage-observer.ts"],"names":[],"mappings":"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"}
|
package/dist/validator.js
CHANGED
|
@@ -1,31 +1,14 @@
|
|
|
1
1
|
import Ajv2020Import from "ajv/dist/2020.js";
|
|
2
2
|
import { isToolUseBlock, } from "./anthropic.js";
|
|
3
|
-
// ajv is a CJS module; under NodeNext the default import is not seen as
|
|
4
|
-
// constructable, so cast to its constructor type. At runtime `module.exports`
|
|
5
|
-
// IS the class, so `new Ajv2020(...)` works. We use the 2020-12 dialect because
|
|
6
|
-
// tool schemas from Pydantic-v2 / zod-to-json-schema commonly declare it; a
|
|
7
|
-
// draft-07-only Ajv throws on those and would force an accept-all fallback.
|
|
8
3
|
const Ajv2020 = Ajv2020Import;
|
|
9
|
-
/**
|
|
10
|
-
* Deterministic tool_use gate. NO LLM. Turns a silently-broken tool call (empty
|
|
11
|
-
* args, wrong schema, hallucinated tool, or a tool_use without the matching
|
|
12
|
-
* stop_reason) into an explicit result the caller can log (detect mode) or act
|
|
13
|
-
* on (repair mode, later).
|
|
14
|
-
*/
|
|
15
4
|
export class ToolUseValidator {
|
|
16
5
|
ajv;
|
|
17
6
|
cache = new Map();
|
|
18
7
|
schemaStringCache = new WeakMap();
|
|
19
8
|
constructor() {
|
|
20
|
-
// Non-strict so vendor schemas (unknown formats/keywords) aren't rejected by
|
|
21
|
-
// the validator itself. allErrors surfaces every violation.
|
|
22
9
|
this.ajv = new Ajv2020({ strict: false, allErrors: true });
|
|
23
10
|
}
|
|
24
|
-
/** Returns a compiled validator, or null if the schema could not compile. */
|
|
25
11
|
compiledFor(name, schema) {
|
|
26
|
-
// The parsed schema object is shared across a request's tool_use blocks
|
|
27
|
-
// (toolSchemaMap guarantees it is a real object), so memoize its stable
|
|
28
|
-
// string per object rather than re-serializing it on every validate call.
|
|
29
12
|
let schemaStr = this.schemaStringCache.get(schema);
|
|
30
13
|
if (schemaStr === undefined) {
|
|
31
14
|
schemaStr = stableStringify(schema);
|
|
@@ -36,14 +19,11 @@ export class ToolUseValidator {
|
|
|
36
19
|
return this.cache.get(key) ?? null;
|
|
37
20
|
let fn;
|
|
38
21
|
try {
|
|
39
|
-
// Strip $schema so a declared dialect Ajv2020 doesn't recognize (e.g.
|
|
40
|
-
// draft-07) can't throw on meta-schema resolution; the structural keywords
|
|
41
|
-
// tools use validate the same under the 2020-12 dialect.
|
|
42
22
|
const { $schema: _ignored, ...rest } = schema;
|
|
43
23
|
fn = this.ajv.compile(rest);
|
|
44
24
|
}
|
|
45
25
|
catch {
|
|
46
|
-
fn = null;
|
|
26
|
+
fn = null;
|
|
47
27
|
}
|
|
48
28
|
this.cache.set(key, fn);
|
|
49
29
|
return fn;
|
|
@@ -69,7 +49,6 @@ export class ToolUseValidator {
|
|
|
69
49
|
});
|
|
70
50
|
return;
|
|
71
51
|
}
|
|
72
|
-
// input must be a JSON object for ANY tool, schema or not.
|
|
73
52
|
if (typeof input !== "object" || input === null || Array.isArray(input)) {
|
|
74
53
|
errors.push({
|
|
75
54
|
kind: "input_not_object",
|
|
@@ -113,8 +92,6 @@ export class ToolUseValidator {
|
|
|
113
92
|
}
|
|
114
93
|
}
|
|
115
94
|
});
|
|
116
|
-
// stop_reason consistency: a tool_use block requires stop_reason "tool_use",
|
|
117
|
-
// else the harness will not execute the tool (loop stalls).
|
|
118
95
|
if (toolUseCount > 0 && assistant.stop_reason !== "tool_use") {
|
|
119
96
|
errors.push({
|
|
120
97
|
kind: "stop_reason_mismatch",
|
|
@@ -133,7 +110,6 @@ function describe(v) {
|
|
|
133
110
|
return "array";
|
|
134
111
|
return typeof v;
|
|
135
112
|
}
|
|
136
|
-
/** Order-independent deterministic serialization — schema cache keys here, block comparison in repair.ts. */
|
|
137
113
|
export function stableStringify(v) {
|
|
138
114
|
if (v === null || typeof v !== "object")
|
|
139
115
|
return JSON.stringify(v) ?? "undefined";
|
package/dist/validator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAIL,cAAc,GACf,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../src/validator.ts"],"names":[],"mappings":"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"}
|
package/dist/winenv.js
CHANGED
|
@@ -1,56 +1,21 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Recovers Windows User/Machine-scope environment variables that a long-running process missed.
|
|
3
|
-
*
|
|
4
|
-
* THE PROBLEM. On Windows, a User-scope variable (`setx`, or the System Properties dialog) is
|
|
5
|
-
* written to `HKCU\Environment` and broadcast — but a process only builds its environment block
|
|
6
|
-
* when it STARTS. Anything already running never sees the new variable. The relay is launched
|
|
7
|
-
* once from `Startup` at logon and then runs for days, so every key added after that logon is
|
|
8
|
-
* invisible to it, while any shell the user opens afterwards has it.
|
|
9
|
-
*
|
|
10
|
-
* That split is what makes it so hard to diagnose: `llm-relay keys` runs as a NEW process and
|
|
11
|
-
* reports its own environment, so the CLI cheerfully lists a key the serving process does not
|
|
12
|
-
* have. Six providers' keys were sitting in the registry while the relay answered 401 for all of
|
|
13
|
-
* them, and every surface that asked a fresh CLI process said the keys were fine. It reads as
|
|
14
|
-
* "the provider rejected my key" and sends you to rotate a credential that was never wrong.
|
|
15
|
-
*
|
|
16
|
-
* THE FIX. At startup, read the registry scopes directly and fill in ONLY variables that are
|
|
17
|
-
* missing from `process.env`. Same contract as `dotenv.ts`: the real environment always wins,
|
|
18
|
-
* because it is the more explicit signal — this is a backstop for what the OS failed to deliver,
|
|
19
|
-
* never an override of what the launcher deliberately set.
|
|
20
|
-
*
|
|
21
|
-
* Non-Windows platforms are a no-op; there is no equivalent gap, since Unix has no way to change
|
|
22
|
-
* an already-running process's environment either but also no registry pretending otherwise.
|
|
23
|
-
*/
|
|
24
1
|
import { execFileSync } from "node:child_process";
|
|
25
2
|
import { keyIsPresent } from "./authEnv.js";
|
|
26
|
-
/**
|
|
27
|
-
* Variables never taken from the registry even when missing.
|
|
28
|
-
*
|
|
29
|
-
* `PATH` above all: the User scope holds a FRAGMENT of the effective PATH (the OS concatenates
|
|
30
|
-
* Machine + User at logon), so importing it wholesale replaces a complete PATH with a partial
|
|
31
|
-
* one and breaks executable lookup — `node.exe` stops resolving. The others are per-process or
|
|
32
|
-
* per-session by nature and copying them between contexts is meaningless at best.
|
|
33
|
-
*/
|
|
34
3
|
const NEVER_IMPORT = new Set(["PATH", "PATHEXT", "TEMP", "TMP", "PROMPT", "PSMODULEPATH", "COMSPEC"]);
|
|
35
4
|
function normalizedEnvName(name) {
|
|
36
5
|
return name.toUpperCase();
|
|
37
6
|
}
|
|
38
|
-
/** Merge registry scopes using Windows' case-insensitive name semantics. Later scopes win. */
|
|
39
7
|
function mergeScopes(...scopes) {
|
|
40
8
|
const merged = new Map();
|
|
41
9
|
for (const scope of scopes) {
|
|
42
10
|
for (const [name, value] of Object.entries(scope)) {
|
|
43
|
-
// Store the winning entry, not just its value, so User-scope spelling survives too.
|
|
44
11
|
merged.set(normalizedEnvName(name), [name, value]);
|
|
45
12
|
}
|
|
46
13
|
}
|
|
47
14
|
return [...merged.values()];
|
|
48
15
|
}
|
|
49
|
-
/** Parse `reg query` output: lines of ` NAME REG_SZ value`. */
|
|
50
16
|
export function parseRegQuery(text) {
|
|
51
17
|
const out = {};
|
|
52
18
|
for (const raw of text.split(/\r?\n/)) {
|
|
53
|
-
// Three or more runs of whitespace separate the columns; a value may itself contain spaces.
|
|
54
19
|
const m = /^\s+(\S+)\s+REG_(?:SZ|EXPAND_SZ)\s+(.*)$/.exec(raw);
|
|
55
20
|
if (!m)
|
|
56
21
|
continue;
|
|
@@ -62,7 +27,6 @@ export function parseRegQuery(text) {
|
|
|
62
27
|
}
|
|
63
28
|
return out;
|
|
64
29
|
}
|
|
65
|
-
/** Read one registry environment scope. Returns {} on any failure — this is a backstop. */
|
|
66
30
|
function readScope(key) {
|
|
67
31
|
try {
|
|
68
32
|
const stdout = execFileSync("reg", ["query", key], {
|
|
@@ -77,11 +41,6 @@ function readScope(key) {
|
|
|
77
41
|
return {};
|
|
78
42
|
}
|
|
79
43
|
}
|
|
80
|
-
/**
|
|
81
|
-
* Fill `env` with User/Machine-scope variables it is missing. Never overwrites.
|
|
82
|
-
*
|
|
83
|
-
* `platform` and `read` are injectable so the behaviour is testable without a Windows registry.
|
|
84
|
-
*/
|
|
85
44
|
export function recoverWindowsEnv(env = process.env, opts = {}) {
|
|
86
45
|
const platform = opts.platform ?? process.platform;
|
|
87
46
|
const result = { loaded: [], skipped: [], skippedPlatform: false };
|
|
@@ -90,40 +49,18 @@ export function recoverWindowsEnv(env = process.env, opts = {}) {
|
|
|
90
49
|
return result;
|
|
91
50
|
}
|
|
92
51
|
const read = opts.read ?? readScope;
|
|
93
|
-
// ⚠ Under vitest, never spawn `reg` — the same rule and the same shape as
|
|
94
|
-
// `secret-file-acl.ts` and `os-keyring.ts`: skip the real child process unless the seam is
|
|
95
|
-
// injected. This was the LAST unguarded real-world side effect in `src/`, and it cost twice.
|
|
96
|
-
//
|
|
97
|
-
// Latency: `readScope` runs `execFileSync` TWICE with `timeout: 5000` EACH, on the
|
|
98
|
-
// `loadOrExit()` path every CLI test file reaches. vitest's default test budget is also 5000ms,
|
|
99
|
-
// so one contended spawn consumes a whole test. Measured on this machine: ~50-70ms idle,
|
|
100
|
-
// 2806/3041/4045ms while the 108-file suite competed for process creation, and one run at
|
|
101
|
-
// 5265ms — which is exactly the intermittent "passes alone, fails under load" timeout seen in
|
|
102
|
-
// `test/cli.test.ts` and `test/accounting-cli-lifecycle.test.ts`.
|
|
103
|
-
//
|
|
104
|
-
// Hermeticity: it also merged the DEVELOPER'S real User/Machine registry environment into the
|
|
105
|
-
// worker's `process.env`, so a suite run depended on what happened to be set on the machine.
|
|
106
|
-
//
|
|
107
|
-
// `opts.read` still runs, so `test/winenv.test.ts` exercises the whole merge/skip/never-import
|
|
108
|
-
// policy exactly as before; only the literal `reg query` invocation is unreachable from tests,
|
|
109
|
-
// which is the accepted trade the two modules above already make.
|
|
110
52
|
if (process.env.VITEST !== undefined && opts.read === undefined)
|
|
111
53
|
return result;
|
|
112
|
-
// Machine first, then User — User wins on a conflict, matching how Windows itself composes them.
|
|
113
54
|
const merged = mergeScopes(read("HKLM\\SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment"), read("HKCU\\Environment"));
|
|
114
55
|
for (const [name, value] of merged) {
|
|
115
56
|
const normalizedName = normalizedEnvName(name);
|
|
116
57
|
if (NEVER_IMPORT.has(normalizedName))
|
|
117
58
|
continue;
|
|
118
|
-
// The shared presence predicate, so a whitespace-only exported variable counts as ABSENT
|
|
119
|
-
// and does not shadow a real value in the registry. Presence has one definition here.
|
|
120
59
|
const existingNames = Object.keys(env).filter((candidate) => normalizedEnvName(candidate) === normalizedName);
|
|
121
60
|
if (existingNames.some((candidate) => keyIsPresent(env[candidate]))) {
|
|
122
61
|
result.skipped.push(name);
|
|
123
62
|
continue;
|
|
124
63
|
}
|
|
125
|
-
// A plain injected object can hold differently-cased duplicates even though process.env on
|
|
126
|
-
// Windows cannot. Remove blank aliases so the winning registry spelling is observable there.
|
|
127
64
|
for (const existingName of existingNames) {
|
|
128
65
|
if (existingName !== name)
|
|
129
66
|
delete env[existingName];
|
package/dist/winenv.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"winenv.js","sourceRoot":"","sources":["../src/winenv.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"winenv.js","sourceRoot":"","sources":["../src/winenv.ts"],"names":[],"mappings":"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"}
|
package/dist/write-behind.js
CHANGED
|
@@ -1,22 +1,11 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Debounced write-behind scheduling, shared by the disk-backed caches (model catalog, probe
|
|
3
|
-
* cache, runtime telemetry). Each dirtying touch re-arms a short timer so bursts coalesce into
|
|
4
|
-
* one write, while the first touch starts a max-age clock so a steady stream of touches cannot
|
|
5
|
-
* defer the flush forever.
|
|
6
|
-
*/
|
|
7
1
|
export const DEFAULT_FLUSH_DELAY_MS = 250;
|
|
8
2
|
export const MAX_FLUSH_DELAY_MS = 2_000;
|
|
9
3
|
export class WriteBehindTimer {
|
|
10
4
|
timer = null;
|
|
11
5
|
dirtySince = null;
|
|
12
|
-
/** True when a touch has not yet been flushed (or cancelled). */
|
|
13
6
|
get dirty() {
|
|
14
7
|
return this.dirtySince !== null;
|
|
15
8
|
}
|
|
16
|
-
/**
|
|
17
|
-
* Re-arm the debounce. `flush` runs after the delay, with this timer already marked clean —
|
|
18
|
-
* so a flush implementation that also calls `clear()` (eager-flush paths do) stays idempotent.
|
|
19
|
-
*/
|
|
20
9
|
touch(flush, now = Date.now()) {
|
|
21
10
|
this.dirtySince ??= now;
|
|
22
11
|
if (this.timer)
|
|
@@ -27,7 +16,6 @@ export class WriteBehindTimer {
|
|
|
27
16
|
flush();
|
|
28
17
|
}, Math.min(DEFAULT_FLUSH_DELAY_MS, remaining));
|
|
29
18
|
}
|
|
30
|
-
/** Cancel any pending timer and mark clean. Call from eager-flush paths before writing. */
|
|
31
19
|
clear() {
|
|
32
20
|
if (this.timer) {
|
|
33
21
|
clearTimeout(this.timer);
|
package/dist/write-behind.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write-behind.js","sourceRoot":"","sources":["../src/write-behind.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"write-behind.js","sourceRoot":"","sources":["../src/write-behind.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAC1C,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC;AAExC,MAAM,OAAO,gBAAgB;IACnB,KAAK,GAA0B,IAAI,CAAC;IACpC,UAAU,GAAkB,IAAI,CAAC;IAGzC,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC;IAClC,CAAC;IAMD,KAAK,CAAC,KAAiB,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;QACvC,IAAI,CAAC,UAAU,KAAK,GAAG,CAAC;QACxB,IAAI,IAAI,CAAC,KAAK;YAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAC5E,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,KAAK,EAAE,CAAC;QACV,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAC,CAAC;IAClD,CAAC;IAGD,KAAK;QACH,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACpB,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IACzB,CAAC;CACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "llm-relay",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.63.0",
|
|
4
4
|
"description": "Loopback bidirectional Anthropic/OpenAI API proxy with tool-call validation and multi-provider routing.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"analysis:run": "node scripts/analysis-run.mjs",
|
|
45
45
|
"prepack": "npm run build",
|
|
46
46
|
"prepublishOnly": "npm run build && npm run check",
|
|
47
|
-
"build:server": "node scripts/clean-dist.mjs && tsc -p tsconfig.json",
|
|
47
|
+
"build:server": "node scripts/clean-dist.mjs && tsc -p tsconfig.json && tsc -p tsconfig.json --removeComments --declaration false --declarationMap false",
|
|
48
48
|
"build:dashboard": "vite build --config dashboard/vite.config.ts",
|
|
49
49
|
"check:dashboard": "tsc -p dashboard/tsconfig.json --noEmit && vitest run --config dashboard/vitest.config.ts",
|
|
50
50
|
"check:package": "node scripts/dashboard-package-check.mjs && node scripts/packed-dashboard-smoke.mjs"
|
|
@@ -289,7 +289,32 @@ back to the next on failure or quota exhaustion, exactly like candidates inside
|
|
|
289
289
|
The CLIs' own model lists are the authority on what exists — re-check them rather than trusting
|
|
290
290
|
ids written down anywhere, since a de-listed id fails a whole rung.
|
|
291
291
|
|
|
292
|
-
###
|
|
292
|
+
### The best way to delegate: the `dispatch` MCP tool
|
|
293
|
+
|
|
294
|
+
**If your host has llm-relay's MCP tools, use `dispatch`. It is one call and it returns an
|
|
295
|
+
ANSWER**, not a command you then have to run correctly:
|
|
296
|
+
|
|
297
|
+
```
|
|
298
|
+
dispatch(task: "<the whole task>") -> the lane's answer, plus which lane produced it
|
|
299
|
+
dispatch(task: "...", tier: "high") -> pick a capability tier
|
|
300
|
+
dispatch(task: "...", lane: "agy-gemini") -> force one rung
|
|
301
|
+
```
|
|
302
|
+
|
|
303
|
+
If the lane outlives `waitMs` (default 60 s) you get a `jobId` instead. Then:
|
|
304
|
+
`dispatch_status(jobId)` -> `dispatch_result(jobId)`, and `dispatch_cancel(jobId)` to stop it.
|
|
305
|
+
`dispatch_lanes()` shows the ladder if you want to choose deliberately.
|
|
306
|
+
|
|
307
|
+
⚠ **Prefer this over the CLI whenever it is available.** The CLI hands you a command, and running a
|
|
308
|
+
lane command correctly is the hard part — three client idle timeouts must be lifted or a long think
|
|
309
|
+
dies at ~300 s, stdin must be closed or `agy` stalls to its timeout, an npm `.cmd` shim needs a
|
|
310
|
+
shell with every token quoted, and a console child steals the desktop focus without window
|
|
311
|
+
suppression. The MCP server does all of that for you.
|
|
312
|
+
|
|
313
|
+
Not present? Add it once: `claude mcp add --scope user llm-relay -- llm-relay mcp`.
|
|
314
|
+
|
|
315
|
+
### One verb, host-adapted (the CLI form)
|
|
316
|
+
|
|
317
|
+
Use this when the MCP tools are not available to you.
|
|
293
318
|
|
|
294
319
|
`llm-relay dispatch` is the **only** thing you need to ask, from any harness. Do not branch on which
|
|
295
320
|
one you are in, and do not reason about whether a subagent can reach a pool from here — the relay
|