Skip to content

Steam MVP scope

Purpose of this document: Convert the Steam release roadmap into concrete feature lists and pass/fail gates for each release stage. This is the “definition of done” companion to STEAM_ROADMAP.md (principles and release train) and publishing/STEAM_COMPLIANCE_AND_RISK_REGISTER.md (risks and mitigations).


A build qualifies as the minimum Steam playable release when every item below is present and passing. These are not stretch goals — they are the floor. A missing item is a blocker, not a deferral.

#FeatureAcceptance criterion
F-01One-click desktop launchA clean-install player can run the installer, complete first-run setup, and reach the home screen without any CLI steps. No terminal, no pip install, no ./scripts/ required.
F-02First-run model setupThe Model Manager wizard guides the player through selecting and downloading a starter model. All six mandatory disclosure fields (name, source, license, size, SHA-256, destination path) are visible before the Download button is active.
F-03At least one polished text scenarioAt least one scenario from the official packs produces a coherent NPC conversation, state transitions, and a scored debrief within normal latency bounds (≤ 60 s per turn on the reference hardware defined in the release checklist).
F-04Four official packsAll four official packs — Job Interview Basics, Everyday Negotiation, Language Café, Difficult Conversations — are pre-installed and selectable without additional setup or download.
F-05Complete debrief loopEvery session can be ended by the player and produces a debrief screen with rubric scores and an export option. A session with zero scored turns must still produce a debrief (not an error).
F-06Privacy controlsThe Settings UI exposes: transcript history view, one-click clear of all saved session history (deleting stored sessions, e.g. via DELETE /api/sessions/{id} per session), and a displayed local data-path (~/.convsim/). The player must be able to delete all session data without touching the filesystem manually.
F-07No network requirement during installed playThe offline smoke test passes from the installed app binary (not the source checkout) on all three target platforms. No DNS lookup, TCP connection, or HTTP request occurs during a play session.

Features not required for the minimum playable release

Section titled “Features not required for the minimum playable release”

The following are not required for the minimum Steam playable release. They are either targeted optional features (see next section) or explicitly post-launch.

  • Voice input (Whisper STT)
  • Voice output (Kokoro / sherpa-onnx TTS)
  • Steam Cloud sync
  • Achievements, stats, or rich presence
  • Steam Deck Verified tier
  • Community pack browser or in-app pack distribution
  • Workbench or creator tools visible to regular players

These features are targeted for the public Steam release (Stage 4) but do not block the minimum playable release gate. If a feature is not ready when the public release decision is made, it ships as a post-launch update — not as a hold on the release.

FeatureTarget stageNotes
Local STT — Whisper.cpp voice inputStage 4 (public release)Tested in CI via the voice-unavailable fallback path (test_voice_smoke.py -k fallback). The full voice path requires the whisper.cpp runtime sidecar. Voice input is opt-in; its absence does not break text mode.
Local TTS — Kokoro / sherpa-onnx voice outputStage 4 (public release)Same fallback path as STT. TTS is opt-in; its absence does not break text mode. NPC responses still display as text.
Steam Cloud sync for non-sensitive settingsStage 4 (public release)Sync scope: display preferences, last-used model ID, UI layout state. Transcripts, model weights, audio files, and session history must never sync to Steam Cloud.
Steam achievements, stats, and rich presenceStage 4 (public release)Achievement progress is tracked locally. Nothing is transmitted unless the player interacts with the Steam overlay. Achievement definitions must not require telemetry or any outbound call during play.
Steam Deck Verified tierStage 4 (public release)Verification checklist is in STEAM_ROADMAP.md — Steam Deck verification checklist. Valve has final say; meeting all checklist items makes approval likely but does not guarantee it.

Each release stage has a concrete set of gates. A stage is open only when all required gates show PASS. A gate that cannot be fully automated must have a named owner and a sign-off date before the stage is declared open.

Automated gates are run by CI on every commit. Manual gates are run by the platform or content team against a release candidate build.

Entry criterion: GitHub MVP (ROADMAP.md Milestone 1 items all checked off) is tagged.

Gate IDGateMethodPass criterion
G2-01Local-only smokeCI + manualnode packages/convsim-cli/dist/index.js offline-smoke-test packs/official/job-interview-basic exits 0 when run from the installed app directory (not the source checkout). No outbound TCP connection detected during the scripted session. Verified on all three target platforms (Windows, macOS, Linux).
G2-02Pack validationCIAll four official packs pass convsim validate-pack with zero errors and zero warnings, using the pack validator binary from the installed app.
G2-03Structured-output safetyCISafety policy unit tests pass (services/convsim-core/tests/test_safety_policy_service.py). At least one synthetic adversarial input (content category: nsfw_sexual_content) is rejected at the input router before reaching the NPC runtime. Global non-overridable rules (minors_romantic_or_sexual, self_harm_crisis) cannot be disabled by any pack configuration.
G2-04Platform packagingCI + manualInstaller builds successfully on Windows (NSIS), macOS (DMG), and Linux (AppImage or Flatpak). Installer completes on a clean OS image without pre-installing Python, Node.js, or any development dependency.
G2-05One-click launchManualA tester with no prior knowledge of the project reaches a running text session using only the installer, the Model Manager wizard, and in-app prompts. No documentation, terminal, or file-manager navigation is required.

Entry criterion: Stage 2 gate fully passed and signed off. Steam page draft approved by Valve for private access.

Gate IDGateMethodPass criterion
G3-01Signing and notarizationManualmacOS DMG is notarised with an Apple Developer ID certificate; Gatekeeper passes on a clean macOS install without any security bypass. Windows installer is code-signed with an EV certificate; SmartScreen does not block installation on a clean Windows install.
G3-02Steam depot content auditManualSteam depot manifest contains no .gguf, .bin, or .safetensors model-weight files. No model download is triggered during Steam depot installation. Matches checklist item SR-08 in the compliance register.
G3-03Steam overlay compatibilityManual (beta testers)Steam overlay (Shift+Tab) opens and closes without breaking the app or the current session. Push-to-talk key (if voice is enabled) does not conflict with Steam overlay defaults (F12 screenshot, Shift+Tab overlay).
G3-04Release-blocking risks resolvedManualAll risks marked Release-blocking: YES in STEAM_COMPLIANCE_AND_RISK_REGISTER.md show status MITIGATED, ACCEPTED, or DEFERRED. No release-blocking risk remains OPEN or IN PROGRESS.
G3-05Compliance checklists signed offManualAll compliance checklist items SR-01 through SR-08 in the compliance register are signed off by their named owners with a date.
G3-06Beta session verificationManual (beta testers)A minimum of five testers (at least one on each of Windows, macOS, and Linux) complete a full text session and view the debrief screen. No session-ending bugs, data-loss bugs, or privacy regressions remain open at the time the beta gate is declared.

Stage 4 gate — Public free Steam release

Section titled “Stage 4 gate — Public free Steam release”

Entry criterion: Stage 3 gate fully passed and Valve private beta approval received.

Gate IDGateMethodPass criterion
G4-01Valve Steam review approvalValve reviewValve’s Steam review team has approved the app for public release (not just private beta). The store page is live or scheduled.
G4-02Steam Deck Verified tierValve reviewValve has granted the Verified tier. All items in the Steam Deck verification checklist passed during Stage 3 beta testing.
G4-03Full release checklistCI + manualAll parts (A, B, C, D) of docs/release-checklist.md are complete with no unresolved failures.
G4-04Store page accuracyManualSteam store page is reviewed by the publishing owner: no claims of AI therapy, diagnosis, or legal advice; no implied marketplace or paid content; local-first and privacy-first copy is accurate.
G4-05Voice smoke (if included)CI + manualIf STT and/or TTS are included in the release build, voice smoke tests (services/convsim-core/tests/test_voice_smoke.py) pass end-to-end on all three target platforms. If voice is not included in the release build, the voice-unavailable fallback path must pass.

The following features are not in scope for any v1 Steam release gate. They are listed here to prevent scope creep: none of these items will be considered for a release-gate waiver or a last-minute inclusion.

A future proposal to build any item in this list requires its own issue, design document, and acceptance criteria. It must not compromise the local-first, open-source, and no-telemetry principles of the base project.

FeatureWhy deferred
Community content marketplaceRequires payment rails, content moderation infrastructure, and Valve approval for in-app transactions. None of this exists in v1. Tracked in Stage 5 of the release train.
Creator revenue sharingDepends on the marketplace. Cannot exist independently of it.
Paid DLCRequires the same payment rails and Valve microtransaction review as the marketplace.
Multiplayer or shared sessionsServer infrastructure, latency management, identity, and live moderation are orthogonal to the local-first architecture and would require a fundamentally different backend.
VR supportPlatform-specific SDKs, a 3D renderer, and dedicated hardware targets are a separate product effort that the current stack does not address.
Plugin execution in scenario packsExecutable plugins are explicitly prohibited by the safety policy (CP-01 in the compliance register) and the pack schema (scripts field rejected). Revisiting this requires a sandboxing architecture and a separate security review — it cannot be added incrementally.

These items are also recorded in ROADMAP.md — Not now and in the Stage 5 description of the release train.


The following GitHub issues implement the Steam edition roadmap in sequence. Each issue corresponds to one document or gate in the release preparation.

TitleDocument deliveredStage dependency
[Steam Roadmap] Add Steam edition roadmap addendum and release principlesdocs/STEAM_ROADMAP.mdStage 1 prerequisite
[Steam Roadmap] Create Steam compliance and risk register for local-AI distributionpublishing/STEAM_COMPLIANCE_AND_RISK_REGISTER.mdStage 3 prerequisite
[Steam Roadmap] Define Steam MVP scope and release gatesdocs/steam-mvp-scope.mdStage 2 prerequisite

All open and closed issues in the Steam release work stream: GitHub — issues with [Steam Roadmap] prefix