Skip to content

Latest commit

 

History

History
55 lines (53 loc) · 29.1 KB

backlog.md

File metadata and controls

55 lines (53 loc) · 29.1 KB

Website backlog

Canonical owner: this repository. The manifest collects these rows into the workspace’s agent-workplace goal. IDs persist; completion does not erase history.

ID Item Status Evidence / next action
SITE-001 Explain the composable agent workplace and every public product’s utility closed Deployment and live checks
SITE-002 Replace Switchboard’s browser-demo screenshot with a current native screenshot open Earlier handoff; use synthetic data and label the actual app/version
SITE-003 Propagate the next published product release to pages, manifests and facts open — versions, checksums and downloads are automatic since SITE-013; what remains is non-version facts (requirements, notarization, new features) Recurring release trigger; DOCMAP, owner release receipt required
SITE-004 Update Fabric’s MCP statement when its northbound entry ships blocked Fabric AR-3 prerequisite; current page truthfully says no MCP entry of its own
SITE-005 Reconcile remaining brand-lint interface registry advisories after semantic HTML extraction open Consumer audit; preserve proposed/agreed decisions, distinguish interface controls from marketing prose, and do not register paragraphs as labels merely to silence B022
SITE-006 Serve Fabric 0.3.0: point fabric/release.json at https://github.com/passioncode-ai/fabric/releases/download/v0.3.0/Fabric-0.3.0-arm64.dmg with the SHA-256 from that release's SHA256SUMS, then the page and the facts row in the same change (today the manifest serves fabric-v0.2.0 from this repository) closed Deployed 2026-10-04 (ee961bd): https://passioncode.ai/fabric/download/macos redirects to https://github.com/passioncode-ai/fabric/releases/download/v0.3.0/Fabric-0.3.0-arm64.dmg; the file served through the site has SHA-256 0ee87af8…952b21, equal to the release's SHA256SUMS; the page names 0.3.0
SITE-007 Name the current Project Observatory release on the site (it still named 0.13.0 after 0.14.0 shipped) closed d0f0275 (#35): page, card, facts and SCN-006 name 0.15.0, verified against the v0.15.0 sums and signature; live https://passioncode.ai/observatory/ reads "Latest release: 0.15.0" (curl, 2026-10-04)
SITE-008 Show the launcher install line on the Switchboard page once the launcher family lists the Switchboard plugin blocked by passioncode PC-02 Switchboard v0.4.0-beta.1 handoff: switchboard/release.json has launcherPlugin: false; when PC-02 lands, rerun node scripts/update-switchboard-release.mjs <selected tag>, check and deploy
SITE-009 The Inbox page update: important mail first, agents on project addresses open — branch agent/inbox-page-2026-09-28 (550da57, 1 commit not in main, 61 behind; no PR). Compare with the current Inbox page, which later releases changed, then rebase and open a PR or close it as superseded. Found by the 2026-10-04 branch sweep branch
SITE-010 The Switchboard 0.4 page preparation (license and copy fixes) closed — branch agent/switchboard-0.4-site (1ead099) is patch-identical to a commit already on main (git cherry reports it applied); the branch can be deleted by its author branch
SITE-011 Name Project Observatory 0.16.0 on the site after its release (2026-10-05) closed Page, card, facts and SCN-006 name 0.16.0, verified against the v0.16.0 sums (shasum -a 256 -c SHA256SUMS OK, equal to the GitHub asset digests), the organization signature (gpg --verify SHA256SUMS.asc good, key 63B3 0DC3 … C803 B6A7) and the notarized app (spctl "Notarized Developer ID"); deployed after merge
SITE-012 Onboarding into the ecosystem: vision (do what you love), how it works, personal / contribute / commercial paths, /start/ (roadmap RM-15) closed 2026-10-05 Production receipt
SITE-013 Always-current versions: live release snapshot at the edge, live downloads for every product, /api/releases, nightly drift job (RM-15; supersedes the manual half of SITE-003) closed 2026-10-05 — first production cron 14:00:37 UTC Production receipt
SITE-014 /business/ funnel and the commercial intake: form, estimate, D1-first storage, notification and receipt, Platform forward (RM-14) closed 2026-10-05 (live smoke lead: notify and receipt done); Platform forward connected 2026-10-06 (PLATFORM_URL https://api.passioncode.ai, PLATFORM_INTAKE_SECRET = the Platform's INTAKE_HMAC_SECRET from Project Observatory) DEPLOYMENT → Commercial enquiries
SITE-015 Replace assets/switchboard-demo.jpg (v0.3.1 browser demo) with the 0.6 synthetic screenshot fabric-switchboard publishes at docs/evidence/screenshots/accounts-0.6.png open — waiting on fabric-switchboard (promised in its 0.6.1 change) supersedes SITE-002
SITE-016 Link each product page to its OpenRouter app page once its attribution ships (roadmap RM-16; Observatory first, PR passioncode-ai/project-observatory-dashboard#166) open https://openrouter.ai/apps?url=https://passioncode.ai/<product>/
SITE-017 Dashboards 0.5.x page copy (overview, Spend, one entry per agent, updates) from branch agent/dashboards-0.5.3 once v0.5.4 is published; the version, checksum and download already follow releases automatically closed 2026-10-09 — superseded by SITE-022: /dashboards/#new describes the 0.6 releases (Spend limits, agent console, checked self-updates, estate updates, language) from the 0.6.0–0.6.5 CHANGELOG; the 0.5.3 branch is not merged dashboards/index.html #new; facts row "Dashboards role and status"
SITE-018 Keep /fabric/agents/ true to each Fabric release: move Kilo Code to "released" when the next Fabric ships it, move Codex or a planned agent up only with a new facts row, add each desktop app's local-hub entry when it is documented, and re-date the page open Task; facts row "Fabric coding agents" (review by 2026-11-05); scripts/check-site.mjs holds each agent at one level
SITE-019 The site in Russian on a generic language foundation: every page under /ru/, generated from English through catalogs; reciprocal hreflang, sitemap alternates, the header language switch; the /business/ form, its refusals and receipt in the form's language; a new language takes only a registry entry and catalogs (roadmap RM-25) closed 2026-10-08 — PR #68, deployed from main 4d5ca27 (Worker ff200b47), verify-live.py PASS with hreflang on every indexed page Production receipt, live.json; DEPLOYMENT → Languages
SITE-020 Align the home page's agent claims with /fabric/agents/: the FAQ says "Claude Code and Codex are supported today" (Fabric 0.3.2 connects Kilo Code and Hermes Agent too; Codex and Cline run without Fabric's tools) and the vision says "more agents, DeepSeek first" (DeepSeek Harness is case by case after five planned agents) closed 2026-10-09 — wording: "Claude Code, Kilo Code and Hermes Agent connect to Fabric today, Codex and Cline run inside it, and more are planned", linked to /fabric/agents/, on the home vision line, the home FAQ and the /business/ FAQ (and its JSON-LD); the DeepSeek line is gone index.html #vision and #faq, business/index.html #faq; facts row "Fabric coding agents"
SITE-021 The Russian home hero is six lines on a 1440 px screen (English: four): a faithful translation of "The agent-agnostic operating system for AI-native teams" is longer; decide a shorter faithful wording or a display size for long headlines closed 2026-10-09 — «Операционная система для любых агентов в AI-native командах» ("agent-agnostic" as "for any agents"): five lines at 1440 px (was six), five at 390 px; no display-size change i18n/ru/home.json; facts row "homepage hero"; browser check 2026-10-09
SITE-022 Content rework of 2026-10-09 (operator points): nav Vision · For you · For organizations · The tools · About; home two doors, the growth path (six labelled stages) and each tool's role in the family; the data FAQ names Fabric's anonymous counts; new /vision/ (sources with dates and the NANDA caveat, the harness, principles, the path with solo/team/department examples, today vs direction, trust, task-pipeline recommendation, CTAs); /start/ thesis, step 5 and the task-pipeline block; /business/ as the Enterprise page (organization path, 1 to 1000 people, PassionCode for Enterprise at offer level, trust block; estimate and form kept); family lines on every product page; Dashboards 0.6; facts, terminology, llms.txt and UX docs; all of it in Russian closed 2026-10-09 — PR #71 merged as af91350, deployed (Worker bff5575f), verify-live.py PASS (30 pages, en 15 + ru 15) HANDOFF, live.json; vision/index.html, i18n/ru/vision.json; scripts/check-site.mjs /vision/ block; SCN-020
SITE-023 The header navigation wraps to two rows in Russian at 390 px (five items; «Для организаций» is long): items no longer break inside, and anchors clear the taller header (scroll-margin-top 160 px); decide whether a one-row Russian header (shorter labels or a menu) is worth it closed 2026-10-12 by SITE-039 — at 620 px and below the navigation is one row in every language, scrolling sideways when longer than the screen, its right edge fading; the header is 115 px at 390 and 320 px (was 111–205 px) styles.css (layout pass of 2026-10-12); evidence
SITE-024 Inbox 0.13.0 is in the Inbox CHANGELOG (forwarding fixed, sender names, Ask AI, rules from the app) but has no GitHub release on 2026-10-09: when it is published, the release sync moves the version; the page copy and the facts row "Inbox role and status" then add its features open — waiting on the Inbox 0.13.0 release Inbox CHANGELOG
SITE-025 The site in ten languages (en, ru, de, fr, pl, ko, es, pt-br, zh-hans, ja) deployed, with the polish pass: one money convention per language (Intl, pinned by a test), the Polish ty register on /pl/business/, reworded link-adjacent fragments in ja/zh/ko, Korean particles attached to links, German/Polish headings hyphenated at 390 px closed 2026-10-10 — PR #78 and release-sync PR #73 merged (dbac409), deployed (Worker aa913d88), verify-live.py PASS (150 pages, 15 per language, hreflang on 130) HANDOFF, live.json; DEPLOYMENT → Languages
SITE-026 Native-speaker review of the generated languages, one reviewer per language: de, fr, pl, ko, es, pt-br, zh-hans, ja (ru was reviewed by the operator). Priorities: ja/zh/ko wording around links, the Observatory install step, the /business/ estimate text, the privacy page, pl register (ty), es/pt-br regional choices, German CLDR $ vs US$ open — fixes go in i18n/<code>/*.json, then npm run locales voice.md; DEPLOYMENT → Languages
SITE-027 A simpler, shorter site (operator, 2026-10-10): home after the unchanged hero (why, two doors, the tools, license line, three FAQs, the founder note), /vision/ (harness, four principles, six labelled stages), /business/ (PassionCode for Enterprise: machines, agents, routing, local model access, analytics, administration, signed custom builds; estimate and form kept), /start/ (five steps, about 450 words); English and Russian done closed — PR #80 merged as 30eb36b, deployed, verify-live.py PASS 2026-10-10 (receipt); native-speaker review stays SITE-026 HANDOFF; facts rows "founder", "Nicegram users", "vision", "commercial path"
SITE-028 Narrative, tone of voice, localization through our copy agent (en+ru native; seven languages from English; zh-Hans its own track), the product journey with real screenshots, and a home video (operator, 2026-10-10) open — released 2026-10-11 (PR #87 7ae4e16, Worker fb458c49, verify-live PASS): W1 narrative, W2 voice, W6 How it works, W7 en/ru, W8 seven languages from English, W9 zh-Hans by Chinese models; CJK heading line breaks released (PR #90); W5 re-scoped by the operator 2026-10-11 to sample-data mockups from the products' own test and demo interfaces (no demo macOS user) and released (PR #96 b603cf7, Worker a9e1c92c, verify-live PASS; capture record); left: W10 video, native review (SITE-026) — handoff plan; decisions D1–D4 with the operator
SITE-029 The short request and the agent prompt on /business/ (operator ON-1…ON-6, 2026-10-11): the form down to three fields; a copy-prompt for the visitor's coding agent that asks, shows the JSON and sends only after a yes; lead/2, the agent token, idempotency key and dry run in the Worker; ROI, CFO/CTO/CIO, limits as direction on /business/; ten languages closed — PR #99 merged as 9cbbe1d, deployed 2026-10-11 as Worker f29184cd-da31-4f62-853c-ff09b8350dba, verify-live.py PASS with the intake smoke in dry-run mode (receipt, evidence) SCN-014, SCN-022; narrative-org §8; facts rows "commercial path", "request intake"
SITE-030 Platform copy for releases synced on 2026-10-11: /inbox/ named only macOS (the facts row still called the Windows installer unsigned; 0.14.1 signs it); /observatory/ did not describe the Windows and Linux desktop app of 0.22.0; /dashboards/ meta and hero said "One Mac window" / "on your Mac"; found on the way: /switchboard/ still said its Windows build was not Authenticode-signed (0.6.16 signs it), the home tools list, llms.txt and README done 2026-10-11 — PR #102 merged as 6c9a39e, deployed from main: Worker version 706e5b19-148a-4461-bb86-7bb0fc5722a9, scripts/verify-live.py PASS. Ten languages (zh-Hans through the copy agent's write capability). Inbox 0.15.0 was published during the task and synced evidence and before/after; live.json; release v0.14.1; release v0.22.0; release v0.6.16
SITE-031 The Platform accepts lead/2 (the short request) closed 2026-10-14 — PR #126 merged (8ef429b) and deployed as Worker version 17dee85c-96f8-4bb0-bc52-e578f7e92b85 (2026-10-14 03:19 UTC, npm run deploy after npm run check and npm run build passed); the deployed script no longer carries the lead/2 wait. The one-time re-queue was not needed: production D1 held no lead rows at all (read-only count 2026-10-14 03:2x UTC) DEPLOYMENT.md; worker/leads.js storeLead; scripts/check-worker.mjs "the short form … forwarded (signed) like lead/1" (red 60/61 before the fix, 61/61 after; npm run check 114/114)
SITE-032 A Tone of Voice v2 without the ban on "ROI" (operator ON-1) done 2026-10-11 — saved as 1657e5b3… version 1 ("PassionCode.ai — site voice v2"): v1 minus the "ROI" ban plus the ON-1 rule; checks use it from now on. "Convert" stays banned and "adapt" preferred, as in v1 voice.md
SITE-033 /inbox/ for Fabric Inbox 0.15.x: the agent console beside the mail (Claude Code or Codex, a key per session), a coding agent that sets up the server and connects itself once allowed, mail the server could not take listed in the domain's settings closed 2026-10-11 — PR #107 merged as 2dbc9c3, deployed (Worker 3d735e87), verify-live.py PASS; "New in 0.15" after the hero, For agents in three steps, the 0.15.2 Mac update note, and /dashboards/ self-updates since 0.7.4, in ten languages evidence, live.json
SITE-034 The founders' story: home #about in Sergey Sheleg's first person with co-founder Serge Khurs, a short version on /business/, two founders in JSON-LD (operator 2026-10-11) done 2026-10-11 — PR #104 cb7a5d7, Worker 901dee65, verify-live PASS; open only: the Russian form of Serge Khurs's name to confirm evidence
SITE-035 Home video captions for pl, ko, pt-br, zh-hans, ja (W10 follow-up) done 2026-10-12 — PR #112 1ba1d23: home-{pl,ko,pt-br,zh-hans,ja}.vtt on home.vtt's cue timings, each page on its own track labelled in its language (pl, ko, pt-br, ja by hand; zh-Hans by the copy agent, $0.0518); copy checks 0 findings in all five; deployed from main, Worker 83ff5bef-6036-4450-9c7a-cc778a0043a6, verify-live.py PASS evidence; native-speaker review stays with SITE-026
SITE-036 Russian copy pass over every /ru/ page, the Worker's and scripts' messages and the agent prompt (operator 2026-10-12: «весь русский … надо пересмотреть — выглядит очень плохо»): calques, bureaucratic register, mixed English («AI-native», «синтетические демо-данные», «написанный пример»), dashes used as asides, agreement and word order; product terms per terminology.md and the products' own Russian dictionaries closed 2026-10-12 — PR #114 merged as 3100046, with PR #115 (38a6623, releases:sync: launcher 0.1.39, adapter 0.15.0) deployed from main as Worker 44c232ef-e2ab-4955-b65e-dfa3fb4b2841, verify-live.py PASS; 340 of 1385 catalog strings in 18 catalogs; Russian hero «Операционная система для команд с любыми ИИ-агентами» (facts row homepage hero, same five lines as SITE-021) evidence; webkit.json; live.json; webkit-live.json
SITE-037 At 390 px two Russian h1 overflow the viewport by one long word: /ru/fabric/agents/ («программирования,», page 450 px wide) and /ru/privacy/ («конфиденциальности», 417 px); present on main before SITE-036, English is not affected closed 2026-10-12 by SITE-039 — Russian h1–h3 hyphenate at 620 px and below, at least four letters on each side of the break; a break-word safety net on every heading; WebKit at 390 and 320 px: no page wider than the screen evidence; webkit-audit.json
SITE-038 The Worker cut a field by UTF-16 unit, so a cut inside an emoji left a lone surrogate (platform PLAT-027); run the Platform's golden vectors (HMAC v1, the email list) here too closed 2026-10-12 — PR #117 merged as ed93b2a, deployed from main as Worker 6fe71891-52b5-4327-b9f2-162684240779; npm run check 114/114; live intake checks pass; verify-live.py FAIL only on the 77 version-bearing pages and download routes (release snapshot ahead of the sources: SITE-003, PR #88) evidence; live.json
SITE-039 The home video near the top (operator 2026-10-12, paraphrased: the video is good, move it near the top), a layout pass over the whole site (15 pages × 10 languages × 1440/1024/768/390/320 px in WebKit) and the copy questions left from SITE-036 closed 2026-10-12 — merged as #119 (0b3ded7); deployed first as Worker ad315025, where verify-live.py failed 77 of 257 checks because the source release snapshot lagged the live one (SITE-003); after the release sync #121 (c437e8a) deployed as Worker 118501e5, and verify-live.py passes 257 of 257 (live.json). The player directly under the hero in every language (top at 935 px instead of 3507 px on / at 1440); 73 → 0 loads wider than the screen (SITE-037, the 320 px header, /start/ steps, the agents table); one-row phone navigation (SITE-023); Safari header blur; 44 px header controls; the 404 page's "For companies" → "For organizations"; dash asides in two English FAQs and their translations; stale registry rows; brand lint 185 → 165 errors evidence; live check
SITE-040 Layout follow-ups from SITE-039 that are design decisions: (a) at 1440 × 900 the hero fills the first screen, so the video starts just under the fold (935 px) — a compact hero, or the video as the hero's companion at wide widths; (b) the six journey-step links are 20 px tall (they pass WCAG 2.2 2.5.8 by its spacing exception; larger targets would be kinder); (c) step 01's launcher command breaks inside the package name at 1024 px open — design decision evidence
SITE-041 Brand pack gaps the copy cannot close by itself: no Russian term for "AI-native", "agent harness" or "claims" in terminology; no docs/brand/locales/ file for ru, de or fr (lint B070: address form, humor level, length coefficient); 160 numbers in the public copy without a facts row (B030, most of them one number repeated per language) open — the terms and the locale profiles are the operator's decision; B030 needs either facts rows or a lint scope for repeated numbers super-ux brand_lint.py docs/brand, evidence
SITE-042 /start/ leads with one command — npx --yes @passioncode-ai/passioncode@latest setup, which sets up a new computer or checks and repairs an existing one — and a copy-prompt for Claude Code or Codex, in all 10 languages; the five manual steps stay as the fallback (operator 2026-10-13; launcher 0.2.0, PC-37) closed 2026-10-13 — #127 (47505f2), deployed as Worker 409fd8dc after launcher 0.2.0 was on npm; verify-live.py failed 54 of 257 checks because the source release snapshot lagged the live one, so #128 (0016bdd) ran npm run releases:sync (launcher 0.2.0, Switchboard 0.6.28, Inbox 0.16.3, Dashboards 0.7.8, adapter 0.29.0); deployed as Worker 5e899c48, verify-live.py 257 of 257 live check
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, live check, WebKit
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, live check, WebKit
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, live check
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, live check; 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 closed 2026-10-15 — #142 merged as 52d8c1a; deployed from main as Worker version 1d762e44-8e28-4af1-9e1c-2464417a2337; verify-live.py PASS, 263 of 263 checks, 13 download routes evidence, live check
SITE-048 Headings whose second half is emphasised kept the English space at the join in Chinese and Japanese: zh-hans /start/ read "从一台空白的电脑 到你的第一个智能体" (also /404, /business/thanks/, ja /start/, /404; inline <em>/<strong> in /fabric/, /switchboard/, /vision/, /business/, /inbox/). Drop the space at an emphasis join between CJK characters in the generator (tightenCjk, scripts/locales.mjs), keep it in Korean and the spaced languages; a test pins it for every generated zh-hans and ja page closed 2026-10-15 — #144 merged as b1059ce; deployed from main as Worker version 54b43572-c501-4ed2-8c92-b0d1c76e1fc6; verify-live.py PASS, 263 of 263 checks, 13 download routes evidence, live check