Files
relicario/docs/superpowers/reviews/2026-06-20-product-audit.md
adlee-was-taken 9b38aac188 docs(specs): v0.9.0 design — extension org GUI + pluggable second factor
Product audit (product-expert skill) recommended two priority items; this
lands the audit record plus the two approved design specs that will drive
the v0.9.0 multi-agent train.

- reviews/2026-06-20-product-audit.md — the roadmap audit (reality check,
  recommendations, PM brief) that drove the two items.
- specs/2026-06-20-extension-org-gui-design.md — bring the org vault to the
  extension at read+write parity. Org write is gated on a Day-1 signing
  spike (the org hook rejects unsigned commits; the extension pushes
  unsigned today; sign_for_git exists in WASM but is unused). Spike-fail
  degrades to read-only + write follow-up.
- specs/2026-06-20-pluggable-second-factor-design.md — key file as an
  alternative second factor (same 32-byte secret, same KDF; crypto-light),
  chosen at setup via a non-secret params hint, plus the positioning pivot.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VQbgrP6KQW5pibjbPEoTSs
2026-06-20 23:01:53 -04:00

7.2 KiB

Product Audit — Relicario — 2026-06-20 · fast

Generated by the product-expert skill (roadmap audit, fast mode). Competitive read grounded in references/competitive-landscape.md (last-reviewed 2026-06-20). Advisory only — record of what was considered, not a commitment.

Reality check

v0.8.1 tagged today: relicario org add/edit now covers all 7 item types with collection-scoped, grant-enforced attachments — sitting on the cryptographically serious v0.8.0 org backend (ECIES per-member key wrap, signature-verifying pre-receive hook). The personal vault is genuinely complete with full CLI↔extension parity. But the defining reality is an asymmetry: Relicario has now built an entire enterprise org vault that cannot be touched from a browser — the extension has zero org concept. The biggest recent investment has no GUI surface. No lift is currently active.

Drift found (low severity, but catching it is this skill's job):

  • STATUS.md:7 — "Last release tagged: v0.6.0". Stale: v0.8.0 and v0.8.1 are both tagged (git tag; release commit 2fa4d68).
  • STATUS.md:8 + ROADMAP.md:10 — "tag pending PM". Stale: the v0.8.1 tag is cut.
  • docs/user_docs/ (12-page end-user guide) merged as a fast-follow after the tag — fine, just not inside the v0.8.1 tag.

Assessment

Strengths: the wedge sits in a near-empty competitive cell — two factors into the KDF + self-host + zero server metadata + git audit log (1Password has the 2-factor KDF but is cloud-only; vaultwarden self-hosts but is single-factor KDF). Personal vault is complete. Org backend is real cryptographic work, now feature-broad.

Gaps: (1) the org vault is invisible in the GUI — extension has no org read or write; the whole enterprise feature is stranded behind the CLI (rated critical; traces to docs/superpowers/specs/2026-06-20-extension-cli-parity-gap-analysis.md). (2) Personal-side parity holes that make a "parity-is-a-design-value" product feel unfinished — favorites (no UI on either surface), group/tag editing only on some forms, and autofill matching by exact hostname (so www.github.com misses a login saved as github.com). (3) The pitch leads with steganography — the most friction-heavy, least load-bearing part of the wedge.

Risks: mobile absence caps total addressable market — but for Relicario's self-selected desktop/CLI audience that's a ceiling, not a bleeding wound, and treating it as an emergency would import mass-market logic that doesn't fit this product. The sharper risk is that a GUI-less org vault only ever reaches CLI-native shops — a fraction of the market the org spec implies — stranding the investment.

Recommendations (leverage-ordered)

  1. REORDER — Put a GUI on the org vault you already built: extension org read next, then write. Why: the v0.8.0+v0.8.1 backend is stranded without it; "unlock value already built" is the highest-ROI class of move; it's already roadmap item #1, and CLI reached all-7-type org write in v0.8.1 so the write path is unblocked. Outranks the command palette and personal-parity polish. Impact/Effort: H / M. Risk: browser GitHost has no commit-signing path, so write is harder than read — ship read first as its own slice. Refinement: scope to org item usage (read/add/edit a shared credential), NOT admin ops (member/key management staying CLI-only is a legitimate design choice; item usage being CLI-only is not).

  2. PIVOT (positioning) — Re-lead with the thesis, demote stego to an option. Why: the most important thing the roadmap doesn't mention. A plain key file delivers the identical 256-bit second factor; stego's only marginal benefit is the niche "dead-drop on social media" story, while it carries the most unlock friction and a SPOF the project already had to paper over with the recovery-QR. The README leads with the gimmick and buries the moat. Impact/Effort: H / L (messaging; keep the feature). Risk: stego is the product's identity — keep it first-class-optional, don't delete it. Adjacent thesis-level call: offering a plain key file as an alternative second factor would lower onboarding friction for users who find "hide a secret in a JPEG" too weird — a real ADD candidate, not just messaging.

  3. ADD (cheap, high-ROI) — Autofill matches by registrable domain (eTLD+1), not exact hostname. Why: exact-equality silently fails on the most common case (www. vs apex), making the extension feel broken; small, contained fix. Impact/Effort: M / L. Risk: use a public-suffix list to avoid over-matching.

  4. ADD — Close the personal parity holes: favorites UI + group/tag editing on every item-type form. Why: CLI↔extension parity is a stated design value; family/individual users organize by exactly these. Impact/Effort: M / M.

  5. REORDER (defer) — Keep org phase-2 (SSO/LDAP, read audit, per-collection subkeys, HTTP plane) parked behind extension org parity. Why: high-effort, no demand, pointless while the org feature has no GUI. Impact/Effort: M / H.

  6. CUT (future investment, not deletion) — Stop deepening the over-served areas: no more stego-robustness work, no recovery-QR elaboration, leave field-history's knobs alone. Don't remove working features — just stop investing in them.

  7. Housekeeping — sync STATUS.md and ROADMAP.md:10 to reflect v0.8.1 as tagged. Five minutes; it's the exact drift this audit exists to catch.

On mobile & v1.0: mobile is the single biggest TAM ceiling, but a high-effort, post-v1.0 bet that partly contradicts the desktop/CLI shape of the product — a separate-product-scale investment, not the next move. Frame v1.0 = the thesis, fully usable on the surfaces you already support: extension org parity + personal parity holes closed + positioning sharpened. Mobile is a v1.x conversation.

PM brief

## PRODUCT DIRECTIVE TO PM
Time: 2026-06-20 (local)
Source: /product-expert roadmap audit (fast)

Reality note: v0.8.1 is TAGGED (org item-type parity). The org vault backend is
fully shipped but has ZERO extension GUI — the whole enterprise feature is
CLI-only. STATUS.md still says "Last release tagged: v0.6.0" and "tag pending PM";
sync those (5-min housekeeping) before anything else.

Roadmap changes (priority order):
1. REORDER — extension org READ (org switch + collection-filtered browse) is the
   next slice; org WRITE follows as its own slice. Scope to item usage, not admin
   ops. This outranks the command palette and personal-parity polish.
2. PIVOT (positioning) — re-lead messaging with "two secrets into the KDF +
   self-host + zero server metadata + git audit"; present the stego image as an
   optional second-factor flavor, not the headline. Keep the feature.
3. ADD — autofill: match by registrable domain (eTLD+1), not exact hostname.
4. ADD — favorites UI + group/tag editing across all item-type forms (parity).

Recommended next slice: extension org READ (H impact / M effort — puts a usable
face on the backend you already paid for).

Out of scope / do NOT pick up: org phase-2 (SSO/LDAP, read audit, per-collection
subkeys) until org has a GUI; further stego/recovery-QR hardening; mobile (post-v1.0).