codedeck 0.5.3 → 0.7.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/README.md +2 -1
- package/dist/cli/commands/open.js +94 -2
- package/dist/cli/commands/open.js.map +1 -1
- package/dist/cli/commands/review.js +122 -0
- package/dist/cli/commands/review.js.map +1 -0
- package/dist/cli/commands/usage-backfill.js +149 -0
- package/dist/cli/commands/usage-backfill.js.map +1 -0
- package/dist/cli/commands/usage.js +49 -4
- package/dist/cli/commands/usage.js.map +1 -1
- package/dist/cli/index.js +3 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/core/claude-transcript.js +139 -0
- package/dist/core/claude-transcript.js.map +1 -0
- package/dist/core/pricing.js +14 -5
- package/dist/core/pricing.js.map +1 -1
- package/dist/core/run-usage.js +53 -10
- package/dist/core/run-usage.js.map +1 -1
- package/dist/core/usage-source.js +17 -0
- package/dist/core/usage-source.js.map +1 -0
- package/dist/daemon/daemon.js +216 -8
- package/dist/daemon/daemon.js.map +1 -1
- package/dist/daemon/ipc.js +4 -3
- package/dist/daemon/ipc.js.map +1 -1
- package/dist/drivers/opencode/driver.js +24 -2
- package/dist/drivers/opencode/driver.js.map +1 -1
- package/dist/drivers/session-driver.js +7 -1
- package/dist/drivers/session-driver.js.map +1 -1
- package/dist/open/launchers/claude.js +78 -2
- package/dist/open/launchers/claude.js.map +1 -1
- package/dist/open/link-watcher.js +44 -0
- package/dist/open/link-watcher.js.map +1 -0
- package/dist/open/runtime.js +15 -12
- package/dist/open/runtime.js.map +1 -1
- package/dist/plugin/hooks/pane-toggle.ts +13 -0
- package/dist/plugin/hooks/register.tsx +20 -29
- package/dist/plugin/hooks/session-id.sh +1 -1
- package/dist/plugin/mods/agents/pane.ts +67 -30
- package/dist/plugin/mods/agents/types.ts +5 -1
- package/dist/plugin/statusline.sh +40 -3
- package/dist/store/database.js +44 -0
- package/dist/store/database.js.map +1 -1
- package/dist/store/native-links.js +80 -0
- package/dist/store/native-links.js.map +1 -0
- package/dist/store/sessions.js +113 -41
- package/dist/store/sessions.js.map +1 -1
- package/dist/store/usage-ledger.js +153 -0
- package/dist/store/usage-ledger.js.map +1 -0
- package/dist/web/review-page.js +1 -2
- package/dist/web/review-page.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -93,6 +93,7 @@ The daemon owns the sessions. The CLI only follows events — closing the termin
|
|
|
93
93
|
| `npx codedeck send <id> "<msg>"` | Continue a session (new turn) |
|
|
94
94
|
| `npx codedeck stop <id>` | Graceful interrupt → SIGTERM → SIGKILL |
|
|
95
95
|
| `npx codedeck diff <id> [--stat] [--json]` | Git diff against base commit |
|
|
96
|
+
| `npx codedeck review [--port <n>] [--no-open]` | Open a local review of the current git changes |
|
|
96
97
|
|
|
97
98
|
## Open
|
|
98
99
|
|
|
@@ -125,7 +126,7 @@ Two things worth knowing before you edit an agent file. `--agent` layers on top
|
|
|
125
126
|
npx codedeck run "review the diff on this branch" --agent codex --role reviewer
|
|
126
127
|
```
|
|
127
128
|
|
|
128
|
-
`--no-bypass` drops the bypass flag, `--no-theme` keeps the status line but drops everything else the look changes, `--no-pty` opts out of the session naming itself, and `--model`/`--effort`/`--resume`/`--worktree` override the defaults.
|
|
129
|
+
`--no-bypass` drops the bypass flag, `--no-theme` keeps the status line but drops everything else the look changes, `--no-pty` opts out of the session naming itself, and `--model`/`--effort`/`--resume`/`--worktree` override the defaults. Interactive opens ask about a worktree when neither `--worktree` nor `--no-worktree` is set.
|
|
129
130
|
|
|
130
131
|
### What the session looks like
|
|
131
132
|
|
|
@@ -12,6 +12,7 @@ import { createWorktree } from "../../git/worktree.js";
|
|
|
12
12
|
import { ptyShimPath } from "../../open/pty.js";
|
|
13
13
|
import { isInteractiveTerminal } from "./setup.js";
|
|
14
14
|
import { sessionsDir } from "../../open/pty.js";
|
|
15
|
+
import { startLinkWatcher } from "../../open/link-watcher.js";
|
|
15
16
|
import { ROLES, parseRole, resolvePluginDir } from "../../core/roles.js";
|
|
16
17
|
import { getCliName } from "../cli-name.js";
|
|
17
18
|
import { effectiveModel, resolveOpenModel } from "../../open/contract.js";
|
|
@@ -214,6 +215,54 @@ function selectRole() {
|
|
|
214
215
|
ask();
|
|
215
216
|
});
|
|
216
217
|
}
|
|
218
|
+
export function askWorktree() {
|
|
219
|
+
const rl = readline.createInterface({
|
|
220
|
+
input: process.stdin,
|
|
221
|
+
output: process.stdout,
|
|
222
|
+
});
|
|
223
|
+
return new Promise((resolve, reject) => {
|
|
224
|
+
let settled = false;
|
|
225
|
+
const finish = (worktree) => {
|
|
226
|
+
if (settled)
|
|
227
|
+
return;
|
|
228
|
+
settled = true;
|
|
229
|
+
rl.close();
|
|
230
|
+
resolve(worktree);
|
|
231
|
+
};
|
|
232
|
+
rl.once("close", () => {
|
|
233
|
+
if (settled)
|
|
234
|
+
return;
|
|
235
|
+
settled = true;
|
|
236
|
+
reject(new Error("Worktree selection was interrupted; nothing was launched."));
|
|
237
|
+
});
|
|
238
|
+
const ask = () => {
|
|
239
|
+
rl.question("Open in a worktree? [y/N]: ", (answer) => {
|
|
240
|
+
const choice = answer.trim().toLowerCase();
|
|
241
|
+
if (choice === "y" || choice === "yes") {
|
|
242
|
+
finish(true);
|
|
243
|
+
return;
|
|
244
|
+
}
|
|
245
|
+
if (choice === "" || choice === "n" || choice === "no") {
|
|
246
|
+
finish(false);
|
|
247
|
+
return;
|
|
248
|
+
}
|
|
249
|
+
process.stderr.write("Answer y or n.\n");
|
|
250
|
+
ask();
|
|
251
|
+
});
|
|
252
|
+
};
|
|
253
|
+
ask();
|
|
254
|
+
});
|
|
255
|
+
}
|
|
256
|
+
export async function resolveOpenWorktree(flag, ctx, ask = askWorktree) {
|
|
257
|
+
if (flag !== undefined)
|
|
258
|
+
return flag;
|
|
259
|
+
if (!ctx.interactive || ctx.resume !== undefined)
|
|
260
|
+
return false;
|
|
261
|
+
const gitInfo = await getGitInfo(ctx.cwd);
|
|
262
|
+
if (!gitInfo)
|
|
263
|
+
return false;
|
|
264
|
+
return ask();
|
|
265
|
+
}
|
|
217
266
|
/**
|
|
218
267
|
* `claude -p` answers one prompt and exits, so there is no session to choose a
|
|
219
268
|
* role for. A terminal check alone does not catch this: under a pty (CI scripts,
|
|
@@ -337,7 +386,8 @@ export function registerOpenCommand(program) {
|
|
|
337
386
|
.option("--autocompact [value]", "native auto-compact: Claude window size is auto or 100000-1000000 tokens; OpenCode toggles its native setting")
|
|
338
387
|
.option("--no-autocompact", "disable native auto-compaction in Claude and OpenCode")
|
|
339
388
|
.option("--resume <session>", "resume an interactive session")
|
|
340
|
-
.option("--worktree", "
|
|
389
|
+
.option("--worktree", "open the session in an isolated git worktree")
|
|
390
|
+
.option("--no-worktree", "open in the current directory without asking")
|
|
341
391
|
.option("--profile <name>", "use a saved setup profile instead of the active one (see profile list)")
|
|
342
392
|
.option("--no-bypass", "do not skip Claude Code permission prompts")
|
|
343
393
|
.option("--no-theme", "keep only the CodeDeck status line, without the theme or the renderer")
|
|
@@ -367,9 +417,14 @@ export function registerOpenCommand(program) {
|
|
|
367
417
|
}
|
|
368
418
|
const interactive = !isNonInteractiveLaunch(invocation.passthrough, hintLauncher);
|
|
369
419
|
const role = await resolveRole(invocation.roleInput, interactive);
|
|
420
|
+
const cwd = currentWorkingDirectory();
|
|
421
|
+
opts.worktree = await resolveOpenWorktree(opts.worktree, {
|
|
422
|
+
interactive: interactive && isInteractiveTerminal(),
|
|
423
|
+
resume: opts.resume,
|
|
424
|
+
cwd,
|
|
425
|
+
});
|
|
370
426
|
const pluginDir = resolvePluginDir();
|
|
371
427
|
assertPluginDirectory(pluginDir);
|
|
372
|
-
const cwd = currentWorkingDirectory();
|
|
373
428
|
const client = new IpcClient();
|
|
374
429
|
await client.ensureDaemonStarted();
|
|
375
430
|
const binding = resolveRoleBinding(role, config);
|
|
@@ -397,8 +452,32 @@ export function registerOpenCommand(program) {
|
|
|
397
452
|
...(openEffort !== undefined ? { effort: openEffort } : {}),
|
|
398
453
|
cwd,
|
|
399
454
|
name: role,
|
|
455
|
+
...(opts.resume !== undefined ? { resume: opts.resume } : {}),
|
|
400
456
|
});
|
|
401
457
|
const runId = adoptRes.session.id;
|
|
458
|
+
let linkWatcher;
|
|
459
|
+
let linkWatcherFlush;
|
|
460
|
+
const flushLinkWatcher = async () => {
|
|
461
|
+
if (linkWatcherFlush !== undefined) {
|
|
462
|
+
await linkWatcherFlush;
|
|
463
|
+
return;
|
|
464
|
+
}
|
|
465
|
+
if (linkWatcher === undefined)
|
|
466
|
+
return;
|
|
467
|
+
const watcher = linkWatcher;
|
|
468
|
+
linkWatcherFlush = (async () => {
|
|
469
|
+
try {
|
|
470
|
+
await watcher.flush();
|
|
471
|
+
}
|
|
472
|
+
catch { }
|
|
473
|
+
try {
|
|
474
|
+
watcher.stop();
|
|
475
|
+
}
|
|
476
|
+
catch { }
|
|
477
|
+
linkWatcher = undefined;
|
|
478
|
+
})();
|
|
479
|
+
await linkWatcherFlush;
|
|
480
|
+
};
|
|
402
481
|
let patchPromise;
|
|
403
482
|
try {
|
|
404
483
|
if (launcher === "opencode") {
|
|
@@ -452,6 +531,8 @@ export function registerOpenCommand(program) {
|
|
|
452
531
|
}
|
|
453
532
|
catch { }
|
|
454
533
|
}
|
|
534
|
+
if (linkWatcher !== undefined || linkWatcherFlush !== undefined)
|
|
535
|
+
await flushLinkWatcher();
|
|
455
536
|
const nativeSessionId = finishOpenSession(role, sessionFile);
|
|
456
537
|
try {
|
|
457
538
|
if (patchPromise)
|
|
@@ -542,6 +623,8 @@ export function registerOpenCommand(program) {
|
|
|
542
623
|
}
|
|
543
624
|
catch { }
|
|
544
625
|
}
|
|
626
|
+
if (linkWatcher !== undefined || linkWatcherFlush !== undefined)
|
|
627
|
+
await flushLinkWatcher();
|
|
545
628
|
const nativeSessionId = finishOpenSession(role, sessionFile);
|
|
546
629
|
try {
|
|
547
630
|
if (patchPromise)
|
|
@@ -590,6 +673,11 @@ export function registerOpenCommand(program) {
|
|
|
590
673
|
else {
|
|
591
674
|
await playBoot(role, model, effort);
|
|
592
675
|
}
|
|
676
|
+
linkWatcher = startLinkWatcher({
|
|
677
|
+
sessionFile,
|
|
678
|
+
runId,
|
|
679
|
+
link: (id, nativeId) => client.request("session.linkNative", { id, nativeId }),
|
|
680
|
+
});
|
|
593
681
|
const closeClaude = async () => {
|
|
594
682
|
if (!fs.existsSync(sessionFile) && opts.resume && SESSION_ID_PATTERN.test(opts.resume)) {
|
|
595
683
|
try {
|
|
@@ -597,6 +685,8 @@ export function registerOpenCommand(program) {
|
|
|
597
685
|
}
|
|
598
686
|
catch { }
|
|
599
687
|
}
|
|
688
|
+
if (linkWatcher !== undefined || linkWatcherFlush !== undefined)
|
|
689
|
+
await flushLinkWatcher();
|
|
600
690
|
const nativeSessionId = finishOpenSession(role, sessionFile);
|
|
601
691
|
try {
|
|
602
692
|
if (patchPromise)
|
|
@@ -621,6 +711,8 @@ export function registerOpenCommand(program) {
|
|
|
621
711
|
});
|
|
622
712
|
}
|
|
623
713
|
catch (err) {
|
|
714
|
+
if (linkWatcher !== undefined || linkWatcherFlush !== undefined)
|
|
715
|
+
await flushLinkWatcher();
|
|
624
716
|
try {
|
|
625
717
|
await client.request("session.release", {
|
|
626
718
|
id: runId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/cli/commands/open.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"open.js","sourceRoot":"","sources":["../../../src/cli/commands/open.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import http from "node:http";
|
|
2
|
+
import { spawn } from "node:child_process";
|
|
3
|
+
import { InvalidArgumentError } from "commander";
|
|
4
|
+
import { REVIEW_PAGE } from "../../web/review-page.js";
|
|
5
|
+
import { getLocalReview } from "../../git/review.js";
|
|
6
|
+
export const DEFAULT_REVIEW_PORT = 3100;
|
|
7
|
+
export function parseReviewPort(raw) {
|
|
8
|
+
if (raw === undefined)
|
|
9
|
+
return DEFAULT_REVIEW_PORT;
|
|
10
|
+
if (!/^\d+$/.test(raw)) {
|
|
11
|
+
throw new InvalidArgumentError("--port must be a positive integer");
|
|
12
|
+
}
|
|
13
|
+
const port = Number(raw);
|
|
14
|
+
if (!Number.isInteger(port) || port <= 0 || port > 65535) {
|
|
15
|
+
throw new InvalidArgumentError("--port must be a positive integer");
|
|
16
|
+
}
|
|
17
|
+
return port;
|
|
18
|
+
}
|
|
19
|
+
export function openBrowser(url) {
|
|
20
|
+
const opener = process.platform === "darwin"
|
|
21
|
+
? "open"
|
|
22
|
+
: process.platform === "win32"
|
|
23
|
+
? "cmd"
|
|
24
|
+
: "xdg-open";
|
|
25
|
+
const args = process.platform === "win32" ? ["/c", "start", "", url] : [url];
|
|
26
|
+
try {
|
|
27
|
+
const child = spawn(opener, args, { detached: true, stdio: "ignore" });
|
|
28
|
+
child.unref();
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
function sendJson(res, code, value) {
|
|
36
|
+
res.writeHead(code, { "content-type": "application/json; charset=utf-8" });
|
|
37
|
+
res.end(JSON.stringify(value));
|
|
38
|
+
}
|
|
39
|
+
export function createReviewHandler(reviewDeps) {
|
|
40
|
+
return (req, res) => {
|
|
41
|
+
void (async () => {
|
|
42
|
+
try {
|
|
43
|
+
const url = new URL(req.url || "/", "http://127.0.0.1");
|
|
44
|
+
if (req.method === "GET" && (url.pathname === "/" || url.pathname === "/review")) {
|
|
45
|
+
res.writeHead(200, { "content-type": "text/html; charset=utf-8" });
|
|
46
|
+
res.end(REVIEW_PAGE);
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
if (req.method === "GET" && url.pathname === "/api/review") {
|
|
50
|
+
const ref = url.searchParams.get("ref") || "HEAD";
|
|
51
|
+
const file = url.searchParams.get("file") || undefined;
|
|
52
|
+
const root = reviewDeps?.root ?? process.cwd();
|
|
53
|
+
try {
|
|
54
|
+
const load = reviewDeps?.loadReview ?? ((r, q, f) => getLocalReview(r, { ref: q, file: f }));
|
|
55
|
+
sendJson(res, 200, await load(root, ref, file));
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
59
|
+
sendJson(res, message.includes("not a git repository") ? 404 : 500, { error: message });
|
|
60
|
+
}
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
sendJson(res, 404, { error: "not found" });
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
try {
|
|
67
|
+
sendJson(res, 500, { error: error instanceof Error ? error.message : String(error) });
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
try {
|
|
71
|
+
res.end();
|
|
72
|
+
}
|
|
73
|
+
catch {
|
|
74
|
+
// The socket is already unusable.
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
})();
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
export function registerReviewCommand(program) {
|
|
82
|
+
program
|
|
83
|
+
.command("review")
|
|
84
|
+
.description("Open a local review of the current git changes")
|
|
85
|
+
.option("--port <n>", "port to listen on (default: 3100)", String(DEFAULT_REVIEW_PORT))
|
|
86
|
+
.option("--no-open", "serve the review without opening a browser")
|
|
87
|
+
.action(async (opts) => {
|
|
88
|
+
let port;
|
|
89
|
+
try {
|
|
90
|
+
port = parseReviewPort(opts.port);
|
|
91
|
+
}
|
|
92
|
+
catch (error) {
|
|
93
|
+
console.error(error instanceof Error ? error.message : String(error));
|
|
94
|
+
process.exitCode = 1;
|
|
95
|
+
return;
|
|
96
|
+
}
|
|
97
|
+
const server = http.createServer(createReviewHandler());
|
|
98
|
+
try {
|
|
99
|
+
await new Promise((resolve, reject) => {
|
|
100
|
+
server.once("error", reject);
|
|
101
|
+
server.listen(port, "127.0.0.1", () => resolve());
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
catch (error) {
|
|
105
|
+
console.error(`Failed to listen on 127.0.0.1:${port}: ${error instanceof Error ? error.message : String(error)}`);
|
|
106
|
+
process.exitCode = 1;
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
const url = `http://127.0.0.1:${port}/`;
|
|
110
|
+
console.log(`CodeDeck review on ${url}`);
|
|
111
|
+
if (opts.open !== false && !openBrowser(url)) {
|
|
112
|
+
console.log(`Could not open a browser, visit ${url} manually.`);
|
|
113
|
+
}
|
|
114
|
+
const shutdown = () => {
|
|
115
|
+
server.close(() => process.exit(0));
|
|
116
|
+
setTimeout(() => process.exit(0), 1000).unref?.();
|
|
117
|
+
};
|
|
118
|
+
process.on("SIGINT", shutdown);
|
|
119
|
+
process.on("SIGTERM", shutdown);
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=review.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review.js","sourceRoot":"","sources":["../../../src/cli/commands/review.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { findTranscript, readTranscriptUsage } from "../../core/claude-transcript.js";
|
|
4
|
+
import { openSourceKey } from "../../core/usage-source.js";
|
|
5
|
+
import { getPaths } from "../../config/paths.js";
|
|
6
|
+
import { SESSION_ID_PATTERN } from "../../open/runtime.js";
|
|
7
|
+
import { Database } from "../../store/database.js";
|
|
8
|
+
import { UsageLedger } from "../../store/usage-ledger.js";
|
|
9
|
+
function addId(ids, value) {
|
|
10
|
+
const nativeId = value.trim();
|
|
11
|
+
if (SESSION_ID_PATTERN.test(nativeId))
|
|
12
|
+
ids.add(nativeId);
|
|
13
|
+
}
|
|
14
|
+
function collectNativeIds(db, sessionsDir) {
|
|
15
|
+
const ids = new Set();
|
|
16
|
+
const openRows = db.prepare(`
|
|
17
|
+
SELECT native_session_id FROM sessions
|
|
18
|
+
WHERE origin = 'open' AND native_session_id IS NOT NULL
|
|
19
|
+
`).all();
|
|
20
|
+
for (const row of openRows)
|
|
21
|
+
addId(ids, row.native_session_id);
|
|
22
|
+
const workerRows = db.prepare(`
|
|
23
|
+
SELECT native_session_id FROM sessions
|
|
24
|
+
WHERE native_session_id IS NOT NULL AND (origin IS NULL OR origin <> 'open')
|
|
25
|
+
`).all();
|
|
26
|
+
const workerIds = new Set(workerRows.map((row) => row.native_session_id));
|
|
27
|
+
let files;
|
|
28
|
+
try {
|
|
29
|
+
files = fs.readdirSync(sessionsDir);
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
return { ids, workerIds };
|
|
33
|
+
}
|
|
34
|
+
for (const file of files) {
|
|
35
|
+
const nameSidecar = file.match(/^codedeck-session-\d+\.([^.]+)\.name$/);
|
|
36
|
+
if (nameSidecar?.[1])
|
|
37
|
+
addId(ids, nameSidecar[1]);
|
|
38
|
+
if (!/^codedeck-session-\d+$/.test(file))
|
|
39
|
+
continue;
|
|
40
|
+
let contents;
|
|
41
|
+
try {
|
|
42
|
+
contents = fs.readFileSync(path.join(sessionsDir, file), "utf8");
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
for (const line of contents.split(/\r?\n/))
|
|
48
|
+
addId(ids, line);
|
|
49
|
+
}
|
|
50
|
+
return { ids, workerIds };
|
|
51
|
+
}
|
|
52
|
+
function repositoryRoot(cwd) {
|
|
53
|
+
if (cwd === undefined)
|
|
54
|
+
return null;
|
|
55
|
+
let current = path.resolve(cwd);
|
|
56
|
+
while (true) {
|
|
57
|
+
if (fs.existsSync(path.join(current, ".git")))
|
|
58
|
+
return current;
|
|
59
|
+
const parent = path.dirname(current);
|
|
60
|
+
if (parent === current)
|
|
61
|
+
return null;
|
|
62
|
+
current = parent;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
function importLegacyUsage(db, ledger, nativeId, usage) {
|
|
66
|
+
const sourceKey = openSourceKey(nativeId);
|
|
67
|
+
const endedAt = usage.endedAt;
|
|
68
|
+
if (endedAt === undefined)
|
|
69
|
+
return false;
|
|
70
|
+
db.exec("BEGIN IMMEDIATE");
|
|
71
|
+
try {
|
|
72
|
+
if (ledger.hasSource(sourceKey)) {
|
|
73
|
+
db.exec("ROLLBACK");
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
const cost = usage.cost ?? null;
|
|
77
|
+
const inputTokens = usage.inputTokens;
|
|
78
|
+
const outputTokens = usage.outputTokens;
|
|
79
|
+
const cachedTokens = usage.cachedTokens;
|
|
80
|
+
const updatedAt = new Date().toISOString();
|
|
81
|
+
db.prepare(`
|
|
82
|
+
INSERT INTO usage_legacy (
|
|
83
|
+
native_id, ended_at, cwd, repository, model, cost,
|
|
84
|
+
input_tokens, output_tokens, cached_tokens
|
|
85
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
86
|
+
`).run(nativeId, endedAt, usage.cwd ?? null, repositoryRoot(usage.cwd ?? undefined), usage.model ?? null, cost, inputTokens, outputTokens, cachedTokens);
|
|
87
|
+
db.prepare(`
|
|
88
|
+
INSERT INTO usage_sources (
|
|
89
|
+
source_key, cost, input_tokens, output_tokens, cached_tokens, updated_at
|
|
90
|
+
) VALUES (?, ?, ?, ?, ?, ?)
|
|
91
|
+
`).run(sourceKey, cost, inputTokens, outputTokens, cachedTokens, updatedAt);
|
|
92
|
+
db.exec("COMMIT");
|
|
93
|
+
return true;
|
|
94
|
+
}
|
|
95
|
+
catch (error) {
|
|
96
|
+
try {
|
|
97
|
+
db.exec("ROLLBACK");
|
|
98
|
+
}
|
|
99
|
+
catch { }
|
|
100
|
+
throw error;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
export async function backfillUsage() {
|
|
104
|
+
const paths = getPaths();
|
|
105
|
+
const db = new Database(paths.db);
|
|
106
|
+
try {
|
|
107
|
+
const handle = db.getHandle();
|
|
108
|
+
const ledger = new UsageLedger(handle);
|
|
109
|
+
const { ids, workerIds } = collectNativeIds(handle, paths.sessionsDir);
|
|
110
|
+
const summary = { imported: 0, skipped: 0 };
|
|
111
|
+
for (const nativeId of ids) {
|
|
112
|
+
if (workerIds.has(nativeId)) {
|
|
113
|
+
summary.skipped++;
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
const sourceKey = openSourceKey(nativeId);
|
|
117
|
+
if (ledger.hasSource(sourceKey)) {
|
|
118
|
+
summary.skipped++;
|
|
119
|
+
continue;
|
|
120
|
+
}
|
|
121
|
+
const transcript = findTranscript(nativeId);
|
|
122
|
+
if (!transcript) {
|
|
123
|
+
summary.skipped++;
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
126
|
+
let usage;
|
|
127
|
+
try {
|
|
128
|
+
usage = await readTranscriptUsage(transcript);
|
|
129
|
+
}
|
|
130
|
+
catch {
|
|
131
|
+
summary.skipped++;
|
|
132
|
+
continue;
|
|
133
|
+
}
|
|
134
|
+
if (usage.state !== "cost-state" || usage.endedAt === undefined) {
|
|
135
|
+
summary.skipped++;
|
|
136
|
+
continue;
|
|
137
|
+
}
|
|
138
|
+
if (importLegacyUsage(handle, ledger, nativeId, usage))
|
|
139
|
+
summary.imported++;
|
|
140
|
+
else
|
|
141
|
+
summary.skipped++;
|
|
142
|
+
}
|
|
143
|
+
return summary;
|
|
144
|
+
}
|
|
145
|
+
finally {
|
|
146
|
+
db.close();
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=usage-backfill.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage-backfill.js","sourceRoot":"","sources":["../../../src/cli/commands/usage-backfill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAW1D,SAAS,KAAK,CAAC,GAAgB,EAAE,KAAa;IAC5C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC;QAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,gBAAgB,CACvB,EAAgB,EAChB,WAAmB;IAEnB,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC;;;GAG3B,CAAC,CAAC,GAAG,EAAmC,CAAC;IAC1C,KAAK,MAAM,GAAG,IAAI,QAAQ;QAAE,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAE9D,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC;;;GAG7B,CAAC,CAAC,GAAG,EAAmC,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAE1E,IAAI,KAAe,CAAC;IACpB,IAAI,CAAC;QACH,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;IAC5B,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACxE,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC;YAAE,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAS;QACnD,IAAI,QAAgB,CAAC;QACrB,IAAI,CAAC;YACH,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;QACnE,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC;YAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,cAAc,CAAC,GAAuB;IAC7C,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAChC,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAAE,OAAO,OAAO,CAAC;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,MAAM,KAAK,OAAO;YAAE,OAAO,IAAI,CAAC;QACpC,OAAO,GAAG,MAAM,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CACxB,EAAgB,EAChB,MAAmB,EACnB,QAAgB,EAChB,KAAsD;IAEtD,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC9B,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAExC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC3B,IAAI,CAAC;QACH,IAAI,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YAChC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACpB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC;QAChC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACtC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;QACxC,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;QACxC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,EAAE,CAAC,OAAO,CAAC;;;;;KAKV,CAAC,CAAC,GAAG,CACJ,QAAQ,EACR,OAAO,EACP,KAAK,CAAC,GAAG,IAAI,IAAI,EACjB,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI,SAAS,CAAC,EACtC,KAAK,CAAC,KAAK,IAAI,IAAI,EACnB,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,YAAY,CACb,CAAC;QACF,EAAE,CAAC,OAAO,CAAC;;;;KAIV,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;QAC5E,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC;YACH,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtB,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,EAAE,CAAC,SAAS,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QACvE,MAAM,OAAO,GAAyB,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QAElE,KAAK,MAAM,QAAQ,IAAI,GAAG,EAAE,CAAC;YAC3B,IAAI,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClB,SAAS;YACX,CAAC;YAED,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC1C,IAAI,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClB,SAAS;YACX,CAAC;YAED,MAAM,UAAU,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClB,SAAS;YACX,CAAC;YAED,IAAI,KAAsD,CAAC;YAC3D,IAAI,CAAC;gBACH,KAAK,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC;YAChD,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClB,SAAS;YACX,CAAC;YACD,IAAI,KAAK,CAAC,KAAK,KAAK,YAAY,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAChE,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClB,SAAS;YACX,CAAC;YAED,IAAI,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC;gBAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;;gBACtE,OAAO,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC"}
|