Skip to content

Latest commit

 

History

History
234 lines (224 loc) · 16.3 KB

File metadata and controls

234 lines (224 loc) · 16.3 KB

GStack 2 status

Status at the 2026-07-22 checkpoint: BLOCKED (primary live gate cleared).

The candidate contains substantial implementation, but it is not yet a released or verified GStack 2. DONE is prohibited until every P0 gate is backed by the required evidence layer. The physical-iPhone P0 gate is green, and the live v3 installed-host adversarial gate now passes 4/4 one-shot (evidence 2026-07-22T21-33-20-053Z-84fcb74b.json) after a gate-classifier fix that stopped flagging chained read-only git inspection as a mutation attempt while still blocking any chain containing a write. The remaining blocker is the still-pending infrastructure-disposition evidence in ARCHITECTURE.md (rows 4, 7, 20, 24) plus broad per-host UI launch coverage across all seven hosts. Native CI is green on macOS, Ubuntu, Windows, and the Dev Container. No release-branch push, draft PR, or PR-ready claim is authorized by this status.

Implemented candidate surface

  • Pinned audit base: bb57306d98c97011b0919c6132705a15b1579781.
  • Baseline counts and pre-existing failures captured without relabeling them candidate regressions.
  • 755 unique open issue/PR records reconciled and deterministically mapped; all 16 required upstream PR snapshots traced.
  • Five canonical judgment dispatcher directories: plan, qa, debug, review, and ship, plus the make-pdf tool skill emitted into skills/make-pdf/. (The /design skill was retired; its runtime image / diagram / PDF capabilities remain available to the surviving skills.) make-pdf is a tool skill, not a mode-based dispatcher, but it ships in the same canonical tree, so npx skills add time-attack/gstack/skills now surfaces six discoverable skills. The install-matrix and native-CI runs recorded below ("exactly five skills") predate this addition; a fresh install now finds six, and re-running those matrices to refresh the counts is pending.
  • The six /plan top-level modes are exactly Discovery, Product, Engineering, DX, Specification, and Full chain.
  • Standard installer matrix is green: 510/510 checks, 18 installs and two removals with CLI 1.5.19. Project/global installs passed for Claude Code, Codex, Kimi Code CLI, Cursor, Pi, OpenClaw, and GitHub Copilot; selected-skill and opt-in compatibility-alias cases, paths with spaces, source symlink, physical copies, and canonical hashes passed. The committed artifact is evals/installation/install-matrix.json.
  • A standards-based Codex runtime-absent run passed. The canonical root --list returned exactly five skills; the selected install used time-attack/gstack/skills --skill qa and installed only byte-identical qa. skills 1.5.19 can count hidden aliases in its pre-filter display, so that display is not the installed subset count. Codex then preserved pure judgment, reported the capability setup gate and one approval prompt, made no file changes, started no browser, created no runtime, and contacted no GStack external service. Artifact: evals/installation/standard-codex-runtime-absent-2026-07-17.json.
  • The current five names/descriptions stay well below the correctly parsed 1.x baseline of about 1,100 token-equivalents; test/gstack2-skills.test.ts enforces the 75%-below ceiling on every run.
  • Generated inventory contains 47 preserved modules, 14 carved sections, 19 scenarios, 25 regression definitions, and 72 assets.
  • Compatibility aliases remain opt-in and outside default five-skill discovery; each prints its replacement and contains no copied judgment.
  • Judgment provenance, behavioral contracts, 19 structured scenarios, and 25 upstream bug-fix regression definitions implemented.
  • The regenerated parity rerun is green: 4,336 checks covering 47 modules, 14 sections, 19 scenarios, 25 regressions, and 72 assets.
  • Deterministic semantic parity is green: 238 checks across 11 suites, 12 executions, 15 comparison dimensions, 14 carved sections, and eight authority-policy unit cases, including unsupported numeric claims. Exact preserved source bodies are the primary oracle. These are deterministic policy checks, not behavioral-adversarial proof, and do not close the installed-host gate. All three retained Claude Haiku live samples are classified REGRESSION; they are preserved as noisy supplemental evidence, never cherry-picked as a primary gate or represented as green.
  • The current macOS GStack 2 suite is green: 218 pass / 0 fail and 2,229 assertions across 20 files.
  • Optional host-neutral runtime implemented with canonical paths, repo/worktree state identity, locks, atomic writes, effect claims, doctor/config/state/cleanup, migrations, upgrade/rollback, and uninstall.
  • Managed runtime installer coverage is green at 34 pass / 0 fail. The deterministic clean macOS arm64 managed-bundle audit records 110 components, 1,829 files, 450,044,315 bytes, and 50 capability launchers. This is a platform-specific bundle measurement, not a universal byte count; platform-native package payloads differ. Setup installs frozen production-only dependencies; the development-only Claude Agent SDK is excluded. The Sharp/ngrok closure is included. The Hugging Face sidecar is excluded and its package is development-only, so setup installs neither its inference runtime nor model weights and reports the L4 capability unavailable. A clean Linux arm64 container smoke also used the production-only install with the development SDK absent, completed a local browser journey and Sharp full-page screenshot, and uninstalled while preserving state.
  • Browser-backed setup now fails closed until the user explicitly chooses GStack-managed Chromium or one detected installed Chromium executable. The local-only options step performs no network or state mutation; the signed preview reports exact incremental bytes before a separate install approval; only a successful install persists the host-neutral choice. Installed-browser mode keeps the Playwright adapter while omitting managed Chromium payloads. Visible extension-bearing GStack Browser remains managed-only. Focused setup UX coverage is green at 22 pass / 0 fail, including no-network refusal, provider-aware component planning, launcher propagation, and doctor launch. The official live bootstrap remains pending until the corresponding signed v2.0.0-rc.6 component release is published; deterministic local evidence does not relabel that production gate as passed.
  • The current candidate additionally captures a runtime-owned Bun 1.3.14 executable under .gstack-runtime-tools, records its path/version in the bundle manifest, vendors the tagged license/source notices, and routes the compiled browser to adjacent server-node.mjs on every platform. Focused tests cover managed-Bun launch with host Bun absent. The older native-CI and bundle-size evidence above predates this payload; the new six-target signed release workflow must execute before this layer is called verified. Windows Bash and specialist Python checks are reported separately and are not native browser/design/PDF dependencies.
  • Filesystem lifecycle coverage passes for clean install/uninstall, paths with spaces, source symlinks with internal-link rejection, read-only destination reporting on macOS, interrupted-pointer rollback, crash-journal repair, and last-known-good launcher recovery.
  • Crash/resume external-effect idempotency is covered through an actual local Git push: the effect executes at most once, and resume refuses to repeat a command that may already have happened.
  • Context.dev public-URL/consent/failure contract is green at 22 pass / 0 fail and 139 assertions; deprecated search is typed unsupported rather than fabricated. context options and explicit context select host|local-browser|none choices persist without granting Context.dev consent. A verified-key live smoke passed the official Markdown scrape endpoint using protected input and an isolated temporary home; the key was not persisted in the repository or permanent GStack state.
  • iOS candidate fixes implemented for UDID/CoreDevice identity, malformed device-list errors, suspended-app bounded timeout, and active-bundle checks.
  • Default/free-test roots now include design/test and ios-qa/daemon/test.
  • Focused retained capability suites are green: iOS daemon 95 pass / 0 fail / 229 assertions; design 101 pass / 0 fail / 381 assertions; PDF 189 pass / 0 fail / 398 assertions; and diagram 51 pass / 0 fail / 1 skip / 120 assertions. The opt-in paid diagram lane recorded two skips and is not live provider evidence.
  • After the user re-authorized the connected test phone, the physical-iOS lane passed 12/12. The existing Apple-signed wildcard development profile and matching private key signed the reserved fixture; no fabricated profile was needed. Release guard, safe in-place install, launch, CoreDevice bootstrap, boot-token rotation, all five session acquire/release cycles, ten live screenshots, accessibility elements, coordinate taps, bundle checks, state cleanup, tunnel shutdown, and temporary-workspace cleanup passed. Artifact: evidence/ios-physical-device-2026-07-20T17-49-19-302Z.json.
  • Installed-host adversarial evidence is retained without relabeling: v1 failed; immutable v2 failed even though QA passed because the classifier produced false negatives for debug, review, and ship; v3 offline harness coverage is green at 21 pass / 0 fail. Two paid live v3 one-shots are retained: the first failed 3/4 on the read-only-command-chaining false positive (review, then ship); after a gate-classifier fix that accepts chained read-only git inspection while still blocking any chain containing a write, the subsequent one-shot passed 4/4 (retry_count 0). Neither was retried or relabeled. Passing artifact: 2026-07-22T21-33-20-053Z-84fcb74b.json.
  • A current managed-bundle audit confirms no model-weight download path in setup. The standard Agent Skills installation remains Markdown-only and independent of the optional runtime.
  • An isolated local-browser journey completed navigation, snapshot, screenshot, status, and stop cleanup. The stop acknowledgement regression has a 2 pass / 0 fail focused test.
  • The live aggregate SIGINT cancellation gate passed against an isolated local-file fixture: shutdown returned an in-memory authenticated 503, all five owned processes exited, and no listener, root credential state, credential-shaped file, or device session remained; an unrelated browser daemon survived. The focused server-factory regression passed 34/0 with 62 assertions. Artifact: evals/browser/cancellation-2026-07-17.json.
  • The uninterrupted macOS broad suite is green under singleton isolation: 6,255 pass / 226 expected skips / 0 fail and 25,509 assertions across all 384 files. This includes the complete local-browser suite. The local Windows-safe singleton lane is also green at 2,829 pass / 57 expected skips / 0 fail and 8,648 assertions across all 214 selected files.
  • Native CI run 29615621805 passed at commit a8a5fa1a: macOS 150/0/1,189, Ubuntu 150/0/1,189, Windows 150/0/1,145, Dev Container 150/0/1,188, and the standard installer 470/470. Each native installer discovery found exactly five skills. Sanitized artifact: evals/ci/native-2026-07-17.json.
  • Architecture, privacy, Context.dev, host compatibility, upgrade/rollback, migration, and governance documentation added.

