Goal: Turn the current game into a nice, monetizable Steam title (small price).
Scope: What’s missing or bad today, and what to expand.
Living pointers: docs/GAP_ANALYSIS_BEYOND_TASKS.md (§2–7, §10 task map) · tasks/README.md (gap wave AGENT-21–39).
As of 2026-03-28, these items from older audits are implemented on the live path (Loading → MainMenu → game/menus). Do not re-open them unless you are working in legacy/orphan files still on disk.
| Area | Status |
|---|---|
| Options / settings | Options scene: audio, fullscreen, resolution/quality row, accessibility toggles, controls shown, build version in UI. |
| Pause + quit to menu | Dodge run supports pause and return to main menu. |
| Achievements (in-game) | Achievements scene + unlock plumbing; Valve-side achievements still need Steam adapter (AGENT-22). |
| Meta progression & structured save | Save manager, meta shop, contracts, modes/progression beyond a single localStorage high score key. |
| Modes, challenges, perks, objectives, bosses | Core loop matches the “substantial” row in docs/GAP_ANALYSIS_BEYOND_TASKS.md §1 — not a single bare endless mode only. |
| Loading scene | app/scenes/loadingScene.js: branded loading + progress bar; #/editor can route to editor after load. |
| Identity (shipping shell) | index.html: title Skyfall, product tagline, favicon.svg. |
| Electron wrapper | electron/main.js + npm run electron:dev / electron:build. IPC beyond quit → AGENT-21. |
| Build metadata | package.json name / version; surfaced in Options. |
| Run summary / game over | Lean tasks expanded summaries; further polish may remain in individual AGENT-01–20 items. |
Checklist (quick): options · pause · in-game achievements · Electron shell · favicon · loading · meta/modes depth · version in UI · structured local save · main-menu-first flow.
Prioritize using this table and docs/GAP_ANALYSIS_BEYOND_TASKS.md, not Part 1–4 alone.
| Theme | Gap (short) | Tasks |
|---|---|---|
| Electron bridge | Preload exposes only quit; no Steam/paths/window-controls IPC | AGENT-21 |
| Steam / online adapter | setOnlineAdapter not wired; local adapter no-ops “success” |
AGENT-22, AGENT-13 |
| Cloud merge | Partial merge vs full save payload | AGENT-23 |
| Resolution truth | Option saved; canvas/layout not clearly tied to setting | AGENT-24 |
metaCurrency vs metaFragments |
Dual economy / UI confusion | AGENT-25 |
lastCompletedLevel visibility |
Opaque to players | AGENT-26 |
| Key rebinding | No persisted custom keys | AGENT-27 |
| Leaderboard UI | No scene consuming getLeaderboardEntries |
AGENT-28 |
| Telemetry upload + privacy | Hook / opt-in / disclosure | AGENT-29 |
| Offline honesty UI | Clarify local vs networked features | AGENT-30 |
| A11y + presentation | Beyond baseline sliders | AGENT-31 |
| Audio load failures | Player-visible retry/messaging broadly | AGENT-32 |
| Tutorial / onboarding | Depth / optional strips | AGENT-33 |
| Credits / third-party | Notices pipeline | AGENT-34 |
| Deep E2E | Long flows untested in automation | AGENT-36 |
| About / privacy / support | In-game compliance surface | AGENT-37 |
| Fullscreen QA | Platform matrix | AGENT-38 |
| Editor | Placeholder vs MVP vs defer | AGENT-39, AGENT-12 |
| Orphan portfolio scenes / stale copy | Files may remain off app/index.js boot order |
AGENT-11 |
This doc refresh: AGENT-35.
Read
Resolved since 2024–2026andStill openfirst. Part 1 below calls out what can still bite (Steam, orphan files, legal) and what used to be true before the main-menu stack.
| Issue | Where | Fix |
|---|---|---|
| Stale name / copy in orphan files | (Mitigated) Portfolio orphan scenes removed (AGENT-11); verify index.html + player-facing scenes only. |
|
| Portfolio scenes off the live path | Introduction / choice / websites scenes may still exist on disk with CV/portfolio tone. | Delete or quarantine; live menu is game-focused (docs/GAP_ANALYSIS_BEYOND_TASKS.md §6). |
| Issue | Where | Fix |
|---|---|---|
| Steamworks | No wired Steam SDK in repo. | AGENT-22 + AGENT-21. |
| Cloud parity | Local save is rich; remote merge and Steam Cloud are not production-complete. | AGENT-23. |
| Shippable desktop build | Done (baseline): Electron wraps Vite build. | Still need Steam pipe + signed builds for store (tasks/README.md AGENT-44+). |
| Issue | Where | Fix |
|---|---|---|
| Key rebinding | Bindings shown; custom keys not persisted. | AGENT-27. |
| Resolution honesty | Setting stored; Phaser canvas/layout linkage incomplete per trace. | AGENT-24. |
| Issue | Where | Fix |
|---|---|---|
| Tutorial depth | Tutorial scene exists; optional strips / depth are product calls. | AGENT-33. |
| Game over / run summary polish | Improved vs 2024 baseline; keep aligning with lean/gap tasks. | tasks/README.md AGENT-01–20 as needed. |
| Issue | Where | Fix |
|---|---|---|
| Leaderboards in UI | Scores may be submitted; no in-game board. | AGENT-28. |
| Steam achievements | In-game list ≠ Steam partner unlocks until adapter lands. | AGENT-22. |
| Content expansion | More perks/modes/bosses = ongoing product work. | docs/FULLY_FLEDGED_EXPERIENCE.md / AGENT-40+. |
| Issue | Where | Fix |
|---|---|---|
| Error handling breadth | Loading scene has Retry on load error; dodge/asset paths may need the same rigor everywhere. | AGENT-32 + general hardening. |
| Fonts / a11y depth | Baseline options exist; not a full commercial a11y pass. | AGENT-31. |
| Issue | Where | Fix |
|---|---|---|
| Dependency on GitHub | phaser3-juice-plugin from github:RetroVX/phaser3-juice-plugin. |
Pin exact commit/tag or vendor (see docs/DEPENDENCIES.md). |
| EULA / Privacy / support | In-game surface still thin vs platform expectations. | AGENT-37. |
| Mobile in Steam build | Joystick overlay + mobile CSS still present in web shell. | AGENT-38 / desktop polish. |
Status: Many §2.1–2.2 bullets are done for web/Electron (see Resolved since 2024–2026). Treat Part 2 as a backlog narrative; execution order = Still open + gap doc §11.
- Single, clear identity — Largely done on boot path; finish orphan file cleanup (
AGENT-11). - Desktop + Steam — Electron done; Steamworks + IPC open (
AGENT-21,AGENT-22). - Options — Done baseline; rebind + resolution truth open (
AGENT-27,AGENT-24). - Pause + Quit — Done.
- Correct copy & flow — Live flow uses main menu; verify orphan files if retained.
- Save system — Local structured save done; cloud merge open (
AGENT-23). - Store presence — Marketing / Steamworks partner work (AGENT-44+, not gap 21–39 core).
- Achievements — In-game done; Steam open (
AGENT-22). - Leaderboards — Submit path exists; UI open (
AGENT-28). - Loading & errors — Loading done; broaden failure UX (
AGENT-32). - Run summary — Improved; iterate with product.
- Difficulty or mode — Multiple modes/features exist; balance/expansion = ongoing.
- Credits — Scene exists; license rigor (
AGENT-34).
- Tutorial —
AGENT-33. - More content — AGENT-40+.
- Meta-progression — Present; economy clarity (
AGENT-25). - Accessibility —
AGENT-31. - Font & icon — Favicon done; font pipeline / Steam art = AGENT-43+ / AGENT-44+.
| Area | Severity | Items |
|---|---|---|
| Identity / branding | Critical (if orphans remain) | Stale Interval Dodger / portfolio copy in non-boot files |
| Platform / Steam | Critical | Steamworks wiring, cloud merge, IPC |
| Settings | Medium | Rebind, resolution truth |
| Onboarding / UX | Low–Medium | Tutorial depth, long-tail polish |
| Content / replay | Medium | Leaderboard UI, Steam achievement parity |
| Polish / a11y | Medium | Error surfacing, font/a11y pass |
| Technical / legal | Medium | Juice pin, privacy/support surfacing |
| Priority | Expansion |
|---|---|
| P0 | Still open table: AGENT-21–24, AGENT-22–23 Steam/cloud, AGENT-11 orphans |
| P1 | AGENT-25–31, AGENT-28, AGENT-32, AGENT-37 |
| P2 | AGENT-33–34, AGENT-36, AGENT-38–39, AGENT-40+ |
- Decide the product — Positioning is closer to shipped; align store/comms with Skyfall.
- Close platform truth — AGENT-21 → 22 → 23 → 24 (dependency-aware).
- Economy + boards — AGENT-25, AGENT-28, AGENT-30.
- Trust + compliance — AGENT-29, AGENT-37, AGENT-34.
- QA depth — AGENT-36, AGENT-38.
- Store assets — AGENT-44+ when ready.
Canonical gap list: docs/GAP_ANALYSIS_BEYOND_TASKS.md. Task index: tasks/README.md.
A first telemetry pass is now defined for balance validation. Track these KPI baselines per build:
- Median run length (
run_end.runTimeMsmedian). - First boss reach rate (runs with a boss clear / runs started).
- Challenge success rate (successful
challenge_performance/ all challenge attempts).
Supporting implementation docs and scripts:
docs/TELEMETRY.mdscripts/telemetry/aggregateTelemetry.js
These KPIs should be displayed as 7-day and 30-day trends, segmented by difficulty/mode once those are added.