@newrelic/preflight 1.50.7 → 1.50.9
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/alerts/local-alert-rule.d.ts +2 -2
- package/dist/dashboard/routes/api-handler.d.ts +5 -9
- package/dist/dashboard/routes/api-handler.d.ts.map +1 -1
- package/dist/dashboard/routes/api-handler.js +12 -18
- package/dist/dashboard/routes/api-handler.js.map +1 -1
- package/dist/hooks/event-processor.d.ts.map +1 -1
- package/dist/hooks/event-processor.js +2 -0
- package/dist/hooks/event-processor.js.map +1 -1
- package/dist/hooks/subagent-watcher.d.ts +42 -16
- package/dist/hooks/subagent-watcher.d.ts.map +1 -1
- package/dist/hooks/subagent-watcher.js +76 -13
- package/dist/hooks/subagent-watcher.js.map +1 -1
- package/dist/index.js +101 -72
- package/dist/index.js.map +1 -1
- package/dist/metrics/git-activity-recorder.d.ts.map +1 -1
- package/dist/metrics/git-activity-recorder.js +2 -1
- package/dist/metrics/git-activity-recorder.js.map +1 -1
- package/dist/metrics/git-workspace-identity.d.ts +16 -2
- package/dist/metrics/git-workspace-identity.d.ts.map +1 -1
- package/dist/metrics/git-workspace-identity.js +13 -0
- package/dist/metrics/git-workspace-identity.js.map +1 -1
- package/dist/metrics/git-workspace-report.d.ts +1 -1
- package/dist/metrics/git-workspace-report.d.ts.map +1 -1
- package/dist/metrics/git-workspace-report.js +7 -4
- package/dist/metrics/git-workspace-report.js.map +1 -1
- package/dist/metrics/git-workspace-reporter.d.ts +4 -3
- package/dist/metrics/git-workspace-reporter.d.ts.map +1 -1
- package/dist/metrics/git-workspace-reporter.js +38 -7
- package/dist/metrics/git-workspace-reporter.js.map +1 -1
- package/dist/metrics/local-session-aggregator.d.ts +55 -4
- package/dist/metrics/local-session-aggregator.d.ts.map +1 -1
- package/dist/metrics/local-session-aggregator.js +73 -8
- package/dist/metrics/local-session-aggregator.js.map +1 -1
- package/dist/storage/session-store.d.ts +32 -0
- package/dist/storage/session-store.d.ts.map +1 -1
- package/dist/storage/session-store.js +37 -2
- package/dist/storage/session-store.js.map +1 -1
- package/dist/storage/types.d.ts +3 -1
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/web/assets/{index-CV85Em1K.js → index-BrrBgs1G.js} +1 -1
- package/dist/web/index.html +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createLogger } from '../shared/index.js';
|
|
2
|
+
import { UNATTRIBUTED_WORKSPACE_KEY, isPlaceholderIdentity, } from './git-workspace-identity.js';
|
|
2
3
|
const logger = createLogger('git-workspace-report');
|
|
3
4
|
// ---------------------------------------------------------------------------
|
|
4
5
|
// Regexes needed to reproduce GitEfficiencyTracker's processEvent() switch.
|
|
@@ -1042,12 +1043,11 @@ nowMs = Date.now()) {
|
|
|
1042
1043
|
// ---------------------------------------------------------------------------
|
|
1043
1044
|
// Step 3: buildGitWorkspaceReport — public entry point
|
|
1044
1045
|
// ---------------------------------------------------------------------------
|
|
1045
|
-
const UNATTRIBUTED_KEY = 'unattributed';
|
|
1046
1046
|
function resolveIdentityForGroup(key, identities) {
|
|
1047
1047
|
const known = identities.get(key);
|
|
1048
1048
|
if (known)
|
|
1049
1049
|
return known;
|
|
1050
|
-
if (key ===
|
|
1050
|
+
if (key === UNATTRIBUTED_WORKSPACE_KEY) {
|
|
1051
1051
|
return {
|
|
1052
1052
|
repoKey: key,
|
|
1053
1053
|
worktreeKey: key,
|
|
@@ -1077,10 +1077,13 @@ function computeWorstBehind(rows) {
|
|
|
1077
1077
|
* (see buildGitWorkspaceReport). Never claims conflicts "cannot happen" —
|
|
1078
1078
|
* worktrees isolate working directories, not branches, so two worktrees on
|
|
1079
1079
|
* a shared branch can still collide at merge time even with zero file
|
|
1080
|
-
* overlap here.
|
|
1080
|
+
* overlap here. Placeholder rows (activity with no resolvable working
|
|
1081
|
+
* directory) are not worktrees that could have isolated anything, so they
|
|
1082
|
+
* neither count toward the active total nor contribute file overlaps.
|
|
1081
1083
|
*/
|
|
1082
|
-
function buildParallelIsolationCheck(
|
|
1084
|
+
function buildParallelIsolationCheck(repoRows) {
|
|
1083
1085
|
const label = 'Isolate parallel work across worktrees';
|
|
1086
|
+
const activeWorktrees = repoRows.filter((r) => !isPlaceholderIdentity(r.identity));
|
|
1084
1087
|
if (activeWorktrees.length < 2) {
|
|
1085
1088
|
return {
|
|
1086
1089
|
id: 'parallel_isolation',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-workspace-report.js","sourceRoot":"","sources":["../../src/metrics/git-workspace-report.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"git-workspace-report.js","sourceRoot":"","sources":["../../src/metrics/git-workspace-report.ts"],"names":[],"mappings":"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"}
|
|
@@ -112,9 +112,10 @@ export interface ReplayedActivity {
|
|
|
112
112
|
* identity instead. `repoName` is coarser than a real worktree identity (one
|
|
113
113
|
* remote can't distinguish which of its worktrees a session ran in), so this
|
|
114
114
|
* can't merge into a real worktree's own rollup — it surfaces as its own
|
|
115
|
-
* row,
|
|
116
|
-
*
|
|
117
|
-
* one anonymous bucket regardless of
|
|
115
|
+
* row, and `GitWorkspaceReporter.report()` later files it under the real
|
|
116
|
+
* repo (see `adoptResolvedRepoKeys`). Still strictly more honest than
|
|
117
|
+
* folding every pre-`cwd` session into one anonymous bucket regardless of
|
|
118
|
+
* which repo it touched.
|
|
118
119
|
*
|
|
119
120
|
* Implementation: build one synthetic `ToolCallRecord` per timeline entry
|
|
120
121
|
* (mirroring `GitEfficiencyTracker.replayTimeline()`'s own pattern) with a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-workspace-reporter.d.ts","sourceRoot":"","sources":["../../src/metrics/git-workspace-reporter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE/E,OAAO,EAAuB,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,
|
|
1
|
+
{"version":3,"file":"git-workspace-reporter.d.ts","sourceRoot":"","sources":["../../src/metrics/git-workspace-reporter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE/E,OAAO,EAAuB,KAAK,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,EAGL,wBAAwB,EAExB,KAAK,gBAAgB,EACtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,QAAQ,EACb,KAAK,iBAAiB,EACvB,MAAM,2BAA2B,CAAC;AAiBnC;;;;;;;;;GASG;AACH,MAAM,WAAW,4BAA6B,SAAQ,kBAAkB;IACtE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAoBD;;;;;GAKG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;IACnE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0C;IAChE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAsB;IAC/C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAKxC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAuC;IAC/E,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwC;gBAE3D,MAAM,CAAC,EAAE;QAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE;IAKzD;+EAC2E;IAC3E,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;IAQ5C;;;;;;;;;;OAUG;IACH,aAAa,CACX,OAAO,EAAE,SAAS,iBAAiB,EAAE,EACrC,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,GACjD,IAAI;IAWP;2CACuC;IACvC,eAAe,IAAI,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAIxD;;;;;OAKG;IACH,eAAe,CAAC,QAAQ,EAAE,gBAAgB,GAAG,iBAAiB;IAY9D;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,KAAK,EAAE;QACZ,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;QACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,iBAAiB,EAAE,CAAC;QACnD,QAAQ,CAAC,oBAAoB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;KACvE,GAAG,4BAA4B;IAoDhC;;;;;;;;;OASG;IACH,OAAO,CAAC,gBAAgB;CA6DzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC/C,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;CAC5D;AAoCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE;IACP,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC,EACD,gBAAgB,EAAE,wBAAwB,GACzC,gBAAgB,CA2DlB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { spawnSync } from 'node:child_process';
|
|
2
2
|
import { ActivityStore } from './git-activity-store.js';
|
|
3
3
|
import { GitActivityRecorder } from './git-activity-recorder.js';
|
|
4
|
-
import { WorktreeIdentityResolver } from './git-workspace-identity.js';
|
|
4
|
+
import { UNATTRIBUTED_WORKSPACE_KEY, UNRESOLVED_REPO_KEY_PREFIX, WorktreeIdentityResolver, isPlaceholderIdentity, } from './git-workspace-identity.js';
|
|
5
5
|
import { buildGitWorkspaceReport, } from './git-workspace-report.js';
|
|
6
6
|
// Same pattern as git-workspace-identity.ts / local-session-aggregator.ts:
|
|
7
7
|
// GIT_DIR/GIT_WORK_TREE (set by git for hook subprocesses, among other cases)
|
|
@@ -145,6 +145,7 @@ export class GitWorkspaceReporter {
|
|
|
145
145
|
const dedupedHistorical = (historical ?? []).filter((r) => inWindow(r) && !liveKeys.has(keyOf(r)));
|
|
146
146
|
const records = [...liveRecords, ...dedupedHistorical];
|
|
147
147
|
const identities = new Map([...(historicalIdentities ?? []), ...this.knownWorkspacesRegistry]);
|
|
148
|
+
adoptResolvedRepoKeys(identities);
|
|
148
149
|
const liveStates = new Map();
|
|
149
150
|
const workspaceKeys = new Set(records.map((r) => r.workspaceKey));
|
|
150
151
|
for (const key of workspaceKeys) {
|
|
@@ -234,7 +235,36 @@ export class GitWorkspaceReporter {
|
|
|
234
235
|
// Prefix for a synthetic identity representing "this repo, but we don't know
|
|
235
236
|
// which worktree" — the fallback used when a session predates the `cwd`
|
|
236
237
|
// field on ReplayTimelineEntry but still carries a resolved `repoName`.
|
|
237
|
-
|
|
238
|
+
/**
|
|
239
|
+
* Rewrites, in place, every "this repo, worktree unknown" placeholder's
|
|
240
|
+
* `repoKey` to that of a resolved worktree sharing its `repoName`, so the
|
|
241
|
+
* report groups and scopes it with that repo instead of as a look-alike
|
|
242
|
+
* second repo. Its `worktreeKey` stays the placeholder key — the activity
|
|
243
|
+
* still can't be pinned to one worktree. With two resolved clones of the
|
|
244
|
+
* same remote the lexically smallest `repoKey` wins, purely so the choice is
|
|
245
|
+
* stable across requests. A placeholder with no resolved sibling is left
|
|
246
|
+
* alone.
|
|
247
|
+
*/
|
|
248
|
+
function adoptResolvedRepoKeys(identities) {
|
|
249
|
+
const resolvedRepoKeyByName = new Map();
|
|
250
|
+
for (const identity of identities.values()) {
|
|
251
|
+
if (identity.repoName === null || isPlaceholderIdentity(identity))
|
|
252
|
+
continue;
|
|
253
|
+
const existing = resolvedRepoKeyByName.get(identity.repoName);
|
|
254
|
+
if (existing === undefined || identity.repoKey < existing) {
|
|
255
|
+
resolvedRepoKeyByName.set(identity.repoName, identity.repoKey);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
for (const [key, identity] of identities) {
|
|
259
|
+
if (identity.repoName === null ||
|
|
260
|
+
!identity.worktreeKey.startsWith(UNRESOLVED_REPO_KEY_PREFIX)) {
|
|
261
|
+
continue;
|
|
262
|
+
}
|
|
263
|
+
const repoKey = resolvedRepoKeyByName.get(identity.repoName);
|
|
264
|
+
if (repoKey !== undefined)
|
|
265
|
+
identities.set(key, { ...identity, repoKey });
|
|
266
|
+
}
|
|
267
|
+
}
|
|
238
268
|
/**
|
|
239
269
|
* Re-classifies a persisted session's timeline into `GitActivityRecord`s,
|
|
240
270
|
* using the SAME `GitActivityRecorder` dispatch the live path uses (so a
|
|
@@ -250,9 +280,10 @@ const UNKNOWN_WORKTREE_PREFIX = 'unresolved-repo:';
|
|
|
250
280
|
* identity instead. `repoName` is coarser than a real worktree identity (one
|
|
251
281
|
* remote can't distinguish which of its worktrees a session ran in), so this
|
|
252
282
|
* can't merge into a real worktree's own rollup — it surfaces as its own
|
|
253
|
-
* row,
|
|
254
|
-
*
|
|
255
|
-
* one anonymous bucket regardless of
|
|
283
|
+
* row, and `GitWorkspaceReporter.report()` later files it under the real
|
|
284
|
+
* repo (see `adoptResolvedRepoKeys`). Still strictly more honest than
|
|
285
|
+
* folding every pre-`cwd` session into one anonymous bucket regardless of
|
|
286
|
+
* which repo it touched.
|
|
256
287
|
*
|
|
257
288
|
* Implementation: build one synthetic `ToolCallRecord` per timeline entry
|
|
258
289
|
* (mirroring `GitEfficiencyTracker.replayTimeline()`'s own pattern) with a
|
|
@@ -303,10 +334,10 @@ export function replaySessionToActivityRecords(session, identityResolver) {
|
|
|
303
334
|
if (!session.repoName) {
|
|
304
335
|
return { records: drained, identities };
|
|
305
336
|
}
|
|
306
|
-
const fallbackKey =
|
|
337
|
+
const fallbackKey = UNRESOLVED_REPO_KEY_PREFIX + session.repoName;
|
|
307
338
|
let usedFallback = false;
|
|
308
339
|
const records = drained.map((record) => {
|
|
309
|
-
if (record.workspaceKey !==
|
|
340
|
+
if (record.workspaceKey !== UNATTRIBUTED_WORKSPACE_KEY)
|
|
310
341
|
return record;
|
|
311
342
|
usedFallback = true;
|
|
312
343
|
return { ...record, workspaceKey: fallbackKey };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-workspace-reporter.js","sourceRoot":"","sources":["../../src/metrics/git-workspace-reporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAA0B,MAAM,4BAA4B,CAAC;AACzF,OAAO,
|
|
1
|
+
{"version":3,"file":"git-workspace-reporter.js","sourceRoot":"","sources":["../../src/metrics/git-workspace-reporter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAA0B,MAAM,4BAA4B,CAAC;AACzF,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,GAEtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,uBAAuB,GAIxB,MAAM,2BAA2B,CAAC;AAEnC,2EAA2E;AAC3E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,MAAM,QAAQ,GAAG;IACf,QAAQ,EAAE,OAAgB;IAC1B,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAiC;IACnE,IAAI,GAAG;QACL,OAAO,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;IAC1E,CAAC;CACF,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,GAAG,MAAM,CAAC;AAiB7C,SAAS,MAAM,CAAC,IAAY,EAAE,IAAuB;IACnD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAC;QACjE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC1E,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjC,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;0BAC0B;AAC1B,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7B,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAC7C,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,oBAAoB;IACd,gBAAgB,GAAG,IAAI,wBAAwB,EAAE,CAAC;IAClD,KAAK,GAAG,IAAI,aAAa,EAAqB,CAAC;IAC/C,QAAQ,CAAsB;IAC9B,cAAc,CAAS;IAExC,uEAAuE;IACvE,kEAAkE;IAClE,0CAA0C;IACzB,uBAAuB,GAAG,IAAI,GAAG,EAA4B,CAAC;IAC9D,cAAc,GAAG,IAAI,GAAG,EAA6B,CAAC;IAEvE,YAAY,MAA6C;QACvD,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3E,IAAI,CAAC,cAAc,GAAG,MAAM,EAAE,cAAc,IAAI,yBAAyB,CAAC;IAC5E,CAAC;IAED;+EAC2E;IAC3E,cAAc,CAAC,MAAsB;QACnC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,GAAyB,CAAC,CAAC;QACjF,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,aAAa,CACX,OAAqC,EACrC,UAAkD;QAElD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC;gBAClD,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;IACH,CAAC;IAED;2CACuC;IACvC,eAAe;QACb,OAAO,IAAI,CAAC,uBAAuB,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,QAA0B;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC7D,IAAI,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9D,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QACnD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,KAMN;QACC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,GAAG,KAAK,CAAC;QAExE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACvD,8DAA8D;QAC9D,mEAAmE;QACnE,kEAAkE;QAClE,mEAAmE;QACnE,sEAAsE;QACtE,sEAAsE;QACtE,mEAAmE;QACnE,mEAAmE;QACnE,+BAA+B;QAC/B,MAAM,KAAK,GAAG,CAAC,CAAoB,EAAU,EAAE,CAAC,CAAC,CAAC,YAAY,GAAG,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC;QAClF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QACjD,0EAA0E;QAC1E,0EAA0E;QAC1E,sEAAsE;QACtE,0EAA0E;QAC1E,wEAAwE;QACxE,MAAM,QAAQ,GAAG,CAAC,CAAoB,EAAW,EAAE,CAAC,CAAC,CAAC,SAAS,IAAI,KAAK,IAAI,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC;QAChG,MAAM,iBAAiB,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,MAAM,CACjD,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAC9C,CAAC;QACF,MAAM,OAAO,GAAG,CAAC,GAAG,WAAW,EAAE,GAAG,iBAAiB,CAAC,CAAC;QAEvD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAC/F,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAElC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA6B,CAAC;QACxD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;QAClE,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,QAAQ,EAAE,CAAC;gBACb,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAED,mEAAmE;QACnE,sEAAsE;QACtE,uEAAuE;QACvE,qEAAqE;QACrE,sEAAsE;QACtE,qEAAqE;QACrE,wBAAwB;QACxB,OAAO;YACL,GAAG,uBAAuB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YACpF,KAAK;YACL,KAAK;SACN,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACK,gBAAgB,CAAC,QAA0B,EAAE,GAAW;QAC9D,MAAM,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC;QACnC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO;gBACL,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,aAAa,EAAE,IAAI;gBACnB,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;gBACZ,YAAY,EAAE,GAAG;aAClB,CAAC;QACJ,CAAC;QAED,IAAI,UAAU,GAAkB,IAAI,CAAC;QAErC,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YAC7B,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC;QAC5F,CAAC;QAED,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACxB,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,cAAc,EAAE,SAAS,EAAE,0BAA0B,CAAC,CAAC,CAAC;QACrF,CAAC;QAED,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACxB,OAAO;gBACL,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,aAAa,EAAE,IAAI;gBACnB,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;gBACZ,YAAY,EAAE,GAAG;aAClB,CAAC;QACJ,CAAC;QAED,MAAM,aAAa,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACpD,8DAA8D;QAC9D,0EAA0E;QAC1E,qEAAqE;QACrE,uEAAuE;QACvE,6EAA6E;QAC7E,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,UAAU,SAAS,CAAC,CAAC,CAAC;QAChG,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO;gBACL,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,aAAa;gBACb,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;gBACZ,YAAY,EAAE,GAAG;aAClB,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACvE,MAAM,KAAK,GAAG,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAEpE,OAAO;YACL,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,aAAa;YACb,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YAC5C,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;YAC/C,YAAY,EAAE,GAAG;SAClB,CAAC;IACJ,CAAC;CACF;AAOD,6EAA6E;AAC7E,wEAAwE;AACxE,wEAAwE;AACxE;;;;;;;;;GASG;AACH,SAAS,qBAAqB,CAAC,UAAyC;IACtE,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxD,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;QAC3C,IAAI,QAAQ,CAAC,QAAQ,KAAK,IAAI,IAAI,qBAAqB,CAAC,QAAQ,CAAC;YAAE,SAAS;QAC5E,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,OAAO,GAAG,QAAQ,EAAE,CAAC;YAC1D,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IACD,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,UAAU,EAAE,CAAC;QACzC,IACE,QAAQ,CAAC,QAAQ,KAAK,IAAI;YAC1B,CAAC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,0BAA0B,CAAC,EAC5D,CAAC;YACD,SAAS;QACX,CAAC;QACD,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC7D,IAAI,OAAO,KAAK,SAAS;YAAE,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IAC3E,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,UAAU,8BAA8B,CAC5C,OAIC,EACD,gBAA0C;IAE1C,MAAM,WAAW,GAAG,IAAI,aAAa,EAAqB,CAAC;IAC3D,MAAM,cAAc,GAAG,IAAI,mBAAmB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA4B,CAAC;IAEvD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QACtE,MAAM,eAAe,GAAmB;YACtC,EAAE,EAAE,SAAS;YACb,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS;YACT,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC;QACF,cAAc,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAE/C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,QAAQ,EAAE,CAAC;YACb,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,yEAAyE;IACzE,MAAM,OAAO,GAAG,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IAE9E,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,WAAW,GAAG,0BAA0B,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClE,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACrC,IAAI,MAAM,CAAC,YAAY,KAAK,0BAA0B;YAAE,OAAO,MAAM,CAAC;QACtE,YAAY,GAAG,IAAI,CAAC;QACpB,OAAO,EAAE,GAAG,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;IAClD,CAAC,CAAC,CAAC;IACH,IAAI,YAAY,EAAE,CAAC;QACjB,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE;YAC1B,OAAO,EAAE,WAAW;YACpB,WAAW,EAAE,WAAW;YACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,YAAY,EAAE,IAAI;YAClB,aAAa,EAAE,kBAAkB;YACjC,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AACjC,CAAC"}
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
* lightweight per-session rollup so it can do exactly that.
|
|
22
22
|
*/
|
|
23
23
|
import type { ReplayTimelineEntry, ToolCallRecord } from '../storage/types.js';
|
|
24
|
+
import { type FullSessionSummary } from '../storage/session-store.js';
|
|
24
25
|
import { QualityProxyTracker } from './quality-proxy-tracker.js';
|
|
25
26
|
import { ToolSelectionScorer } from './tool-selection-scorer.js';
|
|
26
27
|
export interface ModelBreakdownTally {
|
|
@@ -32,6 +33,23 @@ export interface ModelBreakdownTally {
|
|
|
32
33
|
cacheCreation: number;
|
|
33
34
|
thinking: number;
|
|
34
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* What an existing `sessions/*.json` already says about a session's cost.
|
|
38
|
+
* `FullSessionSummary` structurally satisfies this, so `SessionStore.loadSession`
|
|
39
|
+
* can be passed as `persistedCostBaseline` unchanged.
|
|
40
|
+
*/
|
|
41
|
+
export type PersistedCostBaseline = Pick<FullSessionSummary, 'estimatedCostUsd' | 'subagentCostUsd' | 'costByDayUsd' | 'subagentCostByDayUsd'>;
|
|
42
|
+
export interface LocalSessionAggregatorOptions {
|
|
43
|
+
/**
|
|
44
|
+
* Called at most once per session, on that session's first subagent
|
|
45
|
+
* (`agentId`-tagged) usage — not at rollup creation, because an unscoped
|
|
46
|
+
* process creates a rollup from a session's first drained hook event,
|
|
47
|
+
* before that session's engine has written anything to disk (see
|
|
48
|
+
* `recordTokenUsage`'s doc comment). Returning null means "nothing on
|
|
49
|
+
* disk yet"; the rollup then starts at 0 as before.
|
|
50
|
+
*/
|
|
51
|
+
readonly persistedCostBaseline?: (sessionId: string) => PersistedCostBaseline | null;
|
|
52
|
+
}
|
|
35
53
|
export interface LocalSessionRollup {
|
|
36
54
|
sessionId: string;
|
|
37
55
|
startTime: number;
|
|
@@ -58,6 +76,16 @@ export interface LocalSessionRollup {
|
|
|
58
76
|
quality: QualityProxyTracker;
|
|
59
77
|
modelBreakdown: Map<string, ModelBreakdownTally>;
|
|
60
78
|
costUsd: number;
|
|
79
|
+
/** All-in cost by local-day key (`localDateKey(usage.timestamp)`); same key
|
|
80
|
+
* space as `CostTracker.recordTokenUsage`, so a `--stdio`-written bucket
|
|
81
|
+
* and a `--local`-written bucket for the same turn agree on the day. */
|
|
82
|
+
costByDayUsd: Map<string, number>;
|
|
83
|
+
/** Portion of costUsd from agentId-tagged (subagent) usage. */
|
|
84
|
+
subagentCostUsd: number;
|
|
85
|
+
/** Subagent-attributed portion of costByDayUsd, same key space. */
|
|
86
|
+
subagentCostByDayUsd: Map<string, number>;
|
|
87
|
+
/** Set once the persisted baseline has been folded in — see recordTokenUsage. */
|
|
88
|
+
costBaselineApplied: boolean;
|
|
61
89
|
tokensInput: number;
|
|
62
90
|
tokensOutput: number;
|
|
63
91
|
tokensCacheRead: number;
|
|
@@ -104,6 +132,8 @@ export declare class LocalSessionAggregator {
|
|
|
104
132
|
private readonly sessions;
|
|
105
133
|
/** Repo dirs targeted by git commands but never entered as a cwd. */
|
|
106
134
|
private readonly gitTargetDirs;
|
|
135
|
+
private readonly persistedCostBaseline;
|
|
136
|
+
constructor(options?: LocalSessionAggregatorOptions);
|
|
107
137
|
private static isReal;
|
|
108
138
|
private ensure;
|
|
109
139
|
recordToolCall(record: {
|
|
@@ -130,15 +160,36 @@ export declare class LocalSessionAggregator {
|
|
|
130
160
|
cacheReadTokens?: number;
|
|
131
161
|
cacheCreationTokens?: number;
|
|
132
162
|
thinkingTokens?: number;
|
|
163
|
+
/**
|
|
164
|
+
* Present iff this usage came from a subagent transcript turn — the SAME
|
|
165
|
+
* discriminator `CostTracker.recordTokenUsage`'s `ctx.agentId` uses, so
|
|
166
|
+
* "what counts as subagent cost" has one definition across both
|
|
167
|
+
* trackers. Absent for parent-transcript token events.
|
|
168
|
+
*/
|
|
169
|
+
agentId?: string;
|
|
133
170
|
}): void;
|
|
171
|
+
/**
|
|
172
|
+
* Folds a session's on-disk cost quadruple into the rollup, additively,
|
|
173
|
+
* once. Additive (not assigned) because the rollup may already hold parent
|
|
174
|
+
* cost this process drained during the engine's pending-session window,
|
|
175
|
+
* which no other process saw — assigning would discard it. The whole
|
|
176
|
+
* quadruple (not just the subagent pair) is seeded so the persisted
|
|
177
|
+
* invariant `estimatedCostUsd >= subagentCostUsd` survives the fold; seeding
|
|
178
|
+
* only the subagent pair could leave a merged file whose subagent figure
|
|
179
|
+
* exceeds its all-in figure.
|
|
180
|
+
*/
|
|
181
|
+
private applyPersistedBaseline;
|
|
134
182
|
/** Distinct working directories seen across all sessions. */
|
|
135
183
|
cwds(): string[];
|
|
136
184
|
size(): number;
|
|
137
185
|
/**
|
|
138
|
-
* Session summaries ready for `SessionStore.saveSession()`. Only sessions
|
|
139
|
-
*
|
|
140
|
-
*
|
|
141
|
-
* would burn a file that the
|
|
186
|
+
* Session summaries ready for `SessionStore.saveSession()`. Only sessions
|
|
187
|
+
* with attributable activity are returned (see `hasAttributableActivity`) —
|
|
188
|
+
* a rollup with neither tool calls nor subagent spend would be filtered out
|
|
189
|
+
* of `/api/sessions` anyway, and writing it would burn a file that the
|
|
190
|
+
* empty-summary guard then has to defend. A subagent-only rollup (dead
|
|
191
|
+
* parent, tail still being read) DOES qualify: it has real dollars even
|
|
192
|
+
* though its parent timeline and toolCallCount are both zero.
|
|
142
193
|
*/
|
|
143
194
|
toSummaries(context: {
|
|
144
195
|
developer: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-session-aggregator.d.ts","sourceRoot":"","sources":["../../src/metrics/local-session-aggregator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;
|
|
1
|
+
{"version":3,"file":"local-session-aggregator.d.ts","sourceRoot":"","sources":["../../src/metrics/local-session-aggregator.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,8 @@
|
|
|
21
21
|
* lightweight per-session rollup so it can do exactly that.
|
|
22
22
|
*/
|
|
23
23
|
import { spawnSync } from 'node:child_process';
|
|
24
|
+
import { localDateKey } from '../lib/date.js';
|
|
25
|
+
import { hasAttributableActivity } from '../storage/session-store.js';
|
|
24
26
|
import { QualityProxyTracker } from './quality-proxy-tracker.js';
|
|
25
27
|
import { toToolSelectionSummary } from './tool-selection-scorer.js';
|
|
26
28
|
/** Matches SessionTracker's own cap so session files stay bounded. */
|
|
@@ -149,6 +151,10 @@ export class LocalSessionAggregator {
|
|
|
149
151
|
sessions = new Map();
|
|
150
152
|
/** Repo dirs targeted by git commands but never entered as a cwd. */
|
|
151
153
|
gitTargetDirs = new Set();
|
|
154
|
+
persistedCostBaseline;
|
|
155
|
+
constructor(options = {}) {
|
|
156
|
+
this.persistedCostBaseline = options.persistedCostBaseline;
|
|
157
|
+
}
|
|
152
158
|
static isReal(sessionId) {
|
|
153
159
|
if (typeof sessionId !== 'string' || sessionId.length === 0)
|
|
154
160
|
return false;
|
|
@@ -174,6 +180,10 @@ export class LocalSessionAggregator {
|
|
|
174
180
|
quality: new QualityProxyTracker(),
|
|
175
181
|
modelBreakdown: new Map(),
|
|
176
182
|
costUsd: 0,
|
|
183
|
+
costByDayUsd: new Map(),
|
|
184
|
+
subagentCostUsd: 0,
|
|
185
|
+
subagentCostByDayUsd: new Map(),
|
|
186
|
+
costBaselineApplied: false,
|
|
177
187
|
tokensInput: 0,
|
|
178
188
|
tokensOutput: 0,
|
|
179
189
|
tokensCacheRead: 0,
|
|
@@ -257,8 +267,25 @@ export class LocalSessionAggregator {
|
|
|
257
267
|
recordTokenUsage(sessionId, usage) {
|
|
258
268
|
if (!LocalSessionAggregator.isReal(sessionId))
|
|
259
269
|
return;
|
|
260
|
-
const
|
|
261
|
-
rollup
|
|
270
|
+
const timestamp = usage.timestamp ?? Date.now();
|
|
271
|
+
const rollup = this.ensure(sessionId, timestamp);
|
|
272
|
+
// Seed from disk on this session's first subagent-attributed usage, not at
|
|
273
|
+
// rollup creation: an unscoped process creates a rollup from a session's
|
|
274
|
+
// first drained hook event, which happens before that session's own
|
|
275
|
+
// engine has written anything to sessions/*.json — seeding at creation
|
|
276
|
+
// would read nothing and lose the engine's eventual total on restart
|
|
277
|
+
// under the max-based merge in mergeSummaries.
|
|
278
|
+
if (usage.agentId !== undefined && !rollup.costBaselineApplied) {
|
|
279
|
+
this.applyPersistedBaseline(sessionId, rollup);
|
|
280
|
+
}
|
|
281
|
+
const dayKey = localDateKey(timestamp);
|
|
282
|
+
const usd = usage.costUsd ?? 0;
|
|
283
|
+
rollup.costUsd += usd;
|
|
284
|
+
rollup.costByDayUsd.set(dayKey, (rollup.costByDayUsd.get(dayKey) ?? 0) + usd);
|
|
285
|
+
if (usage.agentId !== undefined) {
|
|
286
|
+
rollup.subagentCostUsd += usd;
|
|
287
|
+
rollup.subagentCostByDayUsd.set(dayKey, (rollup.subagentCostByDayUsd.get(dayKey) ?? 0) + usd);
|
|
288
|
+
}
|
|
262
289
|
rollup.tokensInput += usage.inputTokens ?? 0;
|
|
263
290
|
rollup.tokensOutput += usage.outputTokens ?? 0;
|
|
264
291
|
rollup.tokensCacheRead += usage.cacheReadTokens ?? 0;
|
|
@@ -284,6 +311,30 @@ export class LocalSessionAggregator {
|
|
|
284
311
|
rollup.modelBreakdown.set(usage.model, entry);
|
|
285
312
|
}
|
|
286
313
|
}
|
|
314
|
+
/**
|
|
315
|
+
* Folds a session's on-disk cost quadruple into the rollup, additively,
|
|
316
|
+
* once. Additive (not assigned) because the rollup may already hold parent
|
|
317
|
+
* cost this process drained during the engine's pending-session window,
|
|
318
|
+
* which no other process saw — assigning would discard it. The whole
|
|
319
|
+
* quadruple (not just the subagent pair) is seeded so the persisted
|
|
320
|
+
* invariant `estimatedCostUsd >= subagentCostUsd` survives the fold; seeding
|
|
321
|
+
* only the subagent pair could leave a merged file whose subagent figure
|
|
322
|
+
* exceeds its all-in figure.
|
|
323
|
+
*/
|
|
324
|
+
applyPersistedBaseline(sessionId, rollup) {
|
|
325
|
+
rollup.costBaselineApplied = true;
|
|
326
|
+
const baseline = this.persistedCostBaseline?.(sessionId) ?? null;
|
|
327
|
+
if (baseline === null)
|
|
328
|
+
return;
|
|
329
|
+
rollup.costUsd += baseline.estimatedCostUsd ?? 0;
|
|
330
|
+
rollup.subagentCostUsd += baseline.subagentCostUsd;
|
|
331
|
+
for (const [day, usd] of Object.entries(baseline.costByDayUsd ?? {})) {
|
|
332
|
+
rollup.costByDayUsd.set(day, (rollup.costByDayUsd.get(day) ?? 0) + usd);
|
|
333
|
+
}
|
|
334
|
+
for (const [day, usd] of Object.entries(baseline.subagentCostByDayUsd ?? {})) {
|
|
335
|
+
rollup.subagentCostByDayUsd.set(day, (rollup.subagentCostByDayUsd.get(day) ?? 0) + usd);
|
|
336
|
+
}
|
|
337
|
+
}
|
|
287
338
|
/** Distinct working directories seen across all sessions. */
|
|
288
339
|
cwds() {
|
|
289
340
|
const out = new Set(this.gitTargetDirs);
|
|
@@ -297,15 +348,18 @@ export class LocalSessionAggregator {
|
|
|
297
348
|
return this.sessions.size;
|
|
298
349
|
}
|
|
299
350
|
/**
|
|
300
|
-
* Session summaries ready for `SessionStore.saveSession()`. Only sessions
|
|
301
|
-
*
|
|
302
|
-
*
|
|
303
|
-
* would burn a file that the
|
|
351
|
+
* Session summaries ready for `SessionStore.saveSession()`. Only sessions
|
|
352
|
+
* with attributable activity are returned (see `hasAttributableActivity`) —
|
|
353
|
+
* a rollup with neither tool calls nor subagent spend would be filtered out
|
|
354
|
+
* of `/api/sessions` anyway, and writing it would burn a file that the
|
|
355
|
+
* empty-summary guard then has to defend. A subagent-only rollup (dead
|
|
356
|
+
* parent, tail still being read) DOES qualify: it has real dollars even
|
|
357
|
+
* though its parent timeline and toolCallCount are both zero.
|
|
304
358
|
*/
|
|
305
359
|
toSummaries(context) {
|
|
306
360
|
const out = [];
|
|
307
361
|
for (const rollup of this.sessions.values()) {
|
|
308
|
-
if (rollup
|
|
362
|
+
if (!hasAttributableActivity(rollup))
|
|
309
363
|
continue;
|
|
310
364
|
const models = [...rollup.models];
|
|
311
365
|
out.push({
|
|
@@ -339,7 +393,18 @@ export class LocalSessionAggregator {
|
|
|
339
393
|
buildRunCount: 0,
|
|
340
394
|
buildPassCount: 0,
|
|
341
395
|
estimatedCostUsd: rollup.costUsd > 0 ? rollup.costUsd : null,
|
|
342
|
-
subagentCostUsd:
|
|
396
|
+
subagentCostUsd: rollup.subagentCostUsd,
|
|
397
|
+
// Emitted ONLY when non-empty. `undefined` is the documented "this
|
|
398
|
+
// rollup has no per-day buckets, fall back to the timeline pro-rate"
|
|
399
|
+
// signal the aggregate route keys on; writing `{}` would assert
|
|
400
|
+
// "authoritatively $0 today" and silently zero a row that should have
|
|
401
|
+
// pro-rated. Absent and empty are NOT the same value here.
|
|
402
|
+
...(rollup.costByDayUsd.size > 0
|
|
403
|
+
? { costByDayUsd: Object.fromEntries(rollup.costByDayUsd) }
|
|
404
|
+
: {}),
|
|
405
|
+
...(rollup.subagentCostByDayUsd.size > 0
|
|
406
|
+
? { subagentCostByDayUsd: Object.fromEntries(rollup.subagentCostByDayUsd) }
|
|
407
|
+
: {}),
|
|
343
408
|
tokensInput: rollup.tokensInput,
|
|
344
409
|
tokensOutput: rollup.tokensOutput,
|
|
345
410
|
tokensThinking: 0,
|