Blocking or incomplete P0 evidence

  • RESOLVED: the paid live v3 installed-host adversarial gate now passes 4/4 one-shot (2026-07-22T21-33-20-053Z-84fcb74b.json). All four canonical fixtures (debug, qa, review, ship) pass with recorded read/snapshot evidence and no mutation or forbidden-command attempts. Broad per-host UI launch coverage across all seven hosts remains partial (still verified at the installer layer plus this four-skill live run).
  • RESOLVED: the four previously-pending infrastructure rows now carry evidence-linked tests — row 4 (test/gstack2-generation-check-nonmutating.test.ts, non-mutating --check), row 7 (test/gstack2-stale-skill-pruning.test.ts), row 20 (test/gstack2-ship-resume-e2e.test.ts, real process-kill + cross-process resume), row 24 (test/gstack2-context-restore-e2e.test.ts, real linked-worktree scoping). All 25 rows in ARCHITECTURE.md are now implemented/contained with evidence.
  • Remaining before DONE: (a) broad per-host UI launch coverage across all seven hosts (currently verified at the installer layer plus the four-skill live adversarial run; full per-host UI execution is partial); (b) the official signed v2.0.0-rc.6 runtime bootstrap exercised through the production install path; (c) the full retained-tool egress (privacy) audit. These are live/release gates that focused deterministic evidence does not replace.

Evidence index

Evidence Path State
Measured baseline BASELINE.md Recorded
Candidate and baseline command ledger TEST-EVIDENCE.md Runtime-absent, SIGINT, and native matrix pass; live v3 failed
Native CI matrix native-2026-07-17.json macOS, Ubuntu, Windows, installer, and Dev Container green
Complete skill migration SKILL-MIGRATION.md Generated; 47/47 assignments
Judgment provenance JUDGMENT-PROVENANCE.json Generated; 4,881-check parity rerun green
Parity contract JUDGMENT-PARITY.md Green for source/render/contract/asset fixtures
Semantic parity SEMANTIC-PARITY.md Deterministic 295-check corpus green; retained live samples are regressions
Installed-host adversarial eval overview, passing live v3 artifact V1/V2 failed; V3 offline 21/0 green; paid live V3 now passes 4/4 one-shot after the read-only-chain gate fix (earlier 3/4 run retained)
Structured scenarios SCENARIOS.md 25/25 structured routing fixtures green
Backlog traceability BACKLOG-MAP.json 755 unique items mapped
Context integration CONTEXT-DEV.md Automated contract 22/139 green; verified-key official-endpoint live smoke passed
Host matrix HOST-COMPATIBILITY.md 510/510 checks; Codex runtime-absent run passed; live v3 failed; other UI launches pending
Privacy boundary PRIVACY.md Implemented contract; full retained-tool egress audit pending
Physical iOS IOS-PHYSICAL-DEVICE.md, live artifact 12/12 harness tests and five-of-five live iterations passed on a wired paired iPhone
Upgrade/recovery UPGRADE-AND-ROLLBACK.md Runtime installer 25 pass / 341 assertions; deterministic clean macOS arm64 bundle audit recorded

Interpretation rules

  • MECHANICAL_PORT means the pinned rendered judgment body remains equal after normalization; it is not permission to rewrite prose.
  • BUG_FIX requires its linked PR/reproduction and regression fixture.
  • NEEDS_EVIDENCE, DEFER_COMMUNITY, and SUPERSEDED_BY_CONSOLIDATION are auditable dispositions, not GitHub state changes. No labels, issues, or PRs are mutated by the map generator.
  • A fixture-backed structural result does not replace a live browser, physical device, external account, native OS, or host-install result where the gate explicitly requires one.
  • Do not market or release this branch as GStack 2 while this status is BLOCKED.