@jingyi0605/codingns4dsh 0.2.1-rc.4 → 0.2.1-rc.6
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/README.en.md +4 -4
- package/README.md +5 -5
- package/data/build/dist/bootstrap/dsh-peer-host-preboot-shim.d.ts +1 -1
- package/data/build/dist/bootstrap/dsh-peer-host-preboot-shim.js +1 -1
- package/data/build/dist/client/bundle.js +1808 -221
- package/data/build/dist/client/bundle.js.map +1 -1
- package/data/build/dist/client/cli-session-config-cache.d.ts.map +1 -1
- package/data/build/dist/client/cli-session-config-cache.js +9 -3
- package/data/build/dist/client/cli-session-config-cache.js.map +1 -1
- package/data/build/dist/client/cli-slots.js +2 -2
- package/data/build/dist/client/cli-slots.js.map +1 -1
- package/data/build/dist/client/client.delegate-command.js +3 -2
- package/data/build/dist/client/client.delegate-command.js.map +1 -1
- package/data/build/dist/client/client.magpie-model-tag.js +24 -8
- package/data/build/dist/client/client.magpie-model-tag.js.map +1 -1
- package/data/build/dist/client/client.native-workspace-store.js +32 -15
- package/data/build/dist/client/client.native-workspace-store.js.map +1 -1
- package/data/build/dist/client/client.session-translation.js +25 -0
- package/data/build/dist/client/client.session-translation.js.map +1 -1
- package/data/build/dist/client/client.transport.js +266 -50
- package/data/build/dist/client/client.transport.js.map +1 -1
- package/data/build/dist/client/delegate-command.js +2 -1
- package/data/build/dist/client/delegate-command.js.map +1 -1
- package/data/build/dist/client/desktop-assistant.js +264 -48
- package/data/build/dist/client/features/cli-adapters.d.ts.map +1 -1
- package/data/build/dist/client/features/cli-adapters.js +13 -1
- package/data/build/dist/client/features/cli-adapters.js.map +1 -1
- package/data/build/dist/client/features/index.d.ts.map +1 -1
- package/data/build/dist/client/features/index.js +2 -0
- package/data/build/dist/client/features/index.js.map +1 -1
- package/data/build/dist/client/features/magpie-management-page.d.ts.map +1 -1
- package/data/build/dist/client/features/magpie-management-page.js +80 -31
- package/data/build/dist/client/features/magpie-management-page.js.map +1 -1
- package/data/build/dist/client/features/magpie-management.d.ts.map +1 -1
- package/data/build/dist/client/features/magpie-management.js +3 -2
- package/data/build/dist/client/features/magpie-management.js.map +1 -1
- package/data/build/dist/client/features/plugin-update.d.ts +3 -0
- package/data/build/dist/client/features/plugin-update.d.ts.map +1 -0
- package/data/build/dist/client/features/plugin-update.js +8 -0
- package/data/build/dist/client/features/plugin-update.js.map +1 -0
- package/data/build/dist/client/features/types.d.ts +3 -0
- package/data/build/dist/client/features/types.d.ts.map +1 -1
- package/data/build/dist/client/locale.d.ts.map +1 -1
- package/data/build/dist/client/locale.js +7 -0
- package/data/build/dist/client/locale.js.map +1 -1
- package/data/build/dist/client/locales/magpie.d.ts.map +1 -1
- package/data/build/dist/client/locales/magpie.js +60 -2
- package/data/build/dist/client/locales/magpie.js.map +1 -1
- package/data/build/dist/client/locales/panels.d.ts.map +1 -1
- package/data/build/dist/client/locales/panels.js +18 -0
- package/data/build/dist/client/locales/panels.js.map +1 -1
- package/data/build/dist/client/locales/pluginUpdate.d.ts +3 -0
- package/data/build/dist/client/locales/pluginUpdate.d.ts.map +1 -0
- package/data/build/dist/client/locales/pluginUpdate.js +131 -0
- package/data/build/dist/client/locales/pluginUpdate.js.map +1 -0
- package/data/build/dist/client/locales/usage.d.ts.map +1 -1
- package/data/build/dist/client/locales/usage.js +2 -0
- package/data/build/dist/client/locales/usage.js.map +1 -1
- package/data/build/dist/client/magpie-context-meter.d.ts +18 -0
- package/data/build/dist/client/magpie-context-meter.d.ts.map +1 -0
- package/data/build/dist/client/magpie-context-meter.js +274 -0
- package/data/build/dist/client/magpie-context-meter.js.map +1 -0
- package/data/build/dist/client/magpie-context-store.d.ts +32 -0
- package/data/build/dist/client/magpie-context-store.d.ts.map +1 -0
- package/data/build/dist/client/magpie-context-store.js +165 -0
- package/data/build/dist/client/magpie-context-store.js.map +1 -0
- package/data/build/dist/client/magpie-model-tag.d.ts +4 -2
- package/data/build/dist/client/magpie-model-tag.d.ts.map +1 -1
- package/data/build/dist/client/magpie-model-tag.js +25 -8
- package/data/build/dist/client/magpie-model-tag.js.map +1 -1
- package/data/build/dist/client/native-model-translation-menu.d.ts +1 -0
- package/data/build/dist/client/native-model-translation-menu.d.ts.map +1 -1
- package/data/build/dist/client/native-model-translation-menu.js +2 -2
- package/data/build/dist/client/native-model-translation-menu.js.map +1 -1
- package/data/build/dist/client/session-translation-chat.d.ts.map +1 -1
- package/data/build/dist/client/session-translation-chat.js +6 -2
- package/data/build/dist/client/session-translation-chat.js.map +1 -1
- package/data/build/dist/client/settings-promo-styles.d.ts +5 -0
- package/data/build/dist/client/settings-promo-styles.d.ts.map +1 -1
- package/data/build/dist/client/settings-promo-styles.js +15 -2
- package/data/build/dist/client/settings-promo-styles.js.map +1 -1
- package/data/build/dist/client/settings-promo.d.ts +4 -2
- package/data/build/dist/client/settings-promo.d.ts.map +1 -1
- package/data/build/dist/client/settings-promo.js +4 -4
- package/data/build/dist/client/settings-promo.js.map +1 -1
- package/data/build/dist/client/settings-section.d.ts +2 -3
- package/data/build/dist/client/settings-section.d.ts.map +1 -1
- package/data/build/dist/client/settings-section.js +12 -9
- package/data/build/dist/client/settings-section.js.map +1 -1
- package/data/build/dist/client/settings-update.d.ts +8 -0
- package/data/build/dist/client/settings-update.d.ts.map +1 -0
- package/data/build/dist/client/settings-update.js +57 -0
- package/data/build/dist/client/settings-update.js.map +1 -0
- package/data/build/dist/client/subscription-slot.d.ts.map +1 -1
- package/data/build/dist/client/subscription-slot.js +47 -21
- package/data/build/dist/client/subscription-slot.js.map +1 -1
- package/data/build/dist/client/update-panel-styles.d.ts +29 -0
- package/data/build/dist/client/update-panel-styles.d.ts.map +1 -0
- package/data/build/dist/client/update-panel-styles.js +69 -0
- package/data/build/dist/client/update-panel-styles.js.map +1 -0
- package/data/build/dist/client/update-panel.d.ts +7 -0
- package/data/build/dist/client/update-panel.d.ts.map +1 -0
- package/data/build/dist/client/update-panel.js +52 -0
- package/data/build/dist/client/update-panel.js.map +1 -0
- package/data/build/dist/client/update-store.d.ts +43 -0
- package/data/build/dist/client/update-store.d.ts.map +1 -0
- package/data/build/dist/client/update-store.js +207 -0
- package/data/build/dist/client/update-store.js.map +1 -0
- package/data/build/dist/dsh-capabilities/client/plugin-reload-adapter.d.ts +4 -0
- package/data/build/dist/dsh-capabilities/client/plugin-reload-adapter.d.ts.map +1 -0
- package/data/build/dist/dsh-capabilities/client/plugin-reload-adapter.js +6 -0
- package/data/build/dist/dsh-capabilities/client/plugin-reload-adapter.js.map +1 -0
- package/data/build/dist/dsh-capabilities/client/session-performance-adapter.d.ts +15 -1
- package/data/build/dist/dsh-capabilities/client/session-performance-adapter.d.ts.map +1 -1
- package/data/build/dist/dsh-capabilities/client/session-performance-adapter.js +53 -21
- package/data/build/dist/dsh-capabilities/client/session-performance-adapter.js.map +1 -1
- package/data/build/dist/dsh-capabilities/host/plugin-update-adapter.d.ts +22 -0
- package/data/build/dist/dsh-capabilities/host/plugin-update-adapter.d.ts.map +1 -0
- package/data/build/dist/dsh-capabilities/host/plugin-update-adapter.js +71 -0
- package/data/build/dist/dsh-capabilities/host/plugin-update-adapter.js.map +1 -0
- package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.d.ts +4 -0
- package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.d.ts.map +1 -1
- package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.js +16 -1
- package/data/build/dist/dsh-capabilities/host/session-model-selection-adapter.js.map +1 -1
- package/data/build/dist/dsh-capabilities/matrix.d.ts.map +1 -1
- package/data/build/dist/dsh-capabilities/matrix.js +16 -12
- package/data/build/dist/dsh-capabilities/matrix.js.map +1 -1
- package/data/build/dist/dsh-capabilities/routes.d.ts.map +1 -1
- package/data/build/dist/dsh-capabilities/routes.js +19 -9
- package/data/build/dist/dsh-capabilities/routes.js.map +1 -1
- package/data/build/dist/dsh-capabilities/types.d.ts +1 -1
- package/data/build/dist/dsh-capabilities/types.d.ts.map +1 -1
- package/data/build/dist/dsh-capabilities/types.js.map +1 -1
- package/data/build/dist/host/cli-adapters/dsh-message-projector.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/dsh-message-projector.js +5 -2
- package/data/build/dist/host/cli-adapters/dsh-message-projector.js.map +1 -1
- package/data/build/dist/host/cli-adapters/feature.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/feature.js +181 -29
- package/data/build/dist/host/cli-adapters/feature.js.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-context.d.ts +9 -0
- package/data/build/dist/host/cli-adapters/magpie-context.d.ts.map +1 -0
- package/data/build/dist/host/cli-adapters/magpie-context.js +128 -0
- package/data/build/dist/host/cli-adapters/magpie-context.js.map +1 -0
- package/data/build/dist/host/cli-adapters/magpie-update.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-update.js +14 -4
- package/data/build/dist/host/cli-adapters/magpie-update.js.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-usage.d.ts +12 -2
- package/data/build/dist/host/cli-adapters/magpie-usage.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/magpie-usage.js +120 -51
- package/data/build/dist/host/cli-adapters/magpie-usage.js.map +1 -1
- package/data/build/dist/host/cli-adapters/registry.d.ts.map +1 -1
- package/data/build/dist/host/cli-adapters/registry.js +6 -5
- package/data/build/dist/host/cli-adapters/registry.js.map +1 -1
- package/data/build/dist/host/dsh-runtime-version.d.ts.map +1 -1
- package/data/build/dist/host/dsh-runtime-version.js +4 -1
- package/data/build/dist/host/dsh-runtime-version.js.map +1 -1
- package/data/build/dist/host/features/index.d.ts.map +1 -1
- package/data/build/dist/host/features/index.js +2 -0
- package/data/build/dist/host/features/index.js.map +1 -1
- package/data/build/dist/host/features/plugin-update.d.ts +6 -0
- package/data/build/dist/host/features/plugin-update.d.ts.map +1 -0
- package/data/build/dist/host/features/plugin-update.js +45 -0
- package/data/build/dist/host/features/plugin-update.js.map +1 -0
- package/data/build/dist/host/index.d.ts.map +1 -1
- package/data/build/dist/host/index.js +31 -1
- package/data/build/dist/host/index.js.map +1 -1
- package/data/build/dist/host/native-session-bridge.d.ts +8 -0
- package/data/build/dist/host/native-session-bridge.d.ts.map +1 -1
- package/data/build/dist/host/native-session-bridge.js +43 -0
- package/data/build/dist/host/native-session-bridge.js.map +1 -1
- package/data/build/dist/host/rpc.d.ts +4 -1
- package/data/build/dist/host/rpc.d.ts.map +1 -1
- package/data/build/dist/host/rpc.js +33 -7
- package/data/build/dist/host/rpc.js.map +1 -1
- package/data/build/dist/host/session-handle-eviction.d.ts +29 -0
- package/data/build/dist/host/session-handle-eviction.d.ts.map +1 -0
- package/data/build/dist/host/session-handle-eviction.js +413 -0
- package/data/build/dist/host/session-handle-eviction.js.map +1 -0
- package/data/build/dist/host/settings.d.ts.map +1 -1
- package/data/build/dist/host/settings.js +12 -1
- package/data/build/dist/host/settings.js.map +1 -1
- package/data/build/dist/host/update/application-result.d.ts +3 -0
- package/data/build/dist/host/update/application-result.d.ts.map +1 -0
- package/data/build/dist/host/update/application-result.js +13 -0
- package/data/build/dist/host/update/application-result.js.map +1 -0
- package/data/build/dist/host/update/http.d.ts +7 -0
- package/data/build/dist/host/update/http.d.ts.map +1 -0
- package/data/build/dist/host/update/http.js +55 -0
- package/data/build/dist/host/update/http.js.map +1 -0
- package/data/build/dist/host/update/metadata.d.ts +14 -0
- package/data/build/dist/host/update/metadata.d.ts.map +1 -0
- package/data/build/dist/host/update/metadata.js +75 -0
- package/data/build/dist/host/update/metadata.js.map +1 -0
- package/data/build/dist/host/update/release-notes.d.ts +6 -0
- package/data/build/dist/host/update/release-notes.d.ts.map +1 -0
- package/data/build/dist/host/update/release-notes.js +52 -0
- package/data/build/dist/host/update/release-notes.js.map +1 -0
- package/data/build/dist/host/update/service.d.ts +25 -0
- package/data/build/dist/host/update/service.d.ts.map +1 -0
- package/data/build/dist/host/update/service.js +209 -0
- package/data/build/dist/host/update/service.js.map +1 -0
- package/data/build/dist/shared/contracts/cli-adapter.d.ts +2 -0
- package/data/build/dist/shared/contracts/cli-adapter.d.ts.map +1 -1
- package/data/build/dist/shared/contracts/config.d.ts +17 -0
- package/data/build/dist/shared/contracts/config.d.ts.map +1 -1
- package/data/build/dist/shared/contracts/config.js +8 -0
- package/data/build/dist/shared/contracts/config.js.map +1 -1
- package/data/build/dist/shared/contracts/errors.d.ts +2 -2
- package/data/build/dist/shared/contracts/errors.d.ts.map +1 -1
- package/data/build/dist/shared/contracts/errors.js +1 -1
- package/data/build/dist/shared/contracts/errors.js.map +1 -1
- package/data/build/dist/shared/contracts/magpie-management.d.ts +40 -0
- package/data/build/dist/shared/contracts/magpie-management.d.ts.map +1 -1
- package/data/build/dist/shared/contracts/plugin-update.d.ts +93 -0
- package/data/build/dist/shared/contracts/plugin-update.d.ts.map +1 -0
- package/data/build/dist/shared/contracts/plugin-update.js +128 -0
- package/data/build/dist/shared/contracts/plugin-update.js.map +1 -0
- package/data/build/dist/shared/contracts/session-translation.d.ts +4 -0
- package/data/build/dist/shared/contracts/session-translation.d.ts.map +1 -1
- package/data/build/dist/shared/contracts/session-translation.js +21 -0
- package/data/build/dist/shared/contracts/session-translation.js.map +1 -1
- package/data/build/dist/shared/contracts/subscription.d.ts +3 -0
- package/data/build/dist/shared/contracts/subscription.d.ts.map +1 -1
- package/data/build/dist/shared/contracts/subscription.js.map +1 -1
- package/data/build/dist/shared/contracts/version.d.ts +7 -7
- package/data/build/dist/shared/contracts/version.d.ts.map +1 -1
- package/data/build/dist/shared/contracts/version.js +11 -17
- package/data/build/dist/shared/contracts/version.js.map +1 -1
- package/data/build/dist/shared/index.d.ts +1 -1
- package/data/build/dist/shared/index.d.ts.map +1 -1
- package/data/build/dist/shared/index.js +1 -1
- package/data/build/dist/shared/index.js.map +1 -1
- package/package.json +4 -3
- package/profile/README.md +6 -6
- package/profile/package.json +3 -3
- package/profile/scripts/check-dsh-install.mjs +14 -1
- package/profile/version.json +2 -2
- package/scripts/check-dsh-install.mjs +14 -1
- package/version.json +2 -2
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
const PART_KINDS = ['system', 'tools', 'memory', 'files', 'results', 'chat'];
|
|
2
|
+
const MAX_PARTS = 6;
|
|
3
|
+
const MAX_ITEMS = 24;
|
|
4
|
+
const MAX_POINTS = 160;
|
|
5
|
+
const MAX_TEXT = 240;
|
|
6
|
+
const MAX_IDENTITY = 512;
|
|
7
|
+
/** Reduce Magpie's internal context response to the metadata needed by the UI. */
|
|
8
|
+
export function parseMagpieContextResponse(value, options) {
|
|
9
|
+
const root = asRecord(value);
|
|
10
|
+
const sessions = root?.sessions;
|
|
11
|
+
if (!Array.isArray(sessions) || sessions.length > 80)
|
|
12
|
+
return null;
|
|
13
|
+
const agents = new Set(options.agents.map(cleanIdentity).filter((item) => item !== null));
|
|
14
|
+
const sessionIds = new Set(options.sessionIds.map(cleanIdentity).filter((item) => item !== null));
|
|
15
|
+
if (agents.size === 0 || sessionIds.size === 0)
|
|
16
|
+
return null;
|
|
17
|
+
const selected = sessions
|
|
18
|
+
.map(asRecord)
|
|
19
|
+
.filter((record) => record !== null)
|
|
20
|
+
.filter((record) => agents.has(cleanIdentity(record.agent) ?? '') && sessionIds.has(cleanIdentity(record.key) ?? ''))
|
|
21
|
+
.sort((left, right) => safeInt(right.latestId) - safeInt(left.latestId))[0];
|
|
22
|
+
if (selected === undefined)
|
|
23
|
+
return null;
|
|
24
|
+
const latest = asRecord(selected.latest);
|
|
25
|
+
const usedTokens = safeInt(latest?.tokens);
|
|
26
|
+
if (latest === null || usedTokens <= 0)
|
|
27
|
+
return null;
|
|
28
|
+
const parts = parseParts(latest.parts);
|
|
29
|
+
if (parts.length === 0)
|
|
30
|
+
return null;
|
|
31
|
+
const points = parsePoints(selected.points);
|
|
32
|
+
const contextWindow = positiveInt(latest.window) ?? positiveInt(selected.window);
|
|
33
|
+
if (contextWindow === null)
|
|
34
|
+
return null;
|
|
35
|
+
const countedTokens = points.reduce((sum, point) => sum + point.tokens, 0);
|
|
36
|
+
const cacheTokens = points.reduce((sum, point) => sum + point.cacheTokens, 0);
|
|
37
|
+
const cacheRate = countedTokens > 0 ? Math.min(1, cacheTokens / countedTokens) : 0;
|
|
38
|
+
const agent = cleanIdentity(selected.agent);
|
|
39
|
+
const key = cleanIdentity(selected.key);
|
|
40
|
+
const model = cleanText(selected.model);
|
|
41
|
+
if (agent === null || key === null || model === null)
|
|
42
|
+
return null;
|
|
43
|
+
return {
|
|
44
|
+
agent,
|
|
45
|
+
key,
|
|
46
|
+
title: cleanText(selected.title),
|
|
47
|
+
model,
|
|
48
|
+
requests: safeInt(selected.requests),
|
|
49
|
+
turns: safeInt(latest.turns),
|
|
50
|
+
usedTokens,
|
|
51
|
+
contextWindow,
|
|
52
|
+
cacheTokens,
|
|
53
|
+
cacheRate,
|
|
54
|
+
compacts: safeInt(selected.compacts),
|
|
55
|
+
latestId: positiveInt(selected.latestId),
|
|
56
|
+
parts,
|
|
57
|
+
points,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
function parseParts(value) {
|
|
61
|
+
if (!Array.isArray(value) || value.length > MAX_PARTS)
|
|
62
|
+
return [];
|
|
63
|
+
return value.flatMap((item) => {
|
|
64
|
+
const record = asRecord(item);
|
|
65
|
+
const kind = readPartKind(record?.kind);
|
|
66
|
+
if (record === null || kind === null)
|
|
67
|
+
return [];
|
|
68
|
+
return [{ kind, tokens: safeInt(record.tokens), items: parseItems(record.items) }];
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
function parseItems(value) {
|
|
72
|
+
if (!Array.isArray(value) || value.length > MAX_ITEMS)
|
|
73
|
+
return [];
|
|
74
|
+
return value.flatMap((item) => {
|
|
75
|
+
const record = asRecord(item);
|
|
76
|
+
const name = cleanText(record?.name);
|
|
77
|
+
if (record === null || name === null)
|
|
78
|
+
return [];
|
|
79
|
+
const tag = cleanText(record.tag);
|
|
80
|
+
const count = positiveInt(record.n);
|
|
81
|
+
return [{ name, ...(tag === null ? {} : { tag }), ...(count === null ? {} : { count }), tokens: safeInt(record.tokens) }];
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
function parsePoints(value) {
|
|
85
|
+
if (!Array.isArray(value) || value.length > MAX_POINTS)
|
|
86
|
+
return [];
|
|
87
|
+
return value.flatMap((item) => {
|
|
88
|
+
const record = asRecord(item);
|
|
89
|
+
const id = positiveInt(record?.id);
|
|
90
|
+
if (record === null || id === null)
|
|
91
|
+
return [];
|
|
92
|
+
return [{
|
|
93
|
+
id,
|
|
94
|
+
time: cleanTime(record.time),
|
|
95
|
+
tokens: safeInt(record.tokens),
|
|
96
|
+
window: positiveInt(record.window),
|
|
97
|
+
cacheTokens: safeInt(record.cache),
|
|
98
|
+
}];
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
function readPartKind(value) {
|
|
102
|
+
const kind = cleanText(value);
|
|
103
|
+
return kind !== null && PART_KINDS.includes(kind) ? kind : null;
|
|
104
|
+
}
|
|
105
|
+
function asRecord(value) {
|
|
106
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value) ? value : null;
|
|
107
|
+
}
|
|
108
|
+
function cleanIdentity(value) {
|
|
109
|
+
const text = cleanText(value);
|
|
110
|
+
return text !== null && text.length <= MAX_IDENTITY ? text : null;
|
|
111
|
+
}
|
|
112
|
+
function cleanText(value) {
|
|
113
|
+
if (typeof value !== 'string')
|
|
114
|
+
return null;
|
|
115
|
+
const text = value.trim().replace(/[\u0000-\u001f\u007f]/gu, '').slice(0, MAX_TEXT);
|
|
116
|
+
return text === '' ? null : text;
|
|
117
|
+
}
|
|
118
|
+
function cleanTime(value) {
|
|
119
|
+
const text = cleanText(value);
|
|
120
|
+
return text === null || Number.isNaN(Date.parse(text)) ? null : text;
|
|
121
|
+
}
|
|
122
|
+
function positiveInt(value) {
|
|
123
|
+
return typeof value === 'number' && Number.isSafeInteger(value) && value > 0 ? value : null;
|
|
124
|
+
}
|
|
125
|
+
function safeInt(value) {
|
|
126
|
+
return typeof value === 'number' && Number.isSafeInteger(value) && value >= 0 ? value : 0;
|
|
127
|
+
}
|
|
128
|
+
//# sourceMappingURL=magpie-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"magpie-context.js","sourceRoot":"","sources":["../../../../../src/host/cli-adapters/magpie-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"magpie-update.d.ts","sourceRoot":"","sources":["../../../../../src/host/cli-adapters/magpie-update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,iBAAiB,EAGjB,kBAAkB,EACnB,MAAM,6CAA6C,CAAA;AAEpD,OAAO,KAAK,EAAE,gBAAgB,EAA2B,MAAM,iBAAiB,CAAA;AAEhF,eAAO,MAAM,6BAA6B,EAAG,UAAmB,CAAA;AAUhE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,aAAa,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,wBAAwB,CAAC,CAAC,CAAA;IACnH,oFAAoF;IACpF,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;IACtC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAChC;AAED,qBAAa,iBAAkB,SAAQ,KAAK;IAC9B,QAAQ,CAAC,IAAI,EAAE,oCAAoC,GAAG,gCAAgC,GAAG,8CAA8C;gBAA9H,IAAI,EAAE,oCAAoC,GAAG,gCAAgC,GAAG,8CAA8C,EAAE,OAAO,EAAE,MAAM;CAIrK;AAED;;;;;GAKG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsC;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyC;IAC/D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,eAAe,CAA8C;IACrE,OAAO,CAAC,cAAc,CAA6B;gBAEvC,OAAO,GAAE,0BAA+B;IAS9C,UAAU,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAM7D,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAMjE,iFAAiF;IAC3E,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAcvE;;;;;OAKG;IACG,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"magpie-update.d.ts","sourceRoot":"","sources":["../../../../../src/host/cli-adapters/magpie-update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,iBAAiB,EAGjB,kBAAkB,EACnB,MAAM,6CAA6C,CAAA;AAEpD,OAAO,KAAK,EAAE,gBAAgB,EAA2B,MAAM,iBAAiB,CAAA;AAEhF,eAAO,MAAM,6BAA6B,EAAG,UAAmB,CAAA;AAUhE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,gBAAgB,EAAE,aAAa,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,wBAAwB,CAAC,CAAC,CAAA;IACnH,oFAAoF;IACpF,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;IACtC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAChC;AAED,qBAAa,iBAAkB,SAAQ,KAAK;IAC9B,QAAQ,CAAC,IAAI,EAAE,oCAAoC,GAAG,gCAAgC,GAAG,8CAA8C;gBAA9H,IAAI,EAAE,oCAAoC,GAAG,gCAAgC,GAAG,8CAA8C,EAAE,OAAO,EAAE,MAAM;CAIrK;AAED;;;;;GAKG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsC;IAC7D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAyC;IAC/D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IACvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,eAAe,CAA8C;IACrE,OAAO,CAAC,cAAc,CAA6B;gBAEvC,OAAO,GAAE,0BAA+B;IAS9C,UAAU,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAM7D,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAMjE,iFAAiF;IAC3E,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAcvE;;;;;OAKG;IACG,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAkB5F;;;OAGG;IACH,qBAAqB,IAAI,IAAI;IAQ7B,oBAAoB,IAAI,IAAI;IAM5B,OAAO,IAAI,IAAI;YAID,mBAAmB;IASjC,OAAO,CAAC,eAAe;YAUT,WAAW;YAKX,sBAAsB;YAQtB,eAAe;CAQ9B;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,kBAAkB,CAqB1E;AAWD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CAmBxE"}
|
|
@@ -83,10 +83,10 @@ export class MagpieUpdateService {
|
|
|
83
83
|
method: 'POST',
|
|
84
84
|
body: { view: 'codingns-magpie-management', when: 'now' },
|
|
85
85
|
});
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
const
|
|
86
|
+
// A successful install may return an acknowledgement before Magpie hands the Web
|
|
87
|
+
// process over to the new binary. Only status reads/checks require a full status shape.
|
|
88
|
+
const status = response === null ? null : parseInstallResponse(response);
|
|
89
|
+
const restartExpected = before.state === 'ready' || status === null;
|
|
90
90
|
return { requested: true, restartExpected, status };
|
|
91
91
|
}
|
|
92
92
|
/**
|
|
@@ -175,6 +175,16 @@ export function parseMagpieUpdateStatus(value) {
|
|
|
175
175
|
gaveUp: optionalBoolean(record.gaveUp, 'gaveUp'),
|
|
176
176
|
};
|
|
177
177
|
}
|
|
178
|
+
function parseInstallResponse(value) {
|
|
179
|
+
try {
|
|
180
|
+
return parseMagpieUpdateStatus(value);
|
|
181
|
+
}
|
|
182
|
+
catch (error) {
|
|
183
|
+
if (error instanceof MagpieUpdateError && error.code === 'CODINGNS_MAGPIE_UPDATE_INVALID')
|
|
184
|
+
return null;
|
|
185
|
+
throw error;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
178
188
|
export function parseMagpieUpdateNotes(value) {
|
|
179
189
|
const record = asRecord(value);
|
|
180
190
|
if (record === null || !Array.isArray(record.releases) || record.releases.length > MAX_RELEASES) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"magpie-update.js","sourceRoot":"","sources":["../../../../../src/host/cli-adapters/magpie-update.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"magpie-update.js","sourceRoot":"","sources":["../../../../../src/host/cli-adapters/magpie-update.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { CodingNsCliAdapterId, CodingNsCliModelCatalog, CodingNsCliServiceTier, CodingNsCliSessionConfig } from '../../shared/contracts/cli-adapter.js';
|
|
2
2
|
import type { MagpieQuota, MagpieUsageSnapshot } from '../../shared/contracts/subscription.js';
|
|
3
|
-
import type { MagpieDashboardPeriod, MagpieDashboardStreamChunk, MagpieDashboardStreamPart, MagpieDashboardQuota, MagpieQuotaHistory, MagpieUsageDashboard, MagpieUsageGroup, MagpieUsageMetrics, MagpieUsageRequestPage, MagpieUsageSeriesPoint, MagpieUsageSession } from '../../shared/contracts/magpie-management.js';
|
|
3
|
+
import type { MagpieDashboardPeriod, MagpieDashboardStreamChunk, MagpieDashboardStreamPart, MagpieDashboardQuota, MagpieContextSession, MagpieQuotaHistory, MagpieUsageDashboard, MagpieUsageGroup, MagpieUsageMetrics, MagpieUsageRequestPage, MagpieUsageSeriesPoint, MagpieUsageSession } from '../../shared/contracts/magpie-management.js';
|
|
4
4
|
import type { MagpieWebService } from './magpie-web.js';
|
|
5
5
|
/** A safe, non-sensitive title associated with a DSH session identity. */
|
|
6
6
|
export interface MagpieSessionNameBinding {
|
|
@@ -61,6 +61,11 @@ export interface MagpieUsageRequestOptions {
|
|
|
61
61
|
readonly sessionIds?: readonly string[];
|
|
62
62
|
readonly sessionAgent?: string;
|
|
63
63
|
}
|
|
64
|
+
export interface MagpieContextRequestOptions {
|
|
65
|
+
readonly agents: readonly string[];
|
|
66
|
+
readonly sessionIds: readonly string[];
|
|
67
|
+
readonly days?: number;
|
|
68
|
+
}
|
|
64
69
|
/** Reads usage from the authenticated local Magpie Web API and exact-matches session identity. */
|
|
65
70
|
export declare class MagpieUsageService {
|
|
66
71
|
private readonly readModels;
|
|
@@ -84,7 +89,9 @@ export declare class MagpieUsageService {
|
|
|
84
89
|
private readonly quotaLogoCache;
|
|
85
90
|
private providerCatalog;
|
|
86
91
|
constructor(options?: MagpieUsageServiceOptions);
|
|
87
|
-
read(session: Pick<CodingNsCliSessionConfig, 'adapterId' | 'modelId' | 'providerSessionId'>, signal?: AbortSignal, includeRoute?: boolean, dshSessionId?: string
|
|
92
|
+
read(session: Pick<CodingNsCliSessionConfig, 'adapterId' | 'modelId' | 'providerSessionId'>, signal?: AbortSignal, includeRoute?: boolean, dshSessionId?: string, options?: {
|
|
93
|
+
readonly allowPendingSession?: boolean;
|
|
94
|
+
}): Promise<MagpieUsageSnapshot | null>;
|
|
88
95
|
/**
|
|
89
96
|
* Mark Magpie models and enrich their public metadata. The marker is
|
|
90
97
|
* transient catalog data used by model-list UIs, not session provenance.
|
|
@@ -92,6 +99,8 @@ export declare class MagpieUsageService {
|
|
|
92
99
|
enrichModelCatalog(adapterId: CodingNsCliAdapterId, catalog: CodingNsCliModelCatalog | Promise<CodingNsCliModelCatalog>, signal?: AbortSignal): Promise<CodingNsCliModelCatalog>;
|
|
93
100
|
/** Return an exact, CLI-confirmed Magpie model record for trusted Host use. */
|
|
94
101
|
readModelMetadata(adapterId: CodingNsCliAdapterId, modelId: string, signal?: AbortSignal): Promise<MagpieModelMetadata | null>;
|
|
102
|
+
/** Read one exact, sanitized context session from Magpie's internal Web API. */
|
|
103
|
+
readContext(options: MagpieContextRequestOptions, signal?: AbortSignal): Promise<MagpieContextSession | null>;
|
|
95
104
|
/** Read bounded, graph-ready usage and quota data through authenticated Magpie Web. */
|
|
96
105
|
readDashboard(period: MagpieDashboardPeriod, signal?: AbortSignal): Promise<MagpieUsageDashboard>;
|
|
97
106
|
/** Stream cumulative dashboard snapshots as each independent Web API part is ready. */
|
|
@@ -101,6 +110,7 @@ export declare class MagpieUsageService {
|
|
|
101
110
|
private timedDashboardRead;
|
|
102
111
|
/** Read one bounded Web API ledger page and exact-match session identities on Host. */
|
|
103
112
|
readRequestPage(options: MagpieUsageRequestOptions, signal?: AbortSignal): Promise<MagpieUsageRequestPage | null>;
|
|
113
|
+
private readRequestAggregate;
|
|
104
114
|
private readFromWeb;
|
|
105
115
|
private attachQuotaLogos;
|
|
106
116
|
private readMagpieLogoDataUrl;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"magpie-usage.d.ts","sourceRoot":"","sources":["../../../../../src/host/cli-adapters/magpie-usage.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EAEpB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,uCAAuC,CAAA;AAC9C,OAAO,KAAK,EACV,WAAW,EAKX,mBAAmB,EAEpB,MAAM,wCAAwC,CAAA;AAC/C,OAAO,KAAK,EACV,qBAAqB,EAErB,0BAA0B,EAC1B,yBAAyB,EACzB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,EAChB,kBAAkB,EAElB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAEnB,MAAM,6CAA6C,CAAA;
|
|
1
|
+
{"version":3,"file":"magpie-usage.d.ts","sourceRoot":"","sources":["../../../../../src/host/cli-adapters/magpie-usage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { spawnSync } from 'node:child_process';
|
|
2
2
|
import { commandEnvironment, resolveCommandPath, runAsyncCommand, WINDOWS, withCommandSignal } from './process-utils.js';
|
|
3
3
|
import { parseMagpieWebProviders } from './magpie-management.js';
|
|
4
|
+
import { parseMagpieContextResponse } from './magpie-context.js';
|
|
4
5
|
const MAGPIE_CATALOG_TTL_MS = 60_000;
|
|
5
6
|
const MAGPIE_MODEL_METADATA_TTL_MS = 60_000;
|
|
6
7
|
const MAGPIE_FAILURE_CACHE_TTL_MS = 5_000;
|
|
@@ -81,7 +82,7 @@ export class MagpieUsageService {
|
|
|
81
82
|
this.webApi = options.webApi;
|
|
82
83
|
this.onDashboardTiming = options.onDashboardTiming;
|
|
83
84
|
}
|
|
84
|
-
async read(session, signal, includeRoute = false, dshSessionId) {
|
|
85
|
+
async read(session, signal, includeRoute = false, dshSessionId, options = {}) {
|
|
85
86
|
signal?.throwIfAborted();
|
|
86
87
|
const agent = magpieAgentForAdapter(session.adapterId);
|
|
87
88
|
const requestedModelId = cleanText(session.modelId);
|
|
@@ -89,24 +90,25 @@ export class MagpieUsageService {
|
|
|
89
90
|
return null;
|
|
90
91
|
const providerSessionId = cleanText(session.providerSessionId);
|
|
91
92
|
const nativeSessionId = cleanText(dshSessionId);
|
|
92
|
-
// Native DSH requests
|
|
93
|
-
//
|
|
94
|
-
|
|
93
|
+
// Native DSH requests are tagged with the DSH session ID. Keep the older
|
|
94
|
+
// provider-session fallback for callers that do not have the native ID yet,
|
|
95
|
+
// and for Magpie ledgers written before native_session tagging was added.
|
|
96
|
+
const sessionId = agent === 'dsh'
|
|
97
|
+
? nativeSessionId ?? providerSessionId
|
|
98
|
+
: providerSessionId !== null && providerSessionId !== nativeSessionId ? providerSessionId : null;
|
|
99
|
+
// Current Codex and Command Code gateway requests carry the Host's native
|
|
100
|
+
// session tag. Codex may use it only after the caller confirms Magpie.
|
|
101
|
+
const nativeTagged = agent === 'dsh' || agent === 'commandcode'
|
|
102
|
+
|| agent === 'codex' && options.allowPendingSession === true;
|
|
103
|
+
const magpieSessionId = nativeTagged ? nativeSessionId ?? sessionId : sessionId;
|
|
104
|
+
// Older gateways can still index the same session by its provider ID.
|
|
105
|
+
const fallbackSessionId = nativeTagged
|
|
106
|
+
&& nativeSessionId !== null && providerSessionId !== null && nativeSessionId !== providerSessionId
|
|
95
107
|
? providerSessionId
|
|
96
|
-
: agent === 'dsh' ? nativeSessionId : null;
|
|
97
|
-
// Command Code's ACP child tags loopback Magpie requests with the DSH
|
|
98
|
-
// session ID injected by the Host, so the ledger key differs from the ACP
|
|
99
|
-
// session ID shown in the panel. Older Hosts without that ID keep the
|
|
100
|
-
// provider ID so the panel still reports the same "no usage" state.
|
|
101
|
-
const magpieSessionId = agent === 'commandcode' ? nativeSessionId ?? sessionId : sessionId;
|
|
102
|
-
// During a rolling update the ACP child may still tag requests with its ACP
|
|
103
|
-
// session ID; fall back to it when the DSH-ID ledger row is absent.
|
|
104
|
-
const fallbackSessionId = agent === 'commandcode' && nativeSessionId !== null && sessionId !== null && nativeSessionId !== sessionId
|
|
105
|
-
? sessionId
|
|
106
108
|
: null;
|
|
107
|
-
if (magpieSessionId === null)
|
|
109
|
+
if (magpieSessionId === null && !options.allowPendingSession)
|
|
108
110
|
return null;
|
|
109
|
-
return this.readFromWeb(agent, requestedModelId, sessionId, magpieSessionId, fallbackSessionId, signal, includeRoute);
|
|
111
|
+
return this.readFromWeb(agent, requestedModelId, sessionId, magpieSessionId, fallbackSessionId, signal, includeRoute, options.allowPendingSession === true);
|
|
110
112
|
}
|
|
111
113
|
/**
|
|
112
114
|
* Mark Magpie models and enrich their public metadata. The marker is
|
|
@@ -133,9 +135,12 @@ export class MagpieUsageService {
|
|
|
133
135
|
if (id === null)
|
|
134
136
|
return model;
|
|
135
137
|
const record = metadata?.get(id);
|
|
136
|
-
const
|
|
138
|
+
const metadataModel = record === undefined
|
|
137
139
|
? model.source === 'magpie' ? model : { ...model, source: 'magpie' }
|
|
138
140
|
: mergeMagpieModelMetadata(model, record);
|
|
141
|
+
const providerId = providerFromModel(id);
|
|
142
|
+
const enriched = providerId === null || metadataModel.magpieProviderId === providerId
|
|
143
|
+
? metadataModel : { ...metadataModel, magpieProviderId: providerId };
|
|
139
144
|
if (enriched === model)
|
|
140
145
|
return model;
|
|
141
146
|
groupChanged = true;
|
|
@@ -152,11 +157,13 @@ export class MagpieUsageService {
|
|
|
152
157
|
.filter((id) => !existingModelIds.has(id))
|
|
153
158
|
.map((id) => {
|
|
154
159
|
const record = metadata?.get(id);
|
|
160
|
+
const providerId = providerFromModel(id);
|
|
155
161
|
const model = {
|
|
156
162
|
id,
|
|
157
163
|
name: record?.name ?? agentCatalog.displayNames.get(id) ?? id,
|
|
158
164
|
efforts: record?.efforts ?? [],
|
|
159
165
|
source: 'magpie',
|
|
166
|
+
...(providerId === null ? {} : { magpieProviderId: providerId }),
|
|
160
167
|
};
|
|
161
168
|
return record === undefined ? model : mergeMagpieModelMetadata(model, record);
|
|
162
169
|
});
|
|
@@ -192,6 +199,15 @@ export class MagpieUsageService {
|
|
|
192
199
|
const metadata = await this.loadModelMetadata(catalog, signal);
|
|
193
200
|
return metadata?.get(id) ?? null;
|
|
194
201
|
}
|
|
202
|
+
/** Read one exact, sanitized context session from Magpie's internal Web API. */
|
|
203
|
+
async readContext(options, signal) {
|
|
204
|
+
signal?.throwIfAborted();
|
|
205
|
+
const days = options.days === undefined ? 7 : Math.max(1, Math.min(30, Math.trunc(options.days)));
|
|
206
|
+
const response = await this.readWebJson(`/api/context?days=${days}`, signal);
|
|
207
|
+
if (!response.ok)
|
|
208
|
+
return null;
|
|
209
|
+
return parseMagpieContextResponse(response.value, options);
|
|
210
|
+
}
|
|
195
211
|
/** Read bounded, graph-ready usage and quota data through authenticated Magpie Web. */
|
|
196
212
|
async readDashboard(period, signal) {
|
|
197
213
|
signal?.throwIfAborted();
|
|
@@ -326,6 +342,9 @@ export class MagpieUsageService {
|
|
|
326
342
|
: [...new Set([sessionId, ...sessionIds.filter((value) => value !== null)])];
|
|
327
343
|
if (requestedSessionIds.length > MAX_MAGPIE_SESSION_IDENTITIES)
|
|
328
344
|
return null;
|
|
345
|
+
// Usage summaries are returned separately from the request ledger. This keeps
|
|
346
|
+
// the cards complete without preloading rows that belong to later pages.
|
|
347
|
+
const aggregatePromise = this.readRequestAggregate(options.period, sessionAgent, requestedSessionIds, signal);
|
|
329
348
|
const readCandidatePage = async (offset, limit, querySessionId) => {
|
|
330
349
|
const query = new URLSearchParams({ period: magpieWebPeriod(options.period), limit: String(limit), offset: String(offset) });
|
|
331
350
|
if (querySessionId !== null)
|
|
@@ -355,6 +374,7 @@ export class MagpieUsageService {
|
|
|
355
374
|
hasMore: page.total === null ? page.rows.length >= options.limit : options.offset + page.rows.length < page.total,
|
|
356
375
|
sessionId,
|
|
357
376
|
sessionAgent,
|
|
377
|
+
aggregate: await aggregatePromise,
|
|
358
378
|
items: items.slice(0, options.limit),
|
|
359
379
|
};
|
|
360
380
|
}
|
|
@@ -422,29 +442,63 @@ export class MagpieUsageService {
|
|
|
422
442
|
hasMore: !fullyScanned || matching.length > requestedEnd,
|
|
423
443
|
sessionId,
|
|
424
444
|
sessionAgent,
|
|
445
|
+
aggregate: await aggregatePromise,
|
|
425
446
|
items: matching.slice(options.offset, requestedEnd),
|
|
426
447
|
};
|
|
427
448
|
}
|
|
428
|
-
async
|
|
449
|
+
async readRequestAggregate(period, sessionAgent, sessionIds, signal) {
|
|
450
|
+
const response = await this.readWebJson(`/api/usage?period=${magpieWebPeriod(period)}`, signal);
|
|
451
|
+
if (!response.ok)
|
|
452
|
+
return null;
|
|
453
|
+
const root = usageRecord(response.value);
|
|
454
|
+
if (root === null)
|
|
455
|
+
return null;
|
|
456
|
+
if (sessionIds.length === 0)
|
|
457
|
+
return readMagpieUsageMetrics(root);
|
|
458
|
+
const sessions = root.sessions;
|
|
459
|
+
if (!Array.isArray(sessions) || sessionAgent === null)
|
|
460
|
+
return null;
|
|
461
|
+
const acceptedAgents = MAGPIE_USAGE_AGENT_ALIASES[sessionAgent] ?? [sessionAgent];
|
|
462
|
+
const acceptedIds = new Set(sessionIds);
|
|
463
|
+
let aggregate = null;
|
|
464
|
+
for (const item of sessions) {
|
|
465
|
+
const record = asRecord(item);
|
|
466
|
+
if (record === null || !acceptedIds.has(usageSessionId(record) ?? '')
|
|
467
|
+
|| !acceptedAgents.includes(cleanText(record.agent) ?? ''))
|
|
468
|
+
continue;
|
|
469
|
+
aggregate = aggregate === null
|
|
470
|
+
? readMagpieUsageMetrics(record)
|
|
471
|
+
: sumMagpieUsageMetrics(aggregate, readMagpieUsageMetrics(record));
|
|
472
|
+
}
|
|
473
|
+
return aggregate;
|
|
474
|
+
}
|
|
475
|
+
async readFromWeb(agent, modelId, sessionId, magpieSessionId, fallbackSessionId, signal, includeRoute, allowPendingSession) {
|
|
429
476
|
const capturedAt = new Date(this.now()).toISOString();
|
|
430
|
-
const [usageResult, quotaResult] = await Promise.all([
|
|
477
|
+
const [usageResult, sessionResult, quotaResult] = await Promise.all([
|
|
431
478
|
this.readWebJson('/api/usage?period=today', signal),
|
|
479
|
+
this.readWebJson('/api/usage?period=all', signal),
|
|
432
480
|
this.readWebJson('/api/usage/quotas', signal),
|
|
433
481
|
]);
|
|
434
482
|
const aggregate = usageResult.ok ? readTotals(usageResult.value) : null;
|
|
435
|
-
const primarySession =
|
|
436
|
-
? readSession(
|
|
483
|
+
const primarySession = sessionResult.ok && magpieSessionId !== null
|
|
484
|
+
? readSession(sessionResult.value, agent, magpieSessionId)
|
|
437
485
|
: null;
|
|
438
|
-
const fallbackSession = primarySession === null &&
|
|
439
|
-
? readSession(
|
|
486
|
+
const fallbackSession = primarySession === null && sessionResult.ok && fallbackSessionId !== null
|
|
487
|
+
? readSession(sessionResult.value, agent, fallbackSessionId)
|
|
440
488
|
: null;
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
489
|
+
// Magpie's all-time summary can omit a session already present today.
|
|
490
|
+
// Preserve that exact daily match with its scope, rather than hiding it.
|
|
491
|
+
const todaySession = primarySession === null && fallbackSession === null && allowPendingSession && usageResult.ok
|
|
492
|
+
? (magpieSessionId === null ? null : readSession(usageResult.value, agent, magpieSessionId))
|
|
493
|
+
?? (fallbackSessionId === null ? null : readSession(usageResult.value, agent, fallbackSessionId))
|
|
494
|
+
: null;
|
|
495
|
+
const sessionUsage = primarySession ?? fallbackSession ?? todaySession;
|
|
496
|
+
const resolvedSessionId = sessionUsage?.id ?? magpieSessionId;
|
|
497
|
+
if (sessionUsage === null && (!allowPendingSession || aggregate === null))
|
|
444
498
|
return null;
|
|
445
|
-
const canReadRoute = includeRoute && resolvedSessionId !== null && resolvedSessionId.length <= 128;
|
|
499
|
+
const canReadRoute = sessionUsage !== null && includeRoute && resolvedSessionId !== null && resolvedSessionId.length <= 128;
|
|
446
500
|
const routeHistoryResult = canReadRoute
|
|
447
|
-
? await this.readWebJson(`/api/usage/requests?period=
|
|
501
|
+
? await this.readWebJson(`/api/usage/requests?period=all&offset=0&limit=100&q=${encodeURIComponent(resolvedSessionId)}`, signal)
|
|
448
502
|
: { ok: false };
|
|
449
503
|
const routeRows = routeHistoryResult.ok ? asRecord(routeHistoryResult.value)?.rows : null;
|
|
450
504
|
const routeHistoryValid = Array.isArray(routeRows) && routeRows.length <= 500;
|
|
@@ -458,7 +512,7 @@ export class MagpieUsageService {
|
|
|
458
512
|
const route = routeHistory[0]?.route ?? null;
|
|
459
513
|
const routeStatus = route !== null
|
|
460
514
|
? 'available'
|
|
461
|
-
: resolvedSessionId === null
|
|
515
|
+
: sessionUsage === null || resolvedSessionId === null
|
|
462
516
|
? 'session-unavailable'
|
|
463
517
|
: !includeRoute
|
|
464
518
|
? 'not-requested'
|
|
@@ -470,7 +524,7 @@ export class MagpieUsageService {
|
|
|
470
524
|
providerFromRoute(route),
|
|
471
525
|
...routeHistory.map((record) => record.provider),
|
|
472
526
|
].filter((provider) => provider !== null))];
|
|
473
|
-
const upstreamProviders = routeProviders.length > 0
|
|
527
|
+
const upstreamProviders = sessionUsage === null ? [] : routeProviders.length > 0
|
|
474
528
|
? routeProviders
|
|
475
529
|
: [providerFromModelId(modelId, agent)].filter((provider) => provider !== null);
|
|
476
530
|
const upstreamProvider = upstreamProviders[0] ?? null;
|
|
@@ -489,9 +543,10 @@ export class MagpieUsageService {
|
|
|
489
543
|
capturedAt,
|
|
490
544
|
usageStatus: aggregate === null ? 'unavailable' : 'available',
|
|
491
545
|
aggregate,
|
|
492
|
-
sessionId,
|
|
546
|
+
sessionId: sessionId ?? (sessionUsage === null ? null : resolvedSessionId),
|
|
493
547
|
...(resolvedSessionId === null ? {} : { requestSessionId: resolvedSessionId }),
|
|
494
548
|
session: sessionUsage,
|
|
549
|
+
...(todaySession === null ? {} : { sessionPeriod: 'today' }),
|
|
495
550
|
routeStatus,
|
|
496
551
|
route,
|
|
497
552
|
upstreamProvider,
|
|
@@ -1052,30 +1107,35 @@ export function attachMagpieSessionNames(dashboard, bindings) {
|
|
|
1052
1107
|
function mergeMagpieUsageSessions(current, row, owner) {
|
|
1053
1108
|
return {
|
|
1054
1109
|
...current,
|
|
1110
|
+
...sumMagpieUsageMetrics(current, row),
|
|
1055
1111
|
id: owner?.dshSessionId ?? current.id,
|
|
1056
1112
|
agent: owner?.agent ?? current.agent,
|
|
1057
|
-
calls: sumMagpieUsageMetric(current.calls, row.calls),
|
|
1058
|
-
errors: sumMagpieUsageMetric(current.errors, row.errors),
|
|
1059
|
-
retried: sumMagpieUsageMetric(current.retried, row.retried),
|
|
1060
|
-
inputTokens: sumMagpieUsageMetric(current.inputTokens, row.inputTokens),
|
|
1061
|
-
outputTokens: sumMagpieUsageMetric(current.outputTokens, row.outputTokens),
|
|
1062
|
-
cacheReadTokens: sumMagpieUsageMetric(current.cacheReadTokens, row.cacheReadTokens),
|
|
1063
|
-
cacheWriteTokens: sumMagpieUsageMetric(current.cacheWriteTokens, row.cacheWriteTokens),
|
|
1064
|
-
reasoningTokens: sumMagpieUsageMetric(current.reasoningTokens, row.reasoningTokens),
|
|
1065
|
-
cost: sumMagpieUsageMetric(current.cost, row.cost),
|
|
1066
|
-
unpriced: sumMagpieUsageMetric(current.unpriced, row.unpriced),
|
|
1067
|
-
credits: sumMagpieUsageMetric(current.credits, row.credits),
|
|
1068
|
-
credited: sumMagpieUsageMetric(current.credited, row.credited),
|
|
1069
|
-
timed: sumMagpieUsageMetric(current.timed, row.timed),
|
|
1070
|
-
ttftMs: sumMagpieUsageMetric(current.ttftMs, row.ttftMs),
|
|
1071
|
-
decodeMs: sumMagpieUsageMetric(current.decodeMs, row.decodeMs),
|
|
1072
|
-
decodeTokens: sumMagpieUsageMetric(current.decodeTokens, row.decodeTokens),
|
|
1073
|
-
decodeCount: sumMagpieUsageMetric(current.decodeCount, row.decodeCount),
|
|
1074
1113
|
...(current.dshSessionName === undefined && owner?.name !== null && owner?.name !== undefined
|
|
1075
1114
|
? { dshSessionName: owner.name }
|
|
1076
1115
|
: {}),
|
|
1077
1116
|
};
|
|
1078
1117
|
}
|
|
1118
|
+
function sumMagpieUsageMetrics(left, right) {
|
|
1119
|
+
return {
|
|
1120
|
+
calls: sumMagpieUsageMetric(left.calls, right.calls),
|
|
1121
|
+
errors: sumMagpieUsageMetric(left.errors, right.errors),
|
|
1122
|
+
retried: sumMagpieUsageMetric(left.retried, right.retried),
|
|
1123
|
+
inputTokens: sumMagpieUsageMetric(left.inputTokens, right.inputTokens),
|
|
1124
|
+
outputTokens: sumMagpieUsageMetric(left.outputTokens, right.outputTokens),
|
|
1125
|
+
cacheReadTokens: sumMagpieUsageMetric(left.cacheReadTokens, right.cacheReadTokens),
|
|
1126
|
+
cacheWriteTokens: sumMagpieUsageMetric(left.cacheWriteTokens, right.cacheWriteTokens),
|
|
1127
|
+
reasoningTokens: sumMagpieUsageMetric(left.reasoningTokens, right.reasoningTokens),
|
|
1128
|
+
cost: sumMagpieUsageMetric(left.cost, right.cost),
|
|
1129
|
+
unpriced: sumMagpieUsageMetric(left.unpriced, right.unpriced),
|
|
1130
|
+
credits: sumMagpieUsageMetric(left.credits, right.credits),
|
|
1131
|
+
credited: sumMagpieUsageMetric(left.credited, right.credited),
|
|
1132
|
+
timed: sumMagpieUsageMetric(left.timed, right.timed),
|
|
1133
|
+
ttftMs: sumMagpieUsageMetric(left.ttftMs, right.ttftMs),
|
|
1134
|
+
decodeMs: sumMagpieUsageMetric(left.decodeMs, right.decodeMs),
|
|
1135
|
+
decodeTokens: sumMagpieUsageMetric(left.decodeTokens, right.decodeTokens),
|
|
1136
|
+
decodeCount: sumMagpieUsageMetric(left.decodeCount, right.decodeCount),
|
|
1137
|
+
};
|
|
1138
|
+
}
|
|
1079
1139
|
function sumMagpieUsageMetric(left, right) {
|
|
1080
1140
|
return left === null && right === null ? null : (left ?? 0) + (right ?? 0);
|
|
1081
1141
|
}
|
|
@@ -1136,7 +1196,7 @@ async function readBoundedJson(response) {
|
|
|
1136
1196
|
}
|
|
1137
1197
|
}
|
|
1138
1198
|
function readTotals(value) {
|
|
1139
|
-
const record =
|
|
1199
|
+
const record = usageRecord(value);
|
|
1140
1200
|
if (record === null)
|
|
1141
1201
|
return null;
|
|
1142
1202
|
const calls = safeCount(record.calls);
|
|
@@ -1151,20 +1211,29 @@ function readTotals(value) {
|
|
|
1151
1211
|
return { calls, errors, inputTokens, outputTokens, cacheReadTokens, cacheWriteTokens, costUsd };
|
|
1152
1212
|
}
|
|
1153
1213
|
function readSession(value, agent, sessionId) {
|
|
1154
|
-
const sessions =
|
|
1214
|
+
const sessions = usageRecord(value)?.sessions;
|
|
1155
1215
|
if (!Array.isArray(sessions))
|
|
1156
1216
|
return null;
|
|
1157
1217
|
const usageAgents = MAGPIE_USAGE_AGENT_ALIASES[agent] ?? [agent];
|
|
1158
1218
|
const row = sessions.find((item) => {
|
|
1159
1219
|
const record = asRecord(item);
|
|
1160
1220
|
const usageAgent = cleanText(record?.agent);
|
|
1161
|
-
return
|
|
1221
|
+
return usageSessionId(record) === sessionId && usageAgent !== null && usageAgents.includes(usageAgent);
|
|
1162
1222
|
});
|
|
1163
1223
|
const record = asRecord(row);
|
|
1164
1224
|
const totals = readTotals(record);
|
|
1165
1225
|
const usageAgent = cleanText(record?.agent);
|
|
1166
1226
|
return record !== null && usageAgent !== null && totals !== null ? { id: sessionId, agent: usageAgent, ...totals } : null;
|
|
1167
1227
|
}
|
|
1228
|
+
/** Magpie 0.1.14xx can wrap usage payloads in `data`; older versions do not. */
|
|
1229
|
+
function usageRecord(value) {
|
|
1230
|
+
const record = asRecord(value);
|
|
1231
|
+
const data = asRecord(record?.data);
|
|
1232
|
+
return data ?? record;
|
|
1233
|
+
}
|
|
1234
|
+
function usageSessionId(record) {
|
|
1235
|
+
return cleanText(record?.id) ?? cleanText(record?.session) ?? cleanText(record?.native_session);
|
|
1236
|
+
}
|
|
1168
1237
|
/** Read the durable request ledger when Magpie's short in-memory trace has expired. */
|
|
1169
1238
|
function readSessionRouteHistory(value, agent, sessionId, providerRecords = []) {
|
|
1170
1239
|
const rows = asRecord(value)?.rows;
|