From 1ef48ae052cee802006db4dcb3b6b5748d63b4cf Mon Sep 17 00:00:00 2001 From: Garry Tan Date: Thu, 13 Aug 2026 18:10:18 -0700 Subject: [PATCH] =?UTF-8?q?chore:=20restore=20v1.63.0.0=20(MINOR=20?= =?UTF-8?q?=E2=80=94=20user-confirmed=20final=20slot)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The wave ships new capability (egress receipts + two CLIs, sharded paid runner, hermetic skill seeding) at ~8K lines — MINOR scale per the scale-aware bump rules. Supersedes the brief v1.62.1.0 re-slot; the version-free migration flag means no state churn from the renumber. Co-Authored-By: Claude Fable 5 --- CHANGELOG.md | 2 +- CLAUDE.md | 2 +- TODOS.md | 6 +++--- VERSION | 2 +- extension/background.js | 8 ++++---- package.json | 2 +- 6 files changed, 11 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 81aac979d..4f9df3449 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## [1.62.1.0] - 2026-08-12 +## [1.63.0.0] - 2026-08-12 **Everything gstack sends off your machine now leaves a receipt you can read.** **And the eval harness stopped grading itself a passing grade.** diff --git a/CLAUDE.md b/CLAUDE.md index 9b36e8926..f6339fd66 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -282,7 +282,7 @@ PTY via `window.gstackInjectToTerminal(text)`, exposed by `sidepanel-terminal.js`. No `/sidebar-command` POST — the live REPL is the only execution surface in the sidebar now. -**`/health` MUST NOT surface any token — and it no longer does** (v1.62.1+). +**`/health` MUST NOT surface any token — and it no longer does** (v1.63+). The historical headed-mode leak of `AUTH_TOKEN` is fixed: `GET /health` is liveness/status only in every mode. Token bootstrap is `POST /extension-token`, which validates the caller's Origin against the pinned extension identity diff --git a/TODOS.md b/TODOS.md index a0f6f8c80..704714d5f 100644 --- a/TODOS.md +++ b/TODOS.md @@ -2723,9 +2723,9 @@ log already streams per-shard results). **Effort:** S (human ~2h, CC ~15min). **Depends on:** v1.62 port wave landed. -## v1.62.1 port-wave review follow-ups (deferred from /ship review army — non-blocking polish) +## v1.63 port-wave review follow-ups (deferred from /ship review army — non-blocking polish) -Genuine review findings deferred from the v1.62.1 ship because they are +Genuine review findings deferred from the v1.63 ship because they are informational/polish, not correctness-blocking, and several want their own tests. Filed so they are tracked, not dropped. @@ -2756,7 +2756,7 @@ tests. Filed so they are tracked, not dropped. ## P2: harden or re-tier skill-e2e-plan-design-with-ui PTY detection **What:** The gate-tier `test/skill-e2e-plan-design-with-ui.test.ts` began executing -for the first time once v1.62.1's `seedSkills` registered skills in hermetic PTY +for the first time once v1.63's `seedSkills` registered skills in hermetic PTY children (the fork had deleted this file; it measured nothing before). It now reliably TIMES OUT even though the skill runs correctly: the transcript shows `/plan-design-review` reaching its scope-gate AskUserQuestion (5 options, the diff --git a/VERSION b/VERSION index a9d7dad22..232d60188 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.62.1.0 +1.63.0.0 diff --git a/extension/background.js b/extension/background.js index 6b3e95eb4..249bd9f05 100644 --- a/extension/background.js +++ b/extension/background.js @@ -588,9 +588,9 @@ chrome.tabs.onUpdated.addListener((_id, changeInfo) => { } }); -// ─── identity-pin migration notice (v1.62.1) ──────────────────── +// ─── identity-pin migration notice (v1.63) ──────────────────── // -// The manifest "key" added in v1.62.1 pins the extension ID, which changes +// The manifest "key" added in v1.63 pins the extension ID, which changes // the ID for existing installs — chrome.storage.local is keyed by // extension ID, so panel-local state (saved port, snoozes) resets once. // Explain that in-product, one time. The flag name is version-free so a @@ -599,10 +599,10 @@ async function announceIdentityPinOnce() { try { const data = await chrome.storage.local.get('gstack_id_pin_migrated'); if (data.gstack_id_pin_migrated) return; - console.log('[gstack] gstack sidebar: extension identity pinned in v1.62.1 — panel state reset once.'); + console.log('[gstack] gstack sidebar: extension identity pinned in v1.63 — panel state reset once.'); chrome.runtime.sendMessage({ type: 'gstack-migration-notice', - message: 'gstack sidebar: extension identity pinned in v1.62.1 — panel state reset once.', + message: 'gstack sidebar: extension identity pinned in v1.63 — panel state reset once.', }).catch(() => { // Expected: panel not open. The console line above still lands. }); diff --git a/package.json b/package.json index 86c9a0ac8..bbffcc3b1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "gstack", - "version": "1.62.1.0", + "version": "1.63.0.0", "description": "Garry's Stack — Claude Code skills + fast headless browser. One repo, one install, entire AI engineering workflow.", "license": "MIT", "type": "module",