Skip to content

docs(status): full feature-matrix audit against shipped code (Aug 2026) - #39

Merged
willwade merged 2 commits into
astro-buildfrom
fix/feature-matrix-audit
Aug 22, 2026
Merged

docs(status): full feature-matrix audit against shipped code (Aug 2026)#39
willwade merged 2 commits into
astro-buildfrom
fix/feature-matrix-audit

Conversation

@willwade

Copy link
Copy Markdown
Collaborator

The status matrix had drifted badly from reality. This re-verifies every row against the frontends' actual code (Dasher-Apple, Dasher-Windows, Dasher-GTK, Dasher-Android, DasherCore) and updates both the v6 matrix and the v5 baseline. Validator passes (54 features), site builds clean.

Headline corrections

Eye gaze — previously "shipped" on all six platforms. Split into three honest rows:

  • Pointer input — shipped everywhere (true)
  • System-pointer handoff — works today anywhere a tracker drives the OS cursor (macOS/GTK beta-untested, visionOS native, Windows shipped)
  • Raw tracker dataonly Windows (Tobii Stream Engine, eyetuitive, UDP gaze + tracker picker). Linux/macOS are possibilities; iOS cannot take raw data.

Switch / scanning — the engine's One-/Two-Button Dynamic filters are wired on Apple (switch profiles + key capture), Windows (1/2-switch selection methods) and GTK (filter + fixed keys) — but none have been tested with real switch hardware or users. All now beta with that reason. Android planned.

Touch on Android — was "beta"; it's the platform's primary input. Shipped. Likewise the rest of Android's blanket-beta core (canvas, alphabets, PPM, adaptive learning, settings persistence, speed, dark mode, analytics) — released through v0.1.9.

Joystick — Android gamepad steering shipped this month (untested with controllers → beta); Apple's enum declares it but there's no backing service (not-supported); GTK SDL3 shipped.

Direct text entry — Windows (SendInput keyboard mode) and GTK (ydotool, v0.2.6+) are shipped, not planned/not-supported; Android IME shipped. v5 fix: GTK v5 had direct mode via XTest — the baseline wrongly said not-supported. Linked to governance RFC 0015.

Removed false claims (found by code inspection):

  • GTK "Undo/Redo buttons" — no such code exists
  • GTK "PDF export (F8)" — not in the code (row kept with honest v6 not-supported + v5 shipped)
  • GTK TTS "placeholder" — it ships speech-dispatcher (from-source) + cloud engines (packages)

Promotions backed by shipped code: typing rate (Windows status bar, GTK Settings → Output), game mode (Windows wired), dwell (GTK Preferences → Input), analytics/crash (GTK v0.2.6+, Android), CJK conversion (engine-ready everywhere — kept beta as untested with CJK users, honestly).

New rows: Real font metrics for label layout (DasherCore v0.2.4 / #56 — Android shipped v0.1.8+, Windows #28 + GTK PR pending) and App version display (RFC 0016 — Android shipped, others tracked).

Speed row now documents the v5-range story: engine accepts raw 10–800 (v0.2.3+); Android/GTK follow it; Windows caps 5.0× (#27), Apple 4.0× (#34).

Deliberately out of scope

  • No "web" column: dasher-web wasn't audited this pass; adding a column needs its own sweep.
  • visionOS specifics beyond existing rows.

DCO signed.

Every row re-verified against the frontends' actual code. Headline
corrections:

- Eye gaze split into three honest rows: pointer input, system-pointer
  handoff (works today via any tracker that moves the OS cursor), and
  RAW tracker data - only Windows does raw (Tobii Stream Engine,
  eyetuitive, UDP + tracker picker). Linux/macOS marked as
  possibilities, iOS cannot take raw data. Previously the matrix
  claimed eye-gaze shipped on all six platforms.
- Switch/button modes: engine filters are wired on Apple, Windows and
  GTK but NONE have been tested with switch hardware or users - all
  downgraded to beta with that reason.
- Joystick: Android shipped (gamepad steering, untested -> beta);
  Apple is declared-but-unimplemented.
- Touch on Android: shipped (it is the primary input); was 'beta'.
- Direct text entry: Windows and GTK shipped (was planned /
  not-supported), Android IME shipped; v5 GTK direct mode via XTest
  restored to the v5 baseline (was wrongly not-supported).
- Typing rate: Windows and GTK shipped (were planned).
- Removed false claims: GTK undo/redo (no such buttons exist), GTK
  PDF/F8 export (not in the code), GTK TTS 'placeholder' (it ships
  speech-dispatcher + cloud engines).
- Android promoted from blanket 'beta' to shipped for the released
  core (canvas, alphabets, PPM, adaptive learning, settings, speed,
  dark mode, analytics); speech/IME/game stay beta.
- New rows: real font metrics for label layout (DasherCore v0.2.4;
  Android shipped, others pending) and app version display (RFC 0016).
- Speed-control row now documents the v5-range story (engine v0.2.3+,
  Windows/Apple still capped - issues #27/#34).

Validator passes (54 features); site builds clean.

Signed-off-by: will wade <willwade@gmail.com>
Signed-off-by: will wade <willwade@gmail.com>
@willwade
willwade merged commit 83240b5 into astro-build Aug 22, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant