Files
FrameAssistant/docs/PROGRESS.md
T
matzmanandClaude Opus 5.5 ba6302a4c0 Add approved requirements and progress log
Requirements engineering for iteration 1 is finished (D13); phase 2
(planning and design) starts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 19:13:49 +02:00

2.6 KiB
Raw Blame History

Progress

Where the project stands, and what happened in each session. Newest first. The process is in CLAUDE.md ("Working rules").

Current state

  • Iteration 1, phase 2 (planning and design) started. Phase 1 is approved (D13); REQUIREMENTS.md is the baseline.

Next steps

Phase 2 for the MVP scope (D8: MQTT connection + discovery + availability, the MVP sensors, a basic notification). Design topics, proposed order:

  1. Q4: MQTT client library (licence, availability on SteamOS, TLS/login, Qt event-loop integration, deployment).
  2. Component structure: configuration, MQTT/discovery layer, sensor sources, notification service; how they fit into Dashboard (the app class).
  3. HA entity model: topics, discovery payloads, availability, device grouping (CON-2/3/5, SEN-15).
  4. Basic notification (NOT-1): needs an overlay outside the dashboard, i.e. the planned WorldOverlay (CLAUDE.md, "Planned extension"); MVP placement to be decided.
  5. Test strategy for the MVP and the measurement method for NFR-3.

Later, not needed for the MVP: Q1 (several notifications), Q2/Q3 (dashboard); check only whether they constrain the MVP architecture.

Log

2026-10-05: requirements approved

  • User approved REQUIREMENTS.md including the priorities (D13). Phase 2 started.

2026-10-04/05: project set-up and requirements

  • Copied the vrdashboard template. Removed what the app doesn't need:

    • examples/ (diagnostics app) and the VRDASH_BUILD_EXAMPLES option
    • the Frame test package (scripts/package-frame-test.sh, docs/FRAME-TESTING.md, screenshots)
    • the demo UI (src/qml/DemoPage.qml)

    Main.qml shows a placeholder card.

  • Named the app FrameAssistant, "Steam Frame companion for Home Assistant":

    • CMake project frameassistant, executable frame-assistant
    • app key net.matzman.frameassistant, tab "Frame Assistant", QML module FrameAssistant

    Names rejected:

    • "Steam…" and "…Home Assistant": trademarks
    • "HASS…": the user dislikes it, because "Hass" is German for hate.
  • Agreed working rules (in CLAUDE.md):

    • explicit permission for everything; ask instead of assuming
    • iterative five-phase cycle; an informal "ok" approves a phase
    • document everything in Markdown in docs/
  • git init. Baseline commit 4a5b090.

  • Requirements engineering (several question rounds with the user). The results are in REQUIREMENTS.md:

    • decisions D1–D12
    • 51 requirements
    • research on OpenVR data sources (Appendix A)
  • Checks: native-debug builds, ctest passes 6/6 (Vulkan surface test skipped, no Vulkan on this host), --snapshot renders.