@ashlr/hub 3.7.0 → 3.9.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/CHANGELOG.md +257 -0
- package/dist/build-identity.json +2 -2
- package/dist/cli/resource-profile.js +95 -21
- package/dist/cli/resource-profile.js.map +1 -1
- package/dist/core/policy/local-only.d.ts +142 -2
- package/dist/core/policy/local-only.js +204 -15
- package/dist/core/policy/local-only.js.map +1 -1
- package/dist/core/resources/native-profile.d.ts +56 -0
- package/dist/core/resources/native-profile.js +368 -6
- package/dist/core/resources/native-profile.js.map +1 -1
- package/dist/core/run/budget.d.ts +22 -8
- package/dist/core/run/budget.js +80 -12
- package/dist/core/run/budget.js.map +1 -1
- package/dist/core/run/model-catalog.js +8 -1
- package/dist/core/run/model-catalog.js.map +1 -1
- package/dist/core/run/sandboxed-engine.js +3 -3
- package/dist/core/run/sandboxed-engine.js.map +1 -1
- package/dist/core/universe/builtins/preparation/manifest.json +1 -1
- package/dist/core/universe/builtins/preparation/preparation-bridge.mjs +69 -10
- package/dist/core/universe/builtins/preparation/preparation-verification-fixtures.mjs +68 -9
- package/dist/core/verse/adapters/claude.d.ts +49 -2
- package/dist/core/verse/adapters/claude.js +317 -56
- package/dist/core/verse/adapters/claude.js.map +1 -1
- package/dist/core/verse/adapters/codex.d.ts +81 -5
- package/dist/core/verse/adapters/codex.js +409 -47
- package/dist/core/verse/adapters/codex.js.map +1 -1
- package/dist/core/verse/adapters/grok.d.ts +13 -1
- package/dist/core/verse/adapters/grok.js +28 -2
- package/dist/core/verse/adapters/grok.js.map +1 -1
- package/dist/core/verse/adapters/index.d.ts +32 -0
- package/dist/core/verse/adapters/index.js +2 -0
- package/dist/core/verse/adapters/index.js.map +1 -1
- package/dist/core/verse/codex-rollout.d.ts +284 -0
- package/dist/core/verse/codex-rollout.js +786 -0
- package/dist/core/verse/codex-rollout.js.map +1 -0
- package/dist/core/verse/context-fit.d.ts +63 -0
- package/dist/core/verse/context-fit.js +355 -0
- package/dist/core/verse/context-fit.js.map +1 -0
- package/dist/core/verse/context-math.d.ts +215 -0
- package/dist/core/verse/context-math.js +365 -0
- package/dist/core/verse/context-math.js.map +1 -0
- package/dist/core/verse/local-models.d.ts +137 -1
- package/dist/core/verse/local-models.js +209 -5
- package/dist/core/verse/local-models.js.map +1 -1
- package/dist/core/verse/model-windows.d.ts +217 -0
- package/dist/core/verse/model-windows.js +616 -0
- package/dist/core/verse/model-windows.js.map +1 -0
- package/dist/core/verse/preferences.d.ts +123 -0
- package/dist/core/verse/preferences.js +403 -0
- package/dist/core/verse/preferences.js.map +1 -0
- package/dist/core/verse/project-memory.d.ts +112 -0
- package/dist/core/verse/project-memory.js +295 -0
- package/dist/core/verse/project-memory.js.map +1 -0
- package/dist/core/verse/seats.d.ts +106 -4
- package/dist/core/verse/seats.js +291 -89
- package/dist/core/verse/seats.js.map +1 -1
- package/dist/core/verse/session-engine.d.ts +117 -2
- package/dist/core/verse/session-engine.js +763 -65
- package/dist/core/verse/session-engine.js.map +1 -1
- package/dist/core/verse/session-handoff.d.ts +94 -0
- package/dist/core/verse/session-handoff.js +551 -0
- package/dist/core/verse/session-handoff.js.map +1 -0
- package/dist/core/verse/session-search.d.ts +63 -0
- package/dist/core/verse/session-search.js +213 -0
- package/dist/core/verse/session-search.js.map +1 -0
- package/dist/core/verse/session-store.d.ts +16 -2
- package/dist/core/verse/session-store.js +80 -6
- package/dist/core/verse/session-store.js.map +1 -1
- package/dist/core/verse/types.d.ts +333 -1
- package/dist/core/verse/types.js +54 -2
- package/dist/core/verse/types.js.map +1 -1
- package/dist/core/verse/verse-api.d.ts +40 -5
- package/dist/core/verse/verse-api.js +724 -25
- package/dist/core/verse/verse-api.js.map +1 -1
- package/dist/core/web/api.d.ts +14 -4
- package/dist/core/web/api.js +26 -11
- package/dist/core/web/api.js.map +1 -1
- package/dist/core/web/public/next/assets/{App-vtaHB9mp.js → App-XURmiAAp.js} +5 -5
- package/dist/core/web/public/next/assets/{App-vtaHB9mp.js.map → App-XURmiAAp.js.map} +1 -1
- package/dist/core/web/public/next/assets/{ApprovalsSection-B-bFJ0I9.js → ApprovalsSection-BriUzoZc.js} +2 -2
- package/dist/core/web/public/next/assets/{ApprovalsSection-B-bFJ0I9.js.map → ApprovalsSection-BriUzoZc.js.map} +1 -1
- package/dist/core/web/public/next/assets/AutonomySection-C4GBsQVc.js +2 -0
- package/dist/core/web/public/next/assets/{AutonomySection-DoqmsCjw.js.map → AutonomySection-C4GBsQVc.js.map} +1 -1
- package/dist/core/web/public/next/assets/ChatSection-BpOBOUvg.css +1 -0
- package/dist/core/web/public/next/assets/ChatSection-hlgPBRco.js +84 -0
- package/dist/core/web/public/next/assets/ChatSection-hlgPBRco.js.map +1 -0
- package/dist/core/web/public/next/assets/ConfirmDialog-BdQYI-Ng.js +2 -0
- package/dist/core/web/public/next/assets/ConfirmDialog-BdQYI-Ng.js.map +1 -0
- package/dist/core/web/public/next/assets/{Dialog-CPM9JxBc.js → Dialog-BxdIfmFH.js} +2 -2
- package/dist/core/web/public/next/assets/{Dialog-CPM9JxBc.js.map → Dialog-BxdIfmFH.js.map} +1 -1
- package/dist/core/web/public/next/assets/{DiffViewer-B84qVef9.js → DiffViewer-DmeRWuc4.js} +2 -2
- package/dist/core/web/public/next/assets/{DiffViewer-B84qVef9.js.map → DiffViewer-DmeRWuc4.js.map} +1 -1
- package/dist/core/web/public/next/assets/{McpSection-CEUpV_5X.js → McpSection-q34T7Tho.js} +2 -2
- package/dist/core/web/public/next/assets/{McpSection-CEUpV_5X.js.map → McpSection-q34T7Tho.js.map} +1 -1
- package/dist/core/web/public/next/assets/{MutationTokenDialog-DA8t97XT.js → MutationTokenDialog-CFAkwOEt.js} +2 -2
- package/dist/core/web/public/next/assets/{MutationTokenDialog-DA8t97XT.js.map → MutationTokenDialog-CFAkwOEt.js.map} +1 -1
- package/dist/core/web/public/next/assets/{ResourcePoolConsoleApp-Bq7Vyud0.js → ResourcePoolConsoleApp-DHc8GFOY.js} +4 -4
- package/dist/core/web/public/next/assets/{ResourcePoolConsoleApp-Bq7Vyud0.js.map → ResourcePoolConsoleApp-DHc8GFOY.js.map} +1 -1
- package/dist/core/web/public/next/assets/{RouteErrorBoundary-Badio_uO.js → RouteErrorBoundary-ZL9F4qUn.js} +2 -2
- package/dist/core/web/public/next/assets/{RouteErrorBoundary-Badio_uO.js.map → RouteErrorBoundary-ZL9F4qUn.js.map} +1 -1
- package/dist/core/web/public/next/assets/{Meter-CLcr-4wS.css → Segmented-8cf0Fypn.css} +1 -1
- package/dist/core/web/public/next/assets/{Meter--h3MmZS-.js → Segmented-DbRjVye3.js} +2 -2
- package/dist/core/web/public/next/assets/Segmented-DbRjVye3.js.map +1 -0
- package/dist/core/web/public/next/assets/SettingsSection-nJGGGYqv.js +2 -0
- package/dist/core/web/public/next/assets/{SettingsSection-BwrpQlpP.js.map → SettingsSection-nJGGGYqv.js.map} +1 -1
- package/dist/core/web/public/next/assets/UniverseConsoleApp-6GJydgo4.js +2 -0
- package/dist/core/web/public/next/assets/{UniverseConsoleApp-_FSohAdN.js.map → UniverseConsoleApp-6GJydgo4.js.map} +1 -1
- package/dist/core/web/public/next/assets/{UniverseView-DqcXbed4.js → UniverseView-DLDtNYL8.js} +2 -2
- package/dist/core/web/public/next/assets/{UniverseView-DqcXbed4.js.map → UniverseView-DLDtNYL8.js.map} +1 -1
- package/dist/core/web/public/next/assets/UsageSection-Cf9d9iFH.js +2 -0
- package/dist/core/web/public/next/assets/UsageSection-Cf9d9iFH.js.map +1 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-DsdKQoTH.css +1 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-y0uOHixd.js +3 -0
- package/dist/core/web/public/next/assets/VerseConsoleApp-y0uOHixd.js.map +1 -0
- package/dist/core/web/public/next/assets/{charts-CTZJ-JrH.js → charts-CVooqJWN.js} +2 -2
- package/dist/core/web/public/next/assets/{charts-CTZJ-JrH.js.map → charts-CVooqJWN.js.map} +1 -1
- package/dist/core/web/public/next/assets/context-model-Bqv8DVuH.js +2 -0
- package/dist/core/web/public/next/assets/context-model-Bqv8DVuH.js.map +1 -0
- package/dist/core/web/public/next/assets/global-eaY9GyX3.js +2 -0
- package/dist/core/web/public/next/assets/global-eaY9GyX3.js.map +1 -0
- package/dist/core/web/public/next/assets/{icons-D9vlf85u.js → icons-vex8rclC.js} +2 -2
- package/dist/core/web/public/next/assets/{icons-D9vlf85u.js.map → icons-vex8rclC.js.map} +1 -1
- package/dist/core/web/public/next/assets/{index-CZamKRUg.js → index-D2Eik-zt.js} +3 -3
- package/dist/core/web/public/next/assets/{index-CZamKRUg.js.map → index-D2Eik-zt.js.map} +1 -1
- package/dist/core/web/public/next/assets/{queries-B8eBnFox.js → queries-bAYU0VNy.js} +2 -2
- package/dist/core/web/public/next/assets/{queries-B8eBnFox.js.map → queries-bAYU0VNy.js.map} +1 -1
- package/dist/core/web/public/next/assets/use-guarded-action-C7QrP7Yp.js +2 -0
- package/dist/core/web/public/next/assets/{use-guarded-action-bzrVVAYq.js.map → use-guarded-action-C7QrP7Yp.js.map} +1 -1
- package/dist/core/web/public/next/assets/verse-model-TfDk9cky.js +2 -0
- package/dist/core/web/public/next/assets/verse-model-TfDk9cky.js.map +1 -0
- package/dist/core/web/public/next/assets/{workspace-model-v0a1gl-C.js → workspace-model-CHol5RVp.js} +2 -2
- package/dist/core/web/public/next/assets/{workspace-model-v0a1gl-C.js.map → workspace-model-CHol5RVp.js.map} +1 -1
- package/dist/core/web/public/next/index.html +1 -1
- package/dist/release-dependency-inventory.json +1 -1
- package/docs/README.md +1 -0
- package/package.json +1 -1
- package/dist/core/web/public/next/assets/AutonomySection-DoqmsCjw.js +0 -2
- package/dist/core/web/public/next/assets/ChatSection-BfnLe5dT.css +0 -1
- package/dist/core/web/public/next/assets/ChatSection-vNPIJffd.js +0 -80
- package/dist/core/web/public/next/assets/ChatSection-vNPIJffd.js.map +0 -1
- package/dist/core/web/public/next/assets/ConfirmDialog-Dd2APQhB.js +0 -2
- package/dist/core/web/public/next/assets/ConfirmDialog-Dd2APQhB.js.map +0 -1
- package/dist/core/web/public/next/assets/Meter--h3MmZS-.js.map +0 -1
- package/dist/core/web/public/next/assets/SettingsSection-BwrpQlpP.js +0 -2
- package/dist/core/web/public/next/assets/UniverseConsoleApp-_FSohAdN.js +0 -2
- package/dist/core/web/public/next/assets/UsageSection-Bq6Daaby.js +0 -2
- package/dist/core/web/public/next/assets/UsageSection-Bq6Daaby.js.map +0 -1
- package/dist/core/web/public/next/assets/VerseConsoleApp-CMkCizvL.css +0 -1
- package/dist/core/web/public/next/assets/VerseConsoleApp-CsIQv9id.js +0 -3
- package/dist/core/web/public/next/assets/VerseConsoleApp-CsIQv9id.js.map +0 -1
- package/dist/core/web/public/next/assets/global-D6bTxIRn.js +0 -2
- package/dist/core/web/public/next/assets/global-D6bTxIRn.js.map +0 -1
- package/dist/core/web/public/next/assets/use-guarded-action-bzrVVAYq.js +0 -2
- package/dist/core/web/public/next/assets/verse-model-CvtK6vP6.js +0 -2
- package/dist/core/web/public/next/assets/verse-model-CvtK6vP6.js.map +0 -1
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
* which is not the same as zero.
|
|
33
33
|
* - No secrets: these are loopback HTTP metadata reads with no auth material.
|
|
34
34
|
*/
|
|
35
|
+
import { type VerseLocalDispatch, type VerseWindowSource } from './types.js';
|
|
35
36
|
export declare const VERSE_DEFAULT_OLLAMA_BASE = "http://127.0.0.1:11434";
|
|
36
37
|
export declare const VERSE_DEFAULT_LMSTUDIO_BASE = "http://127.0.0.1:1234";
|
|
37
38
|
/** Loopback metadata reads. Short enough that a dead runtime never stalls a request. */
|
|
@@ -130,8 +131,15 @@ export interface VerseLocalModelsSnapshot {
|
|
|
130
131
|
}
|
|
131
132
|
/** What `seats.ts` needs from `/api/show` for ONE tag. */
|
|
132
133
|
export interface VerseOllamaModelDetail {
|
|
133
|
-
/**
|
|
134
|
+
/**
|
|
135
|
+
* Pinned context when the Modelfile pins one — `min(num_ctx, native)`, since
|
|
136
|
+
* Ollama caps a pin at the trained length — else the architecture maximum.
|
|
137
|
+
* The latter is an UPPER BOUND on what an unpinned tag is served; the real
|
|
138
|
+
* figure comes from {@link resolveLocalContextWindow}.
|
|
139
|
+
*/
|
|
134
140
|
contextWindow: number | null;
|
|
141
|
+
/** Modelfile `PARAMETER num_ctx`, verbatim; null when the tag pins none. */
|
|
142
|
+
numCtx?: number | null;
|
|
135
143
|
nativeContextLength: number | null;
|
|
136
144
|
capabilities: string[];
|
|
137
145
|
supportsTools: boolean | null;
|
|
@@ -148,6 +156,11 @@ export interface VerseLocalProbeOptions {
|
|
|
148
156
|
timeoutMs?: number;
|
|
149
157
|
/** Override the known-good retention window (tests). */
|
|
150
158
|
lastGoodTtlMs?: number;
|
|
159
|
+
/**
|
|
160
|
+
* Ollama's unpinned-request default. `undefined` reads it
|
|
161
|
+
* ({@link readOllamaServerDefault}); tests pass a value or `null` (unknown).
|
|
162
|
+
*/
|
|
163
|
+
ollamaServerDefault?: VerseOllamaServerDefault | null;
|
|
151
164
|
}
|
|
152
165
|
/** Strip a trailing slash and a trailing `/v1` (the OpenAI-compat prefix). */
|
|
153
166
|
export declare function normalizeLocalBaseUrl(raw: string | undefined, fallback: string): string;
|
|
@@ -192,6 +205,129 @@ export declare function nativeContextFromModelInfo(modelInfo: unknown): {
|
|
|
192
205
|
* under-read by 4x. Never throws; every field degrades to null independently.
|
|
193
206
|
*/
|
|
194
207
|
export declare function probeOllamaModelDetail(fetchImpl: typeof fetch, baseUrl: string, tag: string, timeoutMs?: number): Promise<VerseOllamaModelDetail | null>;
|
|
208
|
+
/**
|
|
209
|
+
* `qwen3-coder-next:ctx64k` / `qwen3.8:27b-ctx64k` / `foo_ctx128K` → tokens;
|
|
210
|
+
* null when the tag carries no such suffix.
|
|
211
|
+
*
|
|
212
|
+
* The suffix may follow `:`, `-` or `_`. It used to be `/:ctx(\d+)k$/`, which
|
|
213
|
+
* missed the house default `qwen3.8:27b-ctx64k` entirely because its suffix
|
|
214
|
+
* follows a hyphen. Only a LAST RESORT: it is a naming convention, not a
|
|
215
|
+
* runtime statement, and is consulted only when `/api/show` failed.
|
|
216
|
+
*/
|
|
217
|
+
export declare function contextWindowFromTagSuffix(tag: string): number | null;
|
|
218
|
+
/**
|
|
219
|
+
* The context Ollama gives a request that does NOT pin `num_ctx`, and where
|
|
220
|
+
* that figure came from. Null `contextLength` means none could be read.
|
|
221
|
+
*
|
|
222
|
+
* Ollama does not expose this over HTTP. It is, in order of authority:
|
|
223
|
+
* - `server-log-env` — `OLLAMA_CONTEXT_LENGTH` as the RUNNING server printed
|
|
224
|
+
* it in its `server config` line. This is the value the
|
|
225
|
+
* server actually runs with, so it outranks everything;
|
|
226
|
+
* - `server-log-vram` — the server's own `vram-based default context …
|
|
227
|
+
* default_num_ctx=N`, which Ollama derives from GPU
|
|
228
|
+
* memory (262144 on a 107 GiB machine, far less on a
|
|
229
|
+
* small one — which is why the architecture maximum is
|
|
230
|
+
* NOT a safe stand-in);
|
|
231
|
+
* - `env` — `OLLAMA_CONTEXT_LENGTH` (> 0) in THIS process's
|
|
232
|
+
* environment. Last resort, used only when no server log
|
|
233
|
+
* is readable: on macOS Ollama.app does not inherit the
|
|
234
|
+
* shell that launched the hub, so a variable exported
|
|
235
|
+
* there for some other tool says nothing about the
|
|
236
|
+
* server — ranking it first let the hub's environment
|
|
237
|
+
* silently decide every unpinned tag's window (and the
|
|
238
|
+
* CLAUDE_CODE_MAX_CONTEXT_TOKENS a chat is launched with).
|
|
239
|
+
*/
|
|
240
|
+
export interface VerseOllamaServerDefault {
|
|
241
|
+
contextLength: number | null;
|
|
242
|
+
source: 'env' | 'server-log-env' | 'server-log-vram' | null;
|
|
243
|
+
}
|
|
244
|
+
/** Ollama writes its server log here on macOS and in the default Linux install. */
|
|
245
|
+
export declare function ollamaServerLogPath(home?: string): string;
|
|
246
|
+
/** Pure: the last startup facts in a server-log excerpt. */
|
|
247
|
+
export declare function parseOllamaServerLog(text: string): {
|
|
248
|
+
contextLengthEnv: number | null;
|
|
249
|
+
vramDefault: number | null;
|
|
250
|
+
};
|
|
251
|
+
/**
|
|
252
|
+
* Read Ollama's unpinned-request default: the server's own log first, this
|
|
253
|
+
* process's environment only when the log says nothing (see
|
|
254
|
+
* {@link VerseOllamaServerDefault}). Never throws; unknown is `{null, null}`.
|
|
255
|
+
*/
|
|
256
|
+
export declare function readOllamaServerDefault(opts?: {
|
|
257
|
+
env?: NodeJS.ProcessEnv;
|
|
258
|
+
logPath?: string;
|
|
259
|
+
}): VerseOllamaServerDefault;
|
|
260
|
+
/**
|
|
261
|
+
* llama-server's PER-SLOT context — what one agent actually gets on the
|
|
262
|
+
* llama-server lane, whatever the tag's Modelfile says (`-c 262144 --parallel
|
|
263
|
+
* 4` is 65536 per slot). Read back from the live server, exactly as
|
|
264
|
+
* `local-runtime/llama/health.ts` derives `contextPerSlot`:
|
|
265
|
+
*
|
|
266
|
+
* `/props.default_generation_settings.n_ctx` → `/slots[0].n_ctx` →
|
|
267
|
+
* `floor(requestedContext / total_slots)` (the `-c` we launched it with,
|
|
268
|
+
* from the ownership record, over the slot count the SERVER reports).
|
|
269
|
+
*
|
|
270
|
+
* Null when the server does not answer — the caller then falls back to the
|
|
271
|
+
* Ollama figure and says so. Never throws.
|
|
272
|
+
*/
|
|
273
|
+
export declare function probeLlamaSlotContext(fetchImpl: typeof fetch, origin: string, opts?: {
|
|
274
|
+
timeoutMs?: number;
|
|
275
|
+
requestedContext?: number | null;
|
|
276
|
+
}): Promise<{
|
|
277
|
+
perSlot: number | null;
|
|
278
|
+
totalSlots: number | null;
|
|
279
|
+
source: 'props' | 'slots' | 'requested' | null;
|
|
280
|
+
}>;
|
|
281
|
+
/** How a local window was decided — for notes and tests, never for the wire. */
|
|
282
|
+
export type VerseLocalWindowBasis = 'llama-slot' | 'num-ctx' | 'resident' | 'server-default' | 'native-estimate' | 'tag-suffix' | 'default';
|
|
283
|
+
export interface VerseLocalWindow {
|
|
284
|
+
window: number;
|
|
285
|
+
source: VerseWindowSource;
|
|
286
|
+
basis: VerseLocalWindowBasis;
|
|
287
|
+
}
|
|
288
|
+
export interface VerseLocalWindowInput {
|
|
289
|
+
tag: string;
|
|
290
|
+
lane: VerseLocalDispatch;
|
|
291
|
+
/** llama-server per-slot context; consulted ONLY on the llama-server lane. */
|
|
292
|
+
llamaSlotWindow?: number | null;
|
|
293
|
+
/** `/api/show` for this tag; null when it failed. */
|
|
294
|
+
detail: VerseOllamaModelDetail | null;
|
|
295
|
+
/**
|
|
296
|
+
* `/api/ps` `context_length` when this tag is resident. Consulted only when
|
|
297
|
+
* no server default is known: it describes whatever request LOADED the
|
|
298
|
+
* runner, which may have pinned its own `options.num_ctx`.
|
|
299
|
+
*/
|
|
300
|
+
residentContext?: number | null;
|
|
301
|
+
serverDefault?: VerseOllamaServerDefault | null;
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* THE local context-window resolver. Precedence (docs/VERSE-CONTEXT.md §1):
|
|
305
|
+
*
|
|
306
|
+
* 1. llama-server lane — the per-slot `n_ctx` (`runtime`). The Modelfile is
|
|
307
|
+
* irrelevant there: llama-server allocates per slot.
|
|
308
|
+
* 2. Ollama, `num_ctx` pinned — `min(num_ctx, native)` (`provider-catalog`:
|
|
309
|
+
* the runtime's own model record).
|
|
310
|
+
* 3. Ollama, not pinned — `min(serverDefault, native)` (`provider-catalog`),
|
|
311
|
+
* serverDefault being what the server would give an unpinned request
|
|
312
|
+
* (its logged OLLAMA_CONTEXT_LENGTH, else its VRAM default, else this
|
|
313
|
+
* process's env — {@link readOllamaServerDefault}).
|
|
314
|
+
* 4. Ollama, not pinned, no server default known — the resident instance's
|
|
315
|
+
* `/api/ps` context (`runtime`), capped by native. Only here, because
|
|
316
|
+
* residency describes the request that loaded the runner, and ANOTHER
|
|
317
|
+
* client's `/api/chat` with `options.num_ctx=8192` loads it at 8192. Verse's
|
|
318
|
+
* turns send no num_ctx, so Ollama reloads the tag at its default: letting
|
|
319
|
+
* a foreign runner define the window told the CLI 8192 (every turn blocked)
|
|
320
|
+
* or, with a larger foreign num_ctx, overstated it (overflow without
|
|
321
|
+
* compaction). With neither, the trained maximum — marked `fallback`,
|
|
322
|
+
* because Ollama may allocate far less.
|
|
323
|
+
* 5. `/api/show` said nothing usable — the tag suffix, then
|
|
324
|
+
* `VERSE_DEFAULT_CONTEXT_WINDOWS.local`, both `fallback`.
|
|
325
|
+
*
|
|
326
|
+
* A server default is never used WITHOUT a native length to cap it: a 262144
|
|
327
|
+
* VRAM default applied to an 8k embedding model would be a 32× overstatement.
|
|
328
|
+
* (With no native length, residency — a real allocation — is the best fact.)
|
|
329
|
+
*/
|
|
330
|
+
export declare function resolveLocalContextWindow(input: VerseLocalWindowInput): VerseLocalWindow;
|
|
195
331
|
/**
|
|
196
332
|
* LM Studio's own REST API (not the OpenAI-compat `/v1`). It reports `state`
|
|
197
333
|
* (`loaded` / `not-loaded`), `max_context_length`, `loaded_context_length`,
|
|
@@ -32,7 +32,10 @@
|
|
|
32
32
|
* which is not the same as zero.
|
|
33
33
|
* - No secrets: these are loopback HTTP metadata reads with no auth material.
|
|
34
34
|
*/
|
|
35
|
-
import {
|
|
35
|
+
import { closeSync, constants as fsConstants, fstatSync, openSync, readSync } from 'node:fs';
|
|
36
|
+
import { freemem, homedir, totalmem } from 'node:os';
|
|
37
|
+
import { join } from 'node:path';
|
|
38
|
+
import { VERSE_DEFAULT_CONTEXT_WINDOWS, } from './types.js';
|
|
36
39
|
// ---------------------------------------------------------------------------
|
|
37
40
|
// Constants
|
|
38
41
|
// ---------------------------------------------------------------------------
|
|
@@ -311,7 +314,10 @@ export async function probeOllamaModelDetail(fetchImpl, baseUrl, tag, timeoutMs
|
|
|
311
314
|
supportsTools = capabilities.includes('tools');
|
|
312
315
|
}
|
|
313
316
|
return {
|
|
314
|
-
|
|
317
|
+
// A pin above the trained length is capped by Ollama itself (it logs
|
|
318
|
+
// "requested context size too large … n_ctx_train"), so never report more.
|
|
319
|
+
contextWindow: numCtx !== null ? Math.min(numCtx, native.value ?? numCtx) : native.value,
|
|
320
|
+
numCtx,
|
|
315
321
|
nativeContextLength: native.value,
|
|
316
322
|
capabilities,
|
|
317
323
|
supportsTools,
|
|
@@ -321,7 +327,196 @@ export async function probeOllamaModelDetail(fetchImpl, baseUrl, tag, timeoutMs
|
|
|
321
327
|
arch: native.arch,
|
|
322
328
|
};
|
|
323
329
|
}
|
|
324
|
-
|
|
330
|
+
// ---------------------------------------------------------------------------
|
|
331
|
+
// The ONE local context-window resolver (seats and the Usage view both use it)
|
|
332
|
+
// ---------------------------------------------------------------------------
|
|
333
|
+
/**
|
|
334
|
+
* `qwen3-coder-next:ctx64k` / `qwen3.8:27b-ctx64k` / `foo_ctx128K` → tokens;
|
|
335
|
+
* null when the tag carries no such suffix.
|
|
336
|
+
*
|
|
337
|
+
* The suffix may follow `:`, `-` or `_`. It used to be `/:ctx(\d+)k$/`, which
|
|
338
|
+
* missed the house default `qwen3.8:27b-ctx64k` entirely because its suffix
|
|
339
|
+
* follows a hyphen. Only a LAST RESORT: it is a naming convention, not a
|
|
340
|
+
* runtime statement, and is consulted only when `/api/show` failed.
|
|
341
|
+
*/
|
|
342
|
+
export function contextWindowFromTagSuffix(tag) {
|
|
343
|
+
const m = /(?:^|[:_-])ctx(\d+)k$/i.exec(tag);
|
|
344
|
+
if (!m)
|
|
345
|
+
return null;
|
|
346
|
+
const n = Number(m[1]);
|
|
347
|
+
return Number.isFinite(n) && n > 0 && n <= 16_384 ? n * 1024 : null;
|
|
348
|
+
}
|
|
349
|
+
/** Ollama writes its server log here on macOS and in the default Linux install. */
|
|
350
|
+
export function ollamaServerLogPath(home = homedir()) {
|
|
351
|
+
return join(home, '.ollama', 'logs', 'server.log');
|
|
352
|
+
}
|
|
353
|
+
/**
|
|
354
|
+
* Head of the server log to scan. Ollama rotates `server.log` on every start,
|
|
355
|
+
* so the startup block (config dump on line 1, VRAM default ~line 10) is at
|
|
356
|
+
* the TOP of the current file however long the server has been running.
|
|
357
|
+
*/
|
|
358
|
+
const OLLAMA_LOG_HEAD_BYTES = 256 * 1024;
|
|
359
|
+
/** Pure: the last startup facts in a server-log excerpt. */
|
|
360
|
+
export function parseOllamaServerLog(text) {
|
|
361
|
+
let contextLengthEnv = null;
|
|
362
|
+
let vramDefault = null;
|
|
363
|
+
for (const line of text.split('\n')) {
|
|
364
|
+
if (line.includes('msg="server config"')) {
|
|
365
|
+
const m = /OLLAMA_CONTEXT_LENGTH:(\d{1,9})(?=[\s\]])/.exec(line);
|
|
366
|
+
contextLengthEnv = m ? Number(m[1]) : null;
|
|
367
|
+
}
|
|
368
|
+
else if (line.includes('default context') || line.includes('default_num_ctx')) {
|
|
369
|
+
const m = /default_num_ctx=(\d{1,9})\b/.exec(line);
|
|
370
|
+
if (m)
|
|
371
|
+
vramDefault = Number(m[1]);
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
return {
|
|
375
|
+
contextLengthEnv: contextLengthEnv !== null && contextLengthEnv > 0 ? contextLengthEnv : null,
|
|
376
|
+
vramDefault: vramDefault !== null && vramDefault > 0 ? vramDefault : null,
|
|
377
|
+
};
|
|
378
|
+
}
|
|
379
|
+
function readHead(path, maxBytes) {
|
|
380
|
+
let fd = null;
|
|
381
|
+
try {
|
|
382
|
+
const noFollow = typeof fsConstants.O_NOFOLLOW === 'number' ? fsConstants.O_NOFOLLOW : 0;
|
|
383
|
+
fd = openSync(path, fsConstants.O_RDONLY | noFollow);
|
|
384
|
+
if (!fstatSync(fd).isFile())
|
|
385
|
+
return null;
|
|
386
|
+
const buf = Buffer.alloc(maxBytes);
|
|
387
|
+
const n = readSync(fd, buf, 0, maxBytes, 0);
|
|
388
|
+
const text = buf.subarray(0, Math.max(0, n)).toString('utf8');
|
|
389
|
+
// Parse whole lines only: a line cut by the byte cap is dropped.
|
|
390
|
+
const cut = n >= maxBytes ? text.lastIndexOf('\n') : text.length;
|
|
391
|
+
return cut > 0 ? text.slice(0, cut) : text;
|
|
392
|
+
}
|
|
393
|
+
catch {
|
|
394
|
+
return null;
|
|
395
|
+
}
|
|
396
|
+
finally {
|
|
397
|
+
if (fd !== null) {
|
|
398
|
+
try {
|
|
399
|
+
closeSync(fd);
|
|
400
|
+
}
|
|
401
|
+
catch { /* already closed */ }
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
/**
|
|
406
|
+
* Read Ollama's unpinned-request default: the server's own log first, this
|
|
407
|
+
* process's environment only when the log says nothing (see
|
|
408
|
+
* {@link VerseOllamaServerDefault}). Never throws; unknown is `{null, null}`.
|
|
409
|
+
*/
|
|
410
|
+
export function readOllamaServerDefault(opts = {}) {
|
|
411
|
+
const text = readHead(opts.logPath ?? ollamaServerLogPath(), OLLAMA_LOG_HEAD_BYTES);
|
|
412
|
+
if (text !== null) {
|
|
413
|
+
const parsed = parseOllamaServerLog(text);
|
|
414
|
+
if (parsed.contextLengthEnv !== null)
|
|
415
|
+
return { contextLength: parsed.contextLengthEnv, source: 'server-log-env' };
|
|
416
|
+
if (parsed.vramDefault !== null)
|
|
417
|
+
return { contextLength: parsed.vramDefault, source: 'server-log-vram' };
|
|
418
|
+
}
|
|
419
|
+
const env = opts.env ?? process.env;
|
|
420
|
+
const fromEnv = Number((env['OLLAMA_CONTEXT_LENGTH'] ?? '').trim());
|
|
421
|
+
if (Number.isFinite(fromEnv) && fromEnv > 0)
|
|
422
|
+
return { contextLength: Math.floor(fromEnv), source: 'env' };
|
|
423
|
+
return { contextLength: null, source: null };
|
|
424
|
+
}
|
|
425
|
+
/**
|
|
426
|
+
* llama-server's PER-SLOT context — what one agent actually gets on the
|
|
427
|
+
* llama-server lane, whatever the tag's Modelfile says (`-c 262144 --parallel
|
|
428
|
+
* 4` is 65536 per slot). Read back from the live server, exactly as
|
|
429
|
+
* `local-runtime/llama/health.ts` derives `contextPerSlot`:
|
|
430
|
+
*
|
|
431
|
+
* `/props.default_generation_settings.n_ctx` → `/slots[0].n_ctx` →
|
|
432
|
+
* `floor(requestedContext / total_slots)` (the `-c` we launched it with,
|
|
433
|
+
* from the ownership record, over the slot count the SERVER reports).
|
|
434
|
+
*
|
|
435
|
+
* Null when the server does not answer — the caller then falls back to the
|
|
436
|
+
* Ollama figure and says so. Never throws.
|
|
437
|
+
*/
|
|
438
|
+
export async function probeLlamaSlotContext(fetchImpl, origin, opts = {}) {
|
|
439
|
+
const timeoutMs = opts.timeoutMs ?? VERSE_LOCAL_PROBE_TIMEOUT_MS;
|
|
440
|
+
const base = origin.replace(/\/+$/, '').replace(/\/v1$/, '');
|
|
441
|
+
const [props, slots] = await Promise.all([
|
|
442
|
+
fetchJsonDetailed(fetchImpl, `${base}/props`, timeoutMs),
|
|
443
|
+
fetchJsonDetailed(fetchImpl, `${base}/slots`, timeoutMs),
|
|
444
|
+
]);
|
|
445
|
+
const { deriveSlotCapacity } = await import('../local-runtime/llama/health.js');
|
|
446
|
+
const capacity = deriveSlotCapacity({ httpStatus: props.failure === null ? 200 : null, body: props.body, error: props.failure }, { httpStatus: slots.failure === null ? 200 : null, body: slots.body, error: slots.failure });
|
|
447
|
+
const totalSlots = capacity.configured;
|
|
448
|
+
const generation = isRecord(props.body) ? props.body['default_generation_settings'] : null;
|
|
449
|
+
const fromProps = isRecord(generation) ? num(generation['n_ctx']) : null;
|
|
450
|
+
if (fromProps !== null && fromProps > 0)
|
|
451
|
+
return { perSlot: Math.floor(fromProps), totalSlots, source: 'props' };
|
|
452
|
+
const first = Array.isArray(slots.body) ? slots.body[0] : null;
|
|
453
|
+
const fromSlots = isRecord(first) ? num(first['n_ctx']) : null;
|
|
454
|
+
if (fromSlots !== null && fromSlots > 0)
|
|
455
|
+
return { perSlot: Math.floor(fromSlots), totalSlots, source: 'slots' };
|
|
456
|
+
const requested = opts.requestedContext ?? null;
|
|
457
|
+
if (requested !== null && requested > 0 && totalSlots !== null && totalSlots > 0) {
|
|
458
|
+
return { perSlot: Math.floor(requested / totalSlots), totalSlots, source: 'requested' };
|
|
459
|
+
}
|
|
460
|
+
return { perSlot: null, totalSlots, source: null };
|
|
461
|
+
}
|
|
462
|
+
/**
|
|
463
|
+
* THE local context-window resolver. Precedence (docs/VERSE-CONTEXT.md §1):
|
|
464
|
+
*
|
|
465
|
+
* 1. llama-server lane — the per-slot `n_ctx` (`runtime`). The Modelfile is
|
|
466
|
+
* irrelevant there: llama-server allocates per slot.
|
|
467
|
+
* 2. Ollama, `num_ctx` pinned — `min(num_ctx, native)` (`provider-catalog`:
|
|
468
|
+
* the runtime's own model record).
|
|
469
|
+
* 3. Ollama, not pinned — `min(serverDefault, native)` (`provider-catalog`),
|
|
470
|
+
* serverDefault being what the server would give an unpinned request
|
|
471
|
+
* (its logged OLLAMA_CONTEXT_LENGTH, else its VRAM default, else this
|
|
472
|
+
* process's env — {@link readOllamaServerDefault}).
|
|
473
|
+
* 4. Ollama, not pinned, no server default known — the resident instance's
|
|
474
|
+
* `/api/ps` context (`runtime`), capped by native. Only here, because
|
|
475
|
+
* residency describes the request that loaded the runner, and ANOTHER
|
|
476
|
+
* client's `/api/chat` with `options.num_ctx=8192` loads it at 8192. Verse's
|
|
477
|
+
* turns send no num_ctx, so Ollama reloads the tag at its default: letting
|
|
478
|
+
* a foreign runner define the window told the CLI 8192 (every turn blocked)
|
|
479
|
+
* or, with a larger foreign num_ctx, overstated it (overflow without
|
|
480
|
+
* compaction). With neither, the trained maximum — marked `fallback`,
|
|
481
|
+
* because Ollama may allocate far less.
|
|
482
|
+
* 5. `/api/show` said nothing usable — the tag suffix, then
|
|
483
|
+
* `VERSE_DEFAULT_CONTEXT_WINDOWS.local`, both `fallback`.
|
|
484
|
+
*
|
|
485
|
+
* A server default is never used WITHOUT a native length to cap it: a 262144
|
|
486
|
+
* VRAM default applied to an 8k embedding model would be a 32× overstatement.
|
|
487
|
+
* (With no native length, residency — a real allocation — is the best fact.)
|
|
488
|
+
*/
|
|
489
|
+
export function resolveLocalContextWindow(input) {
|
|
490
|
+
const slot = input.lane === 'llama-server' ? positive(input.llamaSlotWindow) : null;
|
|
491
|
+
if (slot !== null)
|
|
492
|
+
return { window: slot, source: 'runtime', basis: 'llama-slot' };
|
|
493
|
+
const detail = input.detail;
|
|
494
|
+
const native = positive(detail?.nativeContextLength ?? null);
|
|
495
|
+
const numCtx = positive(detail?.numCtx ?? null);
|
|
496
|
+
if (numCtx !== null) {
|
|
497
|
+
return { window: native !== null ? Math.min(numCtx, native) : numCtx, source: 'provider-catalog', basis: 'num-ctx' };
|
|
498
|
+
}
|
|
499
|
+
if (detail !== null) {
|
|
500
|
+
const serverDefault = positive(input.serverDefault?.contextLength ?? null);
|
|
501
|
+
if (native !== null && serverDefault !== null) {
|
|
502
|
+
return { window: Math.min(serverDefault, native), source: 'provider-catalog', basis: 'server-default' };
|
|
503
|
+
}
|
|
504
|
+
const resident = positive(input.residentContext ?? null);
|
|
505
|
+
if (resident !== null) {
|
|
506
|
+
return { window: native !== null ? Math.min(resident, native) : resident, source: 'runtime', basis: 'resident' };
|
|
507
|
+
}
|
|
508
|
+
if (native !== null)
|
|
509
|
+
return { window: native, source: 'fallback', basis: 'native-estimate' };
|
|
510
|
+
}
|
|
511
|
+
const fromSuffix = contextWindowFromTagSuffix(input.tag);
|
|
512
|
+
if (fromSuffix !== null)
|
|
513
|
+
return { window: fromSuffix, source: 'fallback', basis: 'tag-suffix' };
|
|
514
|
+
return { window: VERSE_DEFAULT_CONTEXT_WINDOWS['local'] ?? 65_536, source: 'fallback', basis: 'default' };
|
|
515
|
+
}
|
|
516
|
+
function positive(value) {
|
|
517
|
+
return typeof value === 'number' && Number.isFinite(value) && value > 0 ? Math.floor(value) : null;
|
|
518
|
+
}
|
|
519
|
+
async function collectOllama(fetchImpl, baseUrl, timeoutMs, serverDefault) {
|
|
325
520
|
// Reachability gets the long budget; per-model detail keeps the short one.
|
|
326
521
|
// A detail probe that times out costs one row; a reachability probe that
|
|
327
522
|
// times out declares the whole runtime dead.
|
|
@@ -362,7 +557,15 @@ async function collectOllama(fetchImpl, baseUrl, timeoutMs) {
|
|
|
362
557
|
placement: live ? placementOf(live.sizeBytes, sizeVramBytes) : 'unknown',
|
|
363
558
|
gpuPercent: live && live.sizeBytes !== null ? percentOf(sizeVramBytes, live.sizeBytes) : null,
|
|
364
559
|
expiresAt: live?.expiresAt ?? null,
|
|
365
|
-
|
|
560
|
+
// Resident: what the loaded instance was given — a fact about the runner
|
|
561
|
+
// in memory now (possibly loaded by another client's num_ctx, which is
|
|
562
|
+
// why the SEAT window does not trust it). Otherwise what the next
|
|
563
|
+
// unpinned request WILL be given — the same resolver the seats use. Null
|
|
564
|
+
// only when `/api/show` itself failed: the tag-suffix guess is not a
|
|
565
|
+
// runtime fact.
|
|
566
|
+
contextLength: live?.contextLength ?? (detail !== null
|
|
567
|
+
? resolveLocalContextWindow({ tag: tag.tag, lane: 'ollama', detail, serverDefault }).window
|
|
568
|
+
: null),
|
|
366
569
|
nativeContextLength: detail?.nativeContextLength ?? null,
|
|
367
570
|
parameterSize: detail?.parameterSize ?? tag.parameterSize,
|
|
368
571
|
quantization: detail?.quantization ?? tag.quantization,
|
|
@@ -458,8 +661,9 @@ export async function collectVerseLocalModels(opts = {}) {
|
|
|
458
661
|
const lmStudioBaseUrl = normalizeLocalBaseUrl(opts.lmStudioBaseUrl, VERSE_DEFAULT_LMSTUDIO_BASE);
|
|
459
662
|
const ttlMs = opts.lastGoodTtlMs ?? VERSE_LOCAL_LAST_GOOD_TTL_MS;
|
|
460
663
|
const now = Date.now();
|
|
664
|
+
const serverDefault = opts.ollamaServerDefault !== undefined ? opts.ollamaServerDefault : readOllamaServerDefault();
|
|
461
665
|
const [ollamaFresh, lmStudioFresh] = await Promise.all([
|
|
462
|
-
collectOllama(fetchImpl, ollamaBaseUrl, timeoutMs).catch(() => ({
|
|
666
|
+
collectOllama(fetchImpl, ollamaBaseUrl, timeoutMs, serverDefault).catch(() => ({
|
|
463
667
|
reachable: false, baseUrl: ollamaBaseUrl, models: [], reason: 'ollama-probe-failed',
|
|
464
668
|
})),
|
|
465
669
|
probeLmStudioModels(fetchImpl, lmStudioBaseUrl, timeoutMs).catch(() => ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-models.js","sourceRoot":"","sources":["../../../src/core/verse/local-models.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"local-models.js","sourceRoot":"","sources":["../../../src/core/verse/local-models.ts"],"names":[],"mappings":"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"}
|