docs: beta program mechanics (B1) — BETA.md, issue templates, README pointer - #75
Conversation
…pointer A stranger can now join the beta from the README alone: BETA.md states what's merged so far (U1-U3, R1-R3, N1), the honest known gaps (no published passkey/browser matrix, no published NAT numbers, no audit commissioned or completed yet), and how to install, pair, and report a problem. Two GitHub issue forms (bug report, beta feedback) both ask for mir doctor output, platform, and browser/CLI version. README gets one short Beta section near the top linking BETA.md; the pinned Install section is untouched. Checked .goreleaser.yaml: `prerelease: auto` already marks a v0.8.0-beta.1 tag as a GitHub prerelease from its semver suffix, and the release workflow triggers on any `v*` tag, so no goreleaser change is needed for a beta tag. Closes #74 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KeiotDVE94wEzvc7wcvm1y
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7570105dcb
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ```bash | ||
| curl -fsSL https://raw.githubusercontent.com/srcfl/miranda/main/install.sh | sh | ||
| ``` |
There was a problem hiding this comment.
Document cosign before the beta install command
On systems without cosign—which includes most fresh beta machines—this advertised one-line install always exits before installing anything: install.sh calls verify_checksums_sig, which explicitly fails when cosign is absent. The README mentions this prerequisite, but BETA.md presents the command before directing readers there, so the primary beta onboarding path fails unexpectedly; state how to install cosign before this command or link to the prerequisites first.
Useful? React with 👍 / 👎.
| Run `mir doctor` on the affected machine and paste the output. It | ||
| checks state permissions, keychain reference, tmux, signed | ||
| revocations, and relay health, and does not print private material. |
There was a problem hiding this comment.
Warn users to redact doctor output before posting
In failure scenarios, mir doctor can print full local state paths and relay URLs/network errors, while healthy output includes prefixes of the owner and machine IDs (doctor.go lines 73, 111, 123, 175, and 219–232). Because this required field is submitted to a public issue, assuring users that it contains no private material can expose usernames, internal hosts, addresses, or identifiers; either redact those values in the command or tell reporters to review and redact the output before posting.
Useful? React with 👍 / 👎.


Summary
BETA.mdat the repo root: one-paragraph description, an honest "what works today" list scoped to what's actually merged (U1mir uppairs inline, U2 tmux bootstrap, U3 SPA empty state, R1 reconnect < 3s + status pill, R2 warm multi-machine SPA, R3 instant tmux window strip, N1 machine rename) plus baseline v0.7 features from README/SECURITY.md, a "known gaps" list (no published passkey/browser matrix, no published NAT numbers, no audit commissioned or completed yet, thin machine-retirement copy, unfinished failure-message audit, no telemetry), install/join steps, and how to report a problem (mir doctoroutput, platform, browser/CLI version)..github/ISSUE_TEMPLATE/bug_report.ymland.github/ISSUE_TEMPLATE/beta_feedback.yml: GitHub issue forms..github/ISSUE_TEMPLATE/didn't exist before this PR. Both ask for platform, browser/CLI version, andmir doctoroutput; bug report also asks what was attempted/happened/expected, beta feedback asks where it felt slow or confusing.README.md: one short "## Beta" section right after the hero/demo GIF, linkingBETA.md. The pinned## Installsection (guarded byweb/test/empty-state.test.js) is untouched — verified the section boundaries and reran the test..goreleaser.yaml: read only, not changed.release.prerelease: autoalready marks av0.8.0-beta.1tag as a GitHub prerelease from its semver-beta.1suffix, and.github/workflows/release.ymltriggers on anyv*tag push, so a beta tag needs no goreleaser change.All claims in BETA.md are checked against merged code and the v0.8 beta UX roadmap (
docs/superpowers/plans/2026-08-29-v0.8-beta-ux-roadmap.md) — nothing claims a slice that hasn't landed (N2, N3, P1, P2, P3, B2 are explicitly called out as not done).Closes #74
Test plan
cd go && go test ./...— all packages passcd web && npm ci && npm test— 141/141 pass, includingweb/test/empty-state.test.js(the README Install-section pin)goreleaser checkon.goreleaser.yaml— config validdocs/audit-scope.mdhas no commissioning record), so BETA.md doesn't overclaim🤖 Generated with Claude Code
https://claude.ai/code/session_01KeiotDVE94wEzvc7wcvm1y
Note
Low Risk
Documentation and GitHub issue templates only; no runtime, auth, or release pipeline changes.
Overview
Introduces public beta mechanics so testers know what to expect and how to report issues.
Adds root
BETA.mdwith a short product pitch, an explicit “what works today” list aligned to shipped UX, an honest known gaps section (passkey/browser matrix, NAT numbers, no audit yet, thin revocation copy, incomplete error copy, no telemetry), install/mir upjoin steps, and links to Bug report vs Beta feedback issue types.Creates
.github/ISSUE_TEMPLATE/for the first time with two GitHub issue forms:bug_report.yml(buglabel, requiredmir doctor, steps/actual/expected) andbeta_feedback.yml(beta-feedbacklabel, friction-focused fields, optionalmir doctor). Both point readers atBETA.mdand distinguish security reporting viaSECURITY.md.Updates
README.mdwith a new ## Beta section after the demo GIF that links toBETA.md; the pinned ## Install block is unchanged.Reviewed by Cursor Bugbot for commit 7570105. Bugbot is set up for automated code reviews on this repo. Configure here.