Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 17 additions & 17 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Two products live in this tree:

- **v1** — PowerShell debloater (`Shield-Optimizer.ps1` at the root). Released by running `release.sh` at the repo root, which tags the commit and calls `gh release create` directly. No release workflow — only `tests.yml` (CI tests). **Legacy** since 2026-10-22: serious bug fixes only, no new features. User docs live in `docs/LEGACY-V1.md`, not the README.
- **v1** — PowerShell debloater (`Shield-Optimizer.ps1` at the root). Released by running `release.sh` at the repo root, which tags the commit and calls `gh release create` directly. No release workflow — only `tests.yml` (CI tests). **Legacy**: serious bug fixes only, no new features. User docs live in `docs/LEGACY-V1.md`, not the README.
- **v2** — Tauri 2 + Rust + Svelte 5 desktop app (`v2/`), the official product, shipped as **ATV Optimizer**. Released on `v2-*` tags via `.github/workflows/v2-release.yml`. The root `README.md` is the user-facing page for it; `v2/README.md` is the developer guide.

The two release tracks are intentionally separate. Don't mix tag namespaces and don't edit the v2 workflow when shipping v1 (or vice versa).
Expand All @@ -13,27 +13,27 @@ Before touching v2, skim `v2/HANDOFF.md` — it carries the current roadmap, the

- **The backlog is GitHub issues labeled [`gastown`](https://github.com/bryanroscoe/shield_optimizer/issues?q=is%3Aissue+is%3Aopen+label%3Agastown)**
in `bryanroscoe/shield_optimizer`. Each is titled `[<id>] <title>` and carries the original
description, acceptance criteria and dependencies. Issues without that label are user reports;
some of them duplicate a labeled issue (`#88`, `#89`, `#91` are the known pairs).
- **[`docs/RELEASE-DECISION-2026-09-09.md`](docs/RELEASE-DECISION-2026-09-09.md)** has the release
plan and the step-by-step physical device test script. Read it before tagging anything.
description, acceptance criteria and dependencies. Issues without that label are user reports.
- **[`docs/DEVICE-TEST-SCRIPT.md`](docs/DEVICE-TEST-SCRIPT.md)** is the step-by-step physical
device test script. Run it before tagging a v2 release.
- **[`docs/gastown-shield_optimizer-beads-export.json`](docs/gastown-shield_optimizer-beads-export.json)**
is the full historical task archive including closed items — useful for "why was this done this
way", not a live queue.
- **[`docs/ARCHIVE-INDEX.md`](docs/ARCHIVE-INDEX.md)** points at bulk working material kept outside
this repo on Bryan's machine.
this repo on Bryan's machine, and at the historical docs removed from the repo (each with the
commit that last held it).

### What is in flight right now (2026-10-04)
### What is in flight right now

`v2-2.3.0` shipped 2026-09-30 (the ATV Optimizer rename plus #88, #119–#124). `v2-2.3.1` is
prepared on `release-prep-2.3.1`: the Google TV Setup Wraith fixes (#122, #157, #158), Report this
app (#100), app storage details (#98), restart after updating and patch notes on demand, the
right-click menu (#129), and the #97/#99/#135/#138/#139/#143/#147 fixes. It waits on the owner's
go before `v2/release.sh --set 2.3.1`.
`v2-2.3.0` (2026-09-30) is the latest release. `main` carries a prepared but untagged `v2-2.3.1`
section in `v2/CHANGELOG.md` (the Google TV Setup Wraith fixes #122/#157/#158, Report this app
#100, app storage details #98, restart after updating, patch notes on demand, the right-click menu
#129, and the #97/#99/#135/#138/#139/#143/#147 fixes) and an `Unreleased` section above it (the
Logs tab, Stop ADB when quitting, more fixes). The next tag waits on the owner's go.

Still open and not code work: #122 needs a reporter on Google TV to confirm the Setup Wraith fix
once 2.3.1 ships; #123 needs Glance's package id from its reporter; #93 and #105 need a real
phone and TV.
Still open and not code work: #122 is closed on the fix, but no Google TV reporter can confirm it
until that release ships; #123 needs Glance's package id from its reporter; #93 and #105 need a
real phone and TV.

The mobile companion app (`v2/mobile/`) has its own authoritative handoff at
[`v2/mobile/HANDOFF.md`](v2/mobile/HANDOFF.md). Its safety story depends on never claiming more
Expand Down Expand Up @@ -90,7 +90,7 @@ The Linux runner needs `libwebkit2gtk-4.1-dev libssl-dev libgtk-3-dev libayatana
The README walkthrough (`v2/screenshots/gallery.gif`) is generated, not hand-captured. **When you change v2 UI in a way that alters any captured screen, regenerate it and commit the result** — don't let the gallery drift from the real app:

```
cd v2 && npm run screenshots # captures 15 screens in both themes and rebuilds both GIFs
cd v2 && npm run screenshots # captures 16 screens in both themes and rebuilds both GIFs
```

It runs offline against the demo fixture layer (`src/lib/demo-mock.ts`, gated behind `VITE_DEMO=1`) — no device needed. Most changes (CSS, layout, copy, rows) flow through with no tooling edits. Two cases need a touch-up:
Expand Down Expand Up @@ -151,7 +151,7 @@ The macOS distribution channel is a Homebrew tap at [`bryanroscoe/homebrew-shiel
repo-relative path (`v2/evidence/…`): in a PR it resolves under `/pull/<n>/` and 404s. Branch
links break when the branch is deleted. Committing evidence to the repo is optional; attaching it is not.
- **Roadmap markers**: closing a roadmap or parity item updates its status in the same commit
(`v2/ATVTOOLS-PARITY.md`, `v2/ATV-OPTIMIZER-ANDROID-PLAN.md`, `v2/mobile/BACKLOG.md`). Docs that
(`v2/ATVTOOLS-PARITY.md`, `v2/mobile/BACKLOG.md`). Docs that
claim shipped work is unbuilt send the next reader to rebuild it — that has happened here.
- **Comments**: only when the *why* is non-obvious. Don't add docstrings/comments to code you didn't change. No banner / section-divider comments.
- **Spelling**: the company is "Truemed" — silently correct other casings (TrueMed, TRUEMED, truemed) in writing, except in verbatim quotes, URLs, and code identifiers.
Expand Down
41 changes: 36 additions & 5 deletions docs/ARCHIVE-INDEX.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,36 @@
# Archive index — material kept outside this repository
# Archive index

Two kinds of material live outside the current tree: historical docs that were removed from the
repository (recoverable from git history, listed first), and bulk working material copied to a
local directory that is not in git at all.

## Docs removed from the repository

Each of these described a moment that has passed: a dated audit, a feedback log, a completed
plan, a merge receipt, or a decision that is now simply how the code works. Their still-true facts
were moved into the live docs named in parentheses. Read any of them with the `git show` command
given.

| Path | What it was | Last version |
|---|---|---|
| `docs/RELEASE-DECISION-2026-09-09.md` | The 2026-09-09 release decision packet: candidate inventory, commit plan, draft 2.2.0-beta changelog and CI proposals, plus the physical test script (the script is now `docs/DEVICE-TEST-SCRIPT.md`) | `git show 74c659f:docs/RELEASE-DECISION-2026-09-09.md` |
| `docs/WHERE-EVERYTHING-IS.md` | Cross-project index written when the Gas Town coordination workspace was shut down (other projects, on-disk archives, state at shutdown) | `git show a015c8a:docs/WHERE-EVERYTHING-IS.md` |
| `docs/INTEGRATION-MOBILE-MAIN-2026-10-17.md` | Merge and validation receipt for integrating `main` into the mobile parity branch (PR #201) | `git show 0c78c06:docs/INTEGRATION-MOBILE-MAIN-2026-10-17.md` |
| `docs/DEVICE-LOGS-2026-10-08.md` | Design note for the desktop Logs tab (#162) (now `v2/HANDOFF.md`) | `git show ab8148b:docs/DEVICE-LOGS-2026-10-08.md` |
| `v2/ADB-QUIT-HARDENING.md` | Follow-on to PR #168 (Stop ADB when quitting): installer lease regression scope, the closed draft PRs #174–179, pinned Tauri exit limits (now `v2/HANDOFF.md`) | `git show ae0436e:v2/ADB-QUIT-HARDENING.md` |
Comment thread
bryanroscoe marked this conversation as resolved.
Resolved
| `v2/ATV-OPTIMIZER-ANDROID-PLAN.md` | Original M0–M6 plan for the Android app, written before the transport change (now `v2/mobile/HANDOFF.md`, `v2/mobile/BACKLOG.md`, `v2/mobile/BILLING-COMMAND-MATRIX.md`) | `git show f4e2513:v2/ATV-OPTIMIZER-ANDROID-PLAN.md` |
| `v2/mobile/ARCHITECTURE-REVIEW.md` | July 2026 mobile architecture review (F/T/B findings, all since addressed) (now `v2/mobile/HANDOFF.md`) | `git show 660ffb9:v2/mobile/ARCHITECTURE-REVIEW.md` |
| `v2/mobile/FEATURES.md` | July 2026 mobile screen ↔ command status matrix | `git show 4e054c1:v2/mobile/FEATURES.md` |
| `v2/mobile/CORRECTNESS-AUDIT-2026-09-05.md` | Nine-finding mobile correctness audit and its fix pass, all fixed | `git show 0be7312:v2/mobile/CORRECTNESS-AUDIT-2026-09-05.md` |
| `v2/mobile/FEEDBACK-UX-2026-09-07.md` | Pre-implementation UX brief for saved-TV identity, Unknown risk, app details and copy (now `v2/mobile/HANDOFF.md`) | `git show a015c8a:v2/mobile/FEEDBACK-UX-2026-09-07.md` |
| `v2/mobile/USER-FEEDBACK-2026-09-05.md` | First phone feedback list; items 1–6 shipped, item 7 became #105 (now `v2/mobile/LIFECYCLE-EVIDENCE.md`) | `git show a015c8a:v2/mobile/USER-FEEDBACK-2026-09-05.md` |
| `v2/mobile/UNKNOWN-DIAGNOSTICS-UX.md` | Pre-implementation contract for the unknown-app diagnostics collector, since shipped | `git show 0be7312:v2/mobile/UNKNOWN-DIAGNOSTICS-UX.md` |
| `v2/mobile/TRANSPORT-LICENSING-RESEARCH.md` | Research behind replacing the GPLv3 libadb-android transport with MIT `adb_client` (now `v2/mobile/HANDOFF.md` §2) | `git show a015c8a:v2/mobile/TRANSPORT-LICENSING-RESEARCH.md` |
| `v2/mobile/DEPENDENCY-REMEDIATION-20261016.md` | Receipt for the 2026-10-16 npm dependency audit and pruning (the desktop advisory is now in `v2/HANDOFF.md`) | `git show 1c3f2b1:v2/mobile/DEPENDENCY-REMEDIATION-20261016.md` |
| `v2/mobile/RELEASE-POLISH.md` | Mobile release-polish checklist with per-PR merge status (open items now in `v2/mobile/BACKLOG.md`) | `git show a9f07d7:v2/mobile/RELEASE-POLISH.md` |
| `v2/mobile/RELEASE-POLISH-RECEIPTS.md` | Per-PR review/CI/merge receipts for PRs #181–#204 and #206 | `git show a9f07d7:v2/mobile/RELEASE-POLISH-RECEIPTS.md` |

## Bulk material outside the repository

Some working material from the retired coordination tree was too large, too build-output-heavy, or
too internal to belong in the repository, but is worth keeping. It was **copied** (never moved) to a
Expand All @@ -16,7 +48,7 @@ last resort when you need to know *why* a merged change looks the way it does.
(665 entries, manifest sha256 `5155bf2996e453fca39ff5bc7f9985d01c9a85ceaf9582acccc4b63fcc00967b`).
Verify with `cd <archive> && shasum -a 256 -c MANIFEST-sha256.txt`.

## What is in it
### What is in it

- **`mayor-artifacts/`** — per-task briefs, acceptance contracts, source manifests and patches for
the changes that were merged into `main` in September 2026. Useful if you need the acceptance
Expand All @@ -25,8 +57,7 @@ Verify with `cd <archive> && shasum -a 256 -c MANIFEST-sha256.txt`.
screenshots and applied patches.

Both are heavy with internal process vocabulary from the retired tracker. The durable, readable
versions of this material are already in the repo:
[`RELEASE-DECISION-2026-09-09.md`](RELEASE-DECISION-2026-09-09.md),
versions of this material are the release decision packet listed above,
[`gastown-shield_optimizer-beads-export.json`](gastown-shield_optimizer-beads-export.json) and
[`../v2/mobile/evidence/`](../v2/mobile/evidence/).

Expand Down Expand Up @@ -74,7 +105,7 @@ versions of this material are already in the repo:
| `mayor-artifacts/shield-so-x02-launcher-correction` | 384K | 26 files |
| `mayor-artifacts/shield-so-x02-launcher-failures` | 296K | 19 files |

## Deliberately excluded from the copy
### Deliberately excluded from the copy

- Cargo `target/` trees and `node_modules/` (build output and dependency caches; ~26 MB, the bulk of
it one `rust-fixture` build directory).
Expand Down
28 changes: 0 additions & 28 deletions docs/DEVICE-LOGS-2026-10-08.md

This file was deleted.

Loading
Loading