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
25 changes: 25 additions & 0 deletions docs/HANDOFF.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,28 @@
# Current handoff — SITE-046: Fabric's Windows and Linux downloads on /fabric/ — live, 2026-10-15

Objective (backlog SITE-046): Fabric 0.3.5 ships Windows (x64, arm64 setup.exe) and Linux (x64, arm64 .deb and
AppImage) builds; /fabric/ offered only the DMG. Record: [evidence/2026-10-15-site-046/README.md](evidence/2026-10-15-site-046/README.md).

Done: `releases/products.json` names Fabric's seven assets; the Worker's download route takes hyphenated platforms;
`mergeSnapshots` keeps the union of assets for the same tag (a D1 snapshot stored before a policy change cannot hide a
new route); /fabric/ in ten languages has macOS, Windows and Linux cards, per-system requirements (Docker Desktop or
OrbStack on macOS, Docker Desktop with WSL2 and `scoop install supabase` on Windows, Docker Engine on Linux, the
Supabase CLI everywhere) and the Windows/Linux limits; no OS detection (no product page has one). Facts rows *Fabric
release* and *CEO name and status*, SCN-007, the /fabric/ screen, strings, DEPLOYMENT, `llms.txt`, check-site and
`_checks.json`. `releases:sync` also moved Switchboard to 0.6.33 and the launcher to 0.2.5.

Checks run: `npm run check` exit 0, `npm run build` 224 entries, `npm run locales -- --check` PASS, local Worker routes
302, WebKit 1440/390 on en/ru/ja/de (no overflow, no page errors), CI `check` on #140.

Shipped: #140 merged as `991691b`; deployed as Worker version `2c9d1f94-d81b-412c-804e-ba3f95e9e7de`;
`scripts/verify-live.py` PASS, 263 checks, 13 download routes ([live.json](evidence/2026-10-15-site-046/live.json)).

Open: SITE-047 (/start/ still says "Fabric needs macOS"; what is true depends on whether the launcher's `setup`
installs Fabric on Windows and Linux); the facts row *Switchboard release* still names 0.6.16 while the site serves
0.6.33 (SITE-003); SITE-040, SITE-041, SITE-026 as before.

Next task: SITE-047, then SITE-040.

# Current handoff — SITE-045: one door to setup, Fabric as the home, the About notes — live, 2026-10-15

