mirror of https://github.com/garrytan/gstack.git
chore: restore v1.63.0.0 (MINOR — user-confirmed final slot)
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 <noreply@anthropic.com>
This commit is contained in:
parent
828b229900
commit
1ef48ae052
|
|
@ -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.**
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
6
TODOS.md
6
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
|
||||
|
|
|
|||
|
|
@ -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.
|
||||
});
|
||||
|
|
|
|||
|
|
@ -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",
|
||||
|
|
|
|||
Loading…
Reference in New Issue