Bring the docs in line with the code

- python-backend/README: track analysis is implemented (2e0e6ad); the cache layout,
  the module table (lirc, screen, timers, podcasts, tippen) and the route table
  (track analysis, HA proxy, typing game) were missing pieces.
- docs/REPO_OVERVIEW: Mein Zimmer and the clock are implemented; Home Assistant is
  also reached over HTTP through the room page's proxy, not MQTT only; the IR remote,
  scripts/, the optional config sections and figure kind were not mentioned.
- web/README: the key table was the mockup's (Ctrl transport keys, TAB over 'all');
  ?pi=1 is now a preset with per-browser overrides, not a read-once flag; the room
  page and the typing game exist; eslint is part of the checks.
- Docstrings that described earlier designs: HaConfig (written as browser-direct in
  the same commit that built the proxy, a8ed350), services/__init__, events,
  playback, media, colors, tippen progress and AppHeader, lowPower.ts, and the
  'Hoerbuecher' spelling.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-04 00:28:37 +02:00
parent a0ac48ccbf
commit a737ccf108
12 changed files with 105 additions and 77 deletions

View File

@@ -1,5 +1,5 @@
/** The header, matching ../../web/src/components/AppHeader.tsx so the two apps open the
* same way. The mascot bobs; `SHOW_DRIFT` doubles as the decorative-motion switch. */
/** The typing tab's header, matching ../AppHeader.tsx so both tabs open the same
* way. The mascot bobs; `SHOW_DRIFT` doubles as the decorative-motion switch. */
import type { ReactNode } from "react";
import { SKIN } from "../../lib/skins";

View File

@@ -41,19 +41,14 @@
* "decorative loops" row above: noise). Turning the canvas back on from the dialog
* wants the blur back on with it - the 118% row is that combination.
*
* Read once at module load, from the URL and nowhere else: no persistence, no
* auto-detection. The kiosk points Firefox at `http://localhost:8080/?pi=1` (see the
* `pi_kiosk_url` host var in the ansible repo) and a laptop opening the same page gets
* the full-fat version, which is what makes "is this the profile or the hardware?"
* answerable by editing the address bar.
* The kiosk points Firefox at `http://localhost:8080/?pi=1` (see the `pi_kiosk_url` host
* var in the ansible repo). That flag is no longer a single switch: it selects the `PI`
* preset in `lib/perfSettings.ts`, which the ⚡ dialog can override per knob, and every
* knob here and in `theme.ts` reads `PERF`. This header is kept for the measurements.
*/
import { PERF, PERF_ENABLED } from "./perfSettings";
// Superseded as a single switch: every knob below and in theme.ts now comes from
// `PERF` (lib/perfSettings.ts), which `?pi=1` seeds and the settings dialog overrides.
// This header is kept for the measurements it records.
export interface AmbienceQuality {
/** Multiplies the canvas backing store relative to its on-screen size, before
* `devicePixelRatio`. At 0.5 the loop fills a quarter of the pixels and the browser