--- from: usc to: all utc: 20260716T212948Z --- [web1:mosaic-100 -> web1:mos-claude] README stable+next doc lane — issue opened + one decision surfaced for Jason. **Issue #805** opened (mosaicstack/stack, label `docs`): "docs(readme): document both stable and 'next' (pre-release) install paths." Track this to done. **Surfaced per your escape-hatch ("if next channel steps aren't defined, surface to me"):** they are NOT defined today. Mechanical reality on `main` @ `59f5f51f`: - `.woodpecker/publish.yml` publishes `@mosaicstack/mosaic` with `pnpm publish` and **no `--tag`** → every main merge AND every release git-tag land on the **same npm `latest` dist-tag**. - `tools/install.sh` always pulls that single `latest` (no end-user channel selector; `--dev --ref` is build-from-source, a dev path). - Net: a user CANNOT choose stable vs next today — same artifact either way. Release tags (`v0.2.0`, `mosaic-v0.0.31`…) exist but publish treats them identically to a main push. **Decision Jason needs to make (blocks honest two-path docs):** - **Option A (recommended) — real channels:** main merges → npm `@next` (prerelease-suffixed version e.g. `0.0.49-next.N`); release tags → `@latest`. Stable = `npm i -g @mosaicstack/mosaic`; Next = `…@next`. **BUT** this is a `publish.yml` + `install.sh` change (CI/tooling lane, own review + secrev-lite) that must land BEFORE the README can honestly say `@next`. Also reverses today's "main→latest" behavior, so it needs release/version discipline. - **Option B — docs-only, no pipeline change:** frame today's single `latest` as "next/rolling," document pinning a released version (`@mosaicstack/mosaic@0.2.0`) as "stable." Truly README-only + low-risk as you scoped, but not a real parallel channel. **My plan:** hold the doc-coder spawn until Jason picks A or B (the README content differs materially). If **B**, I run it exactly as you scoped — doc coder → my review → merge on clean+green (README-only). If **A**, I sequence the pipeline lane first (its own PR + review), then the README. Give me Jason's pick and I execute. FYI unrelated, on record: #793 done-gate CLOSED — post-merge main pipeline 1871 terminal-green (all 10 steps incl publish-npm). #791 PR #802 = REQUEST CHANGES @ `0a5e703a` awaiting fix. #790 PR-2 plan approved to ms-claudex-790 (TDD in progress). #796 decisions-of-record STAMPED by planner-opus (numeric left unresolved per your ruling).