From f0afc4358c8984d81176db416528416a9aca771e Mon Sep 17 00:00:00 2001 From: Krystie Date: Mon, 20 Jul 2026 23:04:49 -0700 Subject: [PATCH] Claim DC-053 (Pro-gated share: public links + Tailscale-mediated) --- BACKLOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/BACKLOG.md b/BACKLOG.md index 71a60ea..402d56a 100644 --- a/BACKLOG.md +++ b/BACKLOG.md @@ -314,8 +314,8 @@ Sami explicitly stated he wants email auth as an OPTION alongside TOTP, not a re - **prerequisite:** DC-048 (shipped). ### DC-053: Public share links + Tailscale-mediated share — Pro-gated -- **status:** todo -- **owner:** unclaimed +- **status:** in-progress +- **owner:** hermes - **details:** Two new feature surfaces behind a Pro license check. (1) **Public share links** — `POST /api/v1/share` creates a signed URL (e.g. `https://status.sami/share/`) for a specific service + a TTL (1h/24h/7d). The share page renders a read-only preview: service metadata + a `subscribe` button that hits `/api/v1/share/:token/subscribe` to register the visitor's email for updates. (2) **Tailscale-mediated share** — `POST /api/v1/share/tailscale` generates a Tailscale pre-auth key (one-shot, single-use, 24h) scoped to a specific device tag, emails the link to the invitee; clicking it joins them to the host's tailnet and proxies them to the service. Both surfaces gated on `licenseManager.isPro()` (DC-052). UI: a "Share" button on each service card, modal with the two tabs. - **impact:** The killer Pro feature. "Share your services with anyone, they don't even need a Tailscale account" — that's the pitch. Without this, Pro has no upgrade pull. - **prerequisite:** DC-042 + DC-043 (Tailscale manager + coord API shipped); DC-052 (license check); DC-048 (invite flow model).