agent-dag 3.4.0 → 3.5.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.
@@ -40,7 +40,7 @@
40
40
  document.documentElement.setAttribute("data-theme", stored === "light" ? "light" : "dark");
41
41
  })();
42
42
  </script>
43
- <script type="module" crossorigin src="/assets/index-3Q9bZKVe.js"></script>
43
+ <script type="module" crossorigin src="/assets/index-3n0suABn.js"></script>
44
44
  <link rel="stylesheet" crossorigin href="/assets/index-D0YH-emg.css">
45
45
  </head>
46
46
  <body>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-dag",
3
- "version": "3.4.0",
3
+ "version": "3.5.0",
4
4
  "description": "Live deck of Claude Code and Codex agents — watch tool calls, token spend and every Claude Code subagent on one calm canvas. Run it with npx ccdeck.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -31,6 +31,12 @@
31
31
  "about a defect in the type, and the suite refuses both it and no space at",
32
32
  "all."
33
33
  ],
34
+ "3.5.0": [
35
+ {
36
+ "title": "⚡ The figures move when the work happens",
37
+ "body": "Reading your usage off the logs is not free — measured here, one reading is 7.8 seconds of CPU, because ccusage walks every transcript on the machine whatever period you asked for. Once a minute is affordable; once every ten seconds would be three quarters of a core, permanently, for numbers that move slowly.\n\nSo the reading stays on a minute and the deck fills the gap with what it already knows. Every hook event carries its session's running total, so the panel adds whatever has been spent since the last reading and counts up to it. The headline now moves when a turn finishes rather than on the clock, and it costs nothing extra.\n\nIt only ever adds. A session leaving the canvas cannot pull the figure down, and the next reading corrects whatever the estimate got wrong — the tokens are exact, and the dollars in between are priced by the deck's own table.\n\nTwo smaller things with it: pressing today, month or all now counts between the two figures instead of swapping them, and coming back to the tab only re-reads if what is on screen is actually stale."
38
+ }
39
+ ],
34
40
  "3.4.0": [
35
41
  {
36
42
  "title": "🔢 The figures count to their new value, once a minute",
@@ -22,7 +22,8 @@ import { PRODUCT } from "./brand.mjs";
22
22
  // 60s, and it is the panel's poll interval rather than a number of its own: the
23
23
  // Usage panel asks once a minute and expects a reading that has actually moved,
24
24
  // so a longer cache would hand the same figure back and make the interval a
25
- // lie. The modal is manual-open and unaffected either way.
25
+ // lie. Two tabs polling out of phase still share one run, which is what the
26
+ // cache is for here. The modal is manual-open and unaffected either way.
26
27
  const CACHE_MS = 60_000;
27
28
  const TIMEOUT_MS = 90_000;
28
29
  const INSTALL_TIMEOUT_MS = 120_000; // first-run npm install can be slow