Objective (operator decisions D1–D4, given in chat 2026-10-14): keep the site small and make one door to start —
Expand Down
2 changes: 1 addition & 1 deletion docs/backlog.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,5 +50,5 @@ rows into the workspace’s agent-workplace goal. IDs persist; completion does n
| SITE-043 | Home video v2: a denser, branded explainer with music under the hero — the problem, the promise, the values, the one command, Fabric, the coding agent's plan, the four tools, agents sharing a project, the organization offer and the vision; English 86.5 s and Russian 90.2 s cuts, captions in all 10 languages (operator 2026-10-12; replaces the SITE-028 W10 cut) | closed 2026-10-14 — #130 (`dc72841`): narration, music, renders and transcriptions through Asset Foundry ($0.87 delivered, $0.42 more for a cancelled over-length narration), captions timed on each cut's transcription, page label and caption line in ten languages, facts and scenarios updated; deployed as Worker version `fd54e0c3`; `verify-live.py` failed 43 of 257 checks because the release snapshot moved, so #131 (`430dbc2`) ran `npm run releases:sync` (Switchboard 0.6.30, Dashboards 0.7.9, adapter 0.31.0, launcher 0.2.1); deployed as Worker version `db355bef` (deployment `1ff877fa`), `verify-live.py` 257 of 257; the live `home.mp4` is byte-identical to the source (SHA-256 `17453592…`) | [record](video/2026-10-12-home-v2/README.md), [live check](evidence/2026-10-14-site-043/live.json), [WebKit](video/2026-10-12-home-v2/visual.json) |
| SITE-044 | Home video v3: the start beat types the /start/ command (`npx @passioncode-ai/passioncode@latest setup`) and says it sets up Fabric, the tools around it and the skills, and that your coding agent can run it; a bridge says each tool works with Fabric and on its own; the Together line reads "Agents connected to Fabric share one project's board, memory and hand-offs" (facts row *Fabric coding agents*); en and ru re-voiced, captions in all 10 languages re-timed (operator 2026-10-14) | closed 2026-10-14 — #134 (`e24e323`): en 91.63 s and ru 97.97 s cuts through Asset Foundry ($0.43 new: narration en $0.199, ru $0.212, four transcriptions $0.023; renders $0; v2 music reused), cue times measured on the narration transcripts, every cue within 0.02 s of the cut transcripts, facts row *Home video* under the lease; #135 (`c6dbe96`) `npm run releases:sync` (Switchboard 0.6.31, Inbox 0.17.0, adapter 0.32.0, launcher 0.2.2) before the deploy; deployed as Worker version `def2748f` (deployment `f39caf74`), `verify-live.py` 257 of 257; the live `home.mp4` matches the source (SHA-256 `c7847ca7…`) | [record](video/2026-10-12-home-v2/README.md#v3-2026-10-14-re-voiced-and-re-rendered), [live check](evidence/2026-10-14-site-044/live.json), [WebKit](video/2026-10-12-home-v2/visual.json) |
| SITE-045 | One door to setup and Fabric as the home (operator D1–D4, 2026-10-14): the home H1 with one subline; `setup` (not `update`) wherever a visitor starts; header "Set up ↓" → /start/#setup on every page; /start/ command and copy-prompt side by side, manual downloads folded, task-pipeline on /vision/; home #products Fabric first, no launcher card; /fabric/ #works-with and SoftwareApplication data; /fabric/agents/ at Fabric 0.3.5; /business/ one hero action, admin line, size line; /#about notes for investors, contributors and press; the home video's transcript and VideoObject written from its files; ten languages | closed 2026-10-15 — #137 merged as `6729661`; #138 (`9719852`, `releases:sync`: Switchboard 0.6.32, launcher 0.2.4) so the source snapshot matched the live one; deployed from `main` as Worker version `8f40f4bd-db81-4546-967f-9a0f560c60d1`; `verify-live.py` PASS, 257 of 257 | [evidence](evidence/2026-10-14-site-045/README.md), [live check](evidence/2026-10-14-site-045/live.json) |
| SITE-046 | Fabric 0.3.5 ships Windows (x64, arm64, Authenticode-signed) and Linux (AppImage, .deb) builds; /fabric/ and /fabric/download/ still offer only the Mac build ("the download page on passioncode.ai offers the Mac build until its own change", v0.3.5 notes); add the Windows and Linux downloads, requirements (Docker Desktop with WSL2 / Docker Engine, Supabase CLI) and limits (signed-in state not read, CO-244; Observatory secret connect on Windows, CO-245), and the facts rows | open — found in SITE-045 | [v0.3.5 release](https://github.com/passioncode-ai/fabric/releases/tag/v0.3.5) |
| SITE-046 | Fabric 0.3.5 ships Windows (x64, arm64, Authenticode-signed) and Linux (AppImage, .deb) builds; /fabric/ and /fabric/download/ still offer only the Mac build ("the download page on passioncode.ai offers the Mac build until its own change", v0.3.5 notes); add the Windows and Linux downloads, requirements (Docker Desktop with WSL2 / Docker Engine, Supabase CLI) and limits (signed-in state not read, CO-244; Observatory secret connect on Windows, CO-245), and the facts rows | closed 2026-10-15 — #140 merged as `991691b`; deployed from `main` as Worker version `2c9d1f94-d81b-412c-804e-ba3f95e9e7de`; `verify-live.py` PASS, 263 of 263 checks, 13 download routes (the seven Fabric routes 302 to the v0.3.5 assets) | [evidence](evidence/2026-10-15-site-046/README.md), [live check](evidence/2026-10-15-site-046/live.json); follow-up SITE-047 |
| SITE-047 | Found in SITE-046: /start/ still says "Fabric needs macOS on Apple silicon or Intel" (hero caption) and SCN-020's preconditions say the same, now that Fabric 0.3.5 ships Windows and Linux builds. What is true depends on the launcher: whether `setup` installs Fabric on Windows and Linux (launcher README names no platform for it). Read the launcher's code at its released tag, then say on /start/ (ten languages) and in `llms.txt` which systems the one command sets Fabric up on, and that the Windows and Linux builds are on /fabric/#download | open — found in SITE-046 | [/start/ hero caption](../start/index.html); [launcher](https://github.com/passioncode-ai/passioncode) |
9 changes: 9 additions & 0 deletions docs/evidence/2026-10-15-site-046/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,3 +43,12 @@ download page on passioncode.ai offers the Mac build until its own change"; this
`/de/fabric/` at 1440 and 390 px: no horizontal overflow, nothing past the viewport in #download, seven download
links, two columns at 1440 and one at 390, no page errors ([webkit.json](webkit.json),
[webkit-check.cjs](webkit-check.cjs)).

## Shipped

PR #140 merged as `991691b` (CI `check` passed); `npm run releases:check` on `main` PASS. Deployed from `main` with
`npm run deploy` as Worker version `2c9d1f94-d81b-412c-804e-ba3f95e9e7de`. `scripts/verify-live.py` PASS, 263 of 263
checks: 224 assets (150 pages, 15 in each of ten languages), 13 download routes — `/fabric/download/macos`,
`windows-x64`, `windows-arm64`, `linux-x64-deb`, `linux-arm64-deb`, `linux-x64-appimage` and `linux-arm64-appimage`
each 302 to the v0.3.5 asset right after the deploy — 23 not-found addresses and the intake in dry-run mode
([live.json](live.json)).
Loading
Loading