mirror of
https://github.com/garrytan/gstack.git
synced 2026-09-21 04:10:47 +02:00
12 KiB
12 KiB
GStack 2 status
Status at the 2026-07-17 documentation checkpoint: BLOCKED.
The candidate contains substantial implementation, but it is not a released or
verified GStack 2. DONE is prohibited until every P0 gate is backed by the
required evidence layer. Current blockers include a CoreDevice-compatible
signed physical iPhone, native Windows CI, a passing live v3 installed-host
adversarial run, native Linux evidence, and the signed physical-iPhone loop. No
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.
- Exactly six canonical skill directories:
plan,design,qa,debug,review, andship. - The six
/plantop-level modes are exactly Discovery, Product, Engineering, DX, Specification, and Full chain. - Standard installer matrix is green: 470/470 checks, 16 installs and two
removals with CLI 1.5.19. Project/global installs passed for Claude Code,
Codex, 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. - Current six names/descriptions measure 982 characters (about 246 four-character token-equivalents), roughly 77.6% below the correctly parsed baseline of about 1,100 in the regenerated tree.
- Generated inventory contains 55 preserved modules, 16 carved sections, 25 scenarios, 16 regression definitions, and 78 assets.
- Compatibility aliases remain opt-in and outside default six-skill discovery; each prints its replacement and contains no copied judgment.
- Judgment provenance, behavioral contracts, 25 structured scenarios, and 16 upstream bug-fix regression definitions implemented.
- The 2026-07-17 regenerated parity rerun is green: 4,681 checks covering 55 modules, 16 sections, 25 scenarios, 16 regressions, and 78 assets.
- Deterministic semantic parity is green: 295 checks across 14 suites, 15
executions, 15 comparison dimensions, 16 carved sections, and nine
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 focused macOS GStack 2 suite is green: 136 pass / 0 fail, 1,128
assertions across 15 files. Log:
/tmp/gstack2-test-command-candidate-final2.log. This focused surface does not substitute for the broad or native-platform gates. - 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 24 pass / 0 fail and 336 assertions. 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.
- 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 optionsand explicitcontext select host|local-browser|nonechoices 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/testandios-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.
- Physical-iOS preflight recorded 9 pass / 0 fail / 1 deploy skip and 29
assertions. The direct smoke then returned typed code
signing_unavailable, categorysetup_gate; it installed no app and wrote no pass artifact. A later attempt against the explicitly selected iPhone10,6 on iOS 16.7.10 returneddevice_not_wired; legacy USB pairing validates, but CoreDevice pairing is unsupported. The other connected phone was not used. - 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 18 pass / 0 fail and 111 assertions. Live v3 has not run and has no artifact, so there is no passing live installed-host adversarial result.
- 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 uninterrupted macOS broad suite is green under singleton isolation: 6,240 pass / 226 expected skips / 0 fail and 25,449 assertions across all 383 files. This includes the complete local-browser suite. The local Windows-safe singleton lane is also green at 2,815 pass / 57 expected skips / 0 fail and 8,586 assertions across all 213 curated files; it is not native Windows evidence.
- Architecture, privacy, Context.dev, host compatibility, upgrade/rollback, migration, and governance documentation added.
Blocking or incomplete P0 evidence
- Record a passing live v3 installed-host adversarial run and execute the installed skill in each representative host UI. The six hosts are Verified at the installer layer only; v1 and v2 are retained failed runs, and v3 is offline-harness evidence only.
- Prove runtime-absent judgment behavior through an actual host invocation. Runtime install failure and the real default capability lifecycle are covered.
- Complete native Linux and Windows matrices. The uninterrupted macOS
broad singleton run is green at 6,240/226/0 across 383 files, and the local
Windows-safe singleton lane is green at 2,815/57/0 across 213 files. Neither
substitutes for native execution on its named platform. The candidate
workflow targets GitHub-hosted
ubuntu-24.04andwindows-latest, but remote execution requires explicit authorization for a CI-only ref because this candidate is intentionally local-only before P0 passes. - Integrate the passing complete local-browser suite and live journey into final cancellation/leak evidence. The production dependency and managed bundle audit contains no cloud-browser provider/path.
- Complete the physical-iPhone five-check loop with a signed test app. The unsigned Release guard and earlier preflight passed, but the latest authorized target cannot expose the required CoreDevice service on iOS 16.7.10. Provide a CoreDevice-compatible iPhone without broadening the locked backend. No app was installed and no pass artifact exists.
- Verify in one real cancellation run that no subprocess, listener, credential, browser, or device-session remains after interruption. Existing component tests cover each cleanup contract separately but not this aggregate live gate.
- Finish final evidence-linked disposition for every infrastructure item; see the 25-row table in ARCHITECTURE.md. Current focused evidence does not replace the remaining live and native-platform gates.
Evidence index
| Evidence | Path | State |
|---|---|---|
| Measured baseline | BASELINE.md | Recorded |
| Candidate and baseline command ledger | TEST-EVIDENCE.md | Broad macOS and local Windows-safe singleton runs green; live/native-platform gates pending |
| Complete skill migration | SKILL-MIGRATION.md | Generated; 55/55 assignments |
| Judgment provenance | JUDGMENT-PROVENANCE.json | Generated; 4,681-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, immutable v2 artifact | V1 failed; immutable V2 failed; V3 offline 18/111 green, live V3 not run; no passing live run |
| 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 | 470/470 checks; six hosts Verified at installer layer; live v3/UI launch pending |
| Privacy boundary | PRIVACY.md | Implemented contract; full retained-tool egress audit pending |
| Physical iOS | IOS-PHYSICAL-DEVICE.md | Earlier preflight 9 pass / 1 deploy skip / 29 assertions; latest selected target lacks a supported CoreDevice service; no app/pass artifact |
| Upgrade/recovery | UPGRADE-AND-ROLLBACK.md | Runtime installer 24 pass / 336 assertions; deterministic clean macOS arm64 bundle audit recorded |
Interpretation rules
MECHANICAL_PORTmeans the pinned rendered judgment body remains equal after normalization; it is not permission to rewrite prose.BUG_FIXrequires its linked PR/reproduction and regression fixture.NEEDS_EVIDENCE,DEFER_COMMUNITY, andSUPERSEDED_BY_CONSOLIDATIONare 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.