ccdeck 3.36.1 → 3.36.4

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.
@@ -64,8 +64,8 @@
64
64
  stored === "light" || (stored !== "dark" && light) ? "light" : "dark");
65
65
  })();
66
66
  </script>
67
- <script type="module" crossorigin src="/assets/index-D09Vu58F.js"></script>
68
- <link rel="stylesheet" crossorigin href="/assets/index-1U-Iz_x2.css">
67
+ <script type="module" crossorigin src="/assets/index-Cb31GACQ.js"></script>
68
+ <link rel="stylesheet" crossorigin href="/assets/index-BkXTN4dZ.css">
69
69
  </head>
70
70
  <body>
71
71
  <div id="root"></div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ccdeck",
3
- "version": "3.36.1",
3
+ "version": "3.36.4",
4
4
  "description": "Local dashboard for Claude Code and Codex CLI sessions: which Claude Code session needs input, every tool call and Claude Code subagent live, token cost and quota, several Claude accounts. Run npx ccdeck.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -62,7 +62,14 @@
62
62
  "3.35.0",
63
63
  "3.35.1",
64
64
  "3.36.0",
65
- "3.36.1"
65
+ "3.36.1",
66
+ "3.36.4"
67
+ ],
68
+ "3.36.3": [
69
+ {
70
+ "title": "🔑 An expired login asks to be signed in again",
71
+ "body": "When an account you added with + → Sign in stops working, the deck now tells you in one dialog, with every affected account together and Sign in again beside each. That opens the usual sign-in with the address already filled in, and the account keeps its slot, its alias and its history. Not now leaves it marked in the Accounts panel and does not ask again until it has worked and stopped again. A paired deck holding a working copy gets to repair it first, and accounts that came from a share or Local network are never asked about."
72
+ }
66
73
  ],
67
74
  "3.34.1": [
68
75
  {
@@ -80,8 +80,8 @@ export const DEFAULTS = Object.freeze({
80
80
  // the server can read it with no page open.
81
81
  autoUpdate: true,
82
82
  // USAGE REPORTS (#1853), ON unless somebody turns them off — the owner's
83
- // decision, 2026-09-30: nobody is asked, the README says what is sent, and
84
- // Appearance holds the switch. See reports.mjs for what is sent, and
83
+ // decision, 2026-09-30: nobody is asked and the README says what is sent; the
84
+ // page has no switch since 2026-10-01. See reports.mjs for what is sent, and
85
85
  // reportsVetoed for the launch-time veto that wins over this.
86
86
  reports: true,
87
87
  // What reports.mjs keeps between runs, and the page never sees
@@ -1,5 +1,5 @@
1
- // The page's three ways into reports.mjs (#1853): the switch in Appearance, an
2
- // error the page caught, and the feedback dialog. The page never
1
+ // The page's ways into reports.mjs (#1853): an error the page caught and the
2
+ // feedback dialog. (The switch in Appearance went on 2026-10-01; its route stays.) The page never
3
3
  // talks to api.ccdeck.dev itself — this server does, which is also why the
4
4
  // install id never has to reach the page.
5
5
 
@@ -19,7 +19,8 @@ async function readJson(req, res, limit) {
19
19
  }
20
20
  }
21
21
 
22
- /** `POST /api/reports` `{ on }`: Appearance's "Send usage reports" switch. */
22
+ /** `POST /api/reports` `{ on }`: sets `prefs.reports`. No page control calls it since the owner
23
+ * removed Appearance's switch (2026-10-01); kept so a deck can still be switched off over the API. */
23
24
  export async function handleReportsWrite(req, res, { report = reporter } = {}) {
24
25
  const body = await readJson(req, res, 1_000);
25
26
  if (typeof body?.on !== "boolean") return send(res, 400, { ok: false, reason: "bad_request" });
@@ -40,8 +40,9 @@
40
40
  // so it stops entirely the moment reports are switched off or vetoed.
41
41
  //
42
42
  // NOBODY IS ASKED, AND NOTHING IS HIDDEN. The owner chose on-by-default
43
- // (2026-09-30): the README says what is sent, Appearance holds the switch, and
44
- // AGENTS_DECK_NO_REPORTS=1 keeps it off from the first start.
43
+ // (2026-09-30): the README says what is sent, and AGENTS_DECK_NO_REPORTS=1 keeps it
44
+ // off from the first start. The deck has no switch for it since the owner removed
45
+ // Appearance's on 2026-10-01.
45
46
  //
46
47
  // SWITCHING IT OFF DELETES WHAT WAS SENT. The id is forgotten here and the API
47
48
  // is asked to drop every event and error it holds for it; if that request