Rendre l’explication accessible #54

Closed
opened 2026-08-30 20:20:18 +02:00 by nessar · 4 comments
nessar commented 2026-08-30 20:20:18 +02:00 (Migrated from 172.24.0.1:8928)

Parent

#46

What to build

Make every plan explanation, calculation trace, incomplete state, and conflict explanation usable without a pointer or color perception. Keyboard and screen-reader users can navigate steps, dates, before/after state, candidate details, and loading or error states while retaining stable focus and equivalent meaning.

Acceptance criteria

  • First, previous, next, and last controls are keyboard operable and expose the current step semantically.
  • Calendar dates can be focused and activated without a pointer.
  • The before/after control and expandable candidate or technical details are keyboard operable.
  • Focus remains on a meaningful control when steps, dates, trace readiness, or outcome states change.
  • Selected placement, selected decision, current date, status, and before/after state have accessible names.
  • Loading completion, trace failure, counterfactual failure, incomplete calculation, and conflict are announced without stealing focus.
  • Chosen, rejected, not-examined, ineligible, added, moved, and removed states use text or icons in addition to color.
  • Muted dates outside the horizon are distinguishable as context and not selectable candidates.
  • Explanation and trace remain usable at the existing supported responsive widths.
  • Rendered tests cover keyboard flows, focus retention, accessible names, live announcements, and non-color status equivalents using existing tooling.

Blocked by

  • #51 — Explorer une décision de trace sur le calendrier
  • #52 — Expliquer un calcul incomplet
  • #53 — Expliquer un conflit d’obligations
## Parent #46 ## What to build Make every plan explanation, calculation trace, incomplete state, and conflict explanation usable without a pointer or color perception. Keyboard and screen-reader users can navigate steps, dates, before/after state, candidate details, and loading or error states while retaining stable focus and equivalent meaning. ## Acceptance criteria - [ ] First, previous, next, and last controls are keyboard operable and expose the current step semantically. - [ ] Calendar dates can be focused and activated without a pointer. - [ ] The before/after control and expandable candidate or technical details are keyboard operable. - [ ] Focus remains on a meaningful control when steps, dates, trace readiness, or outcome states change. - [ ] Selected placement, selected decision, current date, status, and before/after state have accessible names. - [ ] Loading completion, trace failure, counterfactual failure, incomplete calculation, and conflict are announced without stealing focus. - [ ] Chosen, rejected, not-examined, ineligible, added, moved, and removed states use text or icons in addition to color. - [ ] Muted dates outside the horizon are distinguishable as context and not selectable candidates. - [ ] Explanation and trace remain usable at the existing supported responsive widths. - [ ] Rendered tests cover keyboard flows, focus retention, accessible names, live announcements, and non-color status equivalents using existing tooling. ## Blocked by - #51 — Explorer une décision de trace sur le calendrier - #52 — Expliquer un calcul incomplet - #53 — Expliquer un conflit d’obligations
nessar commented 2026-10-02 14:54:25 +02:00 (Migrated from 172.24.0.1:8928)

Completion audit — 2026-10-02

Native keyboard controls, accessible labels and a live region exist, but published rendered tests do not establish the requested keyboard flows, focus retention and complete loading/error announcements. Local commit 51978f7 adds some date activation and status announcements, and current uncommitted UI changes alter focus/dialog behaviour. Full accessibility acceptance remains to verify on the final published UI.

Evidence: reviewed issue requirements/discussions and f1f0835 (published application source; live main 57a39c81 only adds Renovate configuration). Tested an isolated checkout of the published source: 20 test files, 157/157 tests passed, including the five benchmark scenarios. Local commit 51978f7 and uncommitted edits were inspected separately and are not evidence of published completion.

Completion audit — 2026-10-02 Native keyboard controls, accessible labels and a live region exist, but published rendered tests do not establish the requested keyboard flows, focus retention and complete loading/error announcements. Local commit 51978f7 adds some date activation and status announcements, and current uncommitted UI changes alter focus/dialog behaviour. Full accessibility acceptance remains to verify on the final published UI. Evidence: reviewed issue requirements/discussions and f1f0835 (published application source; live main 57a39c81 only adds Renovate configuration). Tested an isolated checkout of the published source: 20 test files, 157/157 tests passed, including the five benchmark scenarios. Local commit 51978f7 and uncommitted edits were inspected separately and are not evidence of published completion.
nessar commented 2026-10-03 15:17:34 +02:00 (Migrated from 172.24.0.1:8928)

Implemented with $luna-verified-implement and independently verified.

Explanation and trace controls support keyboard navigation, stable focus, live announcements, meaningful date/status text, collapsed technical detail, and supported responsive widths.

Validation: 198/198 tests across 23 files, app/spec TypeScript checks, ESLint, and production build pass. Chromium keyboard, focus-restoration, background comparison, and responsive checks at 375/768/1440 pixels pass with no page errors. Original benchmark outcomes match the pre-change baseline in all five scenarios, with and without tracing.

The implementation is in the local working tree based on 0ce33cc9d6fe7381965a9162571abe205d0b7350; no commit or push has been made.

Implemented with $luna-verified-implement and independently verified. Explanation and trace controls support keyboard navigation, stable focus, live announcements, meaningful date/status text, collapsed technical detail, and supported responsive widths. Validation: 198/198 tests across 23 files, app/spec TypeScript checks, ESLint, and production build pass. Chromium keyboard, focus-restoration, background comparison, and responsive checks at 375/768/1440 pixels pass with no page errors. Original benchmark outcomes match the pre-change baseline in all five scenarios, with and without tracing. The implementation is in the local working tree based on 0ce33cc9d6fe7381965a9162571abe205d0b7350; no commit or push has been made.
nessar (Migrated from 172.24.0.1:8928) closed this issue 2026-10-03 15:17:34 +02:00
nessar commented 2026-10-03 16:23:33 +02:00 (Migrated from 172.24.0.1:8928)

mentioned in issue #46

mentioned in issue #46

Preserved GitLab #54 history: source attribution, exact timestamps, discussion grouping and review positions. Historical diff snapshots: 0; visible source notes: 3.

gitlab-35-issue-54.md (SHA-256 ac856feb3883d4e0f6e68d689be558ee089342a32d6e24adfc38977f9a88a34e)

gitlab-35-issue-54.json (SHA-256 db094283b671d2a67f58ac61c30412087c40a2a1204d3b8d0b2ea4a88ccffc11)

Old CI job execution and reports are omitted. Original source files and rollback backups remain protected.

<!-- gitlab-to-gitea-history:35:Issue:54 --> Preserved GitLab #54 history: source attribution, exact timestamps, discussion grouping and review positions. Historical diff snapshots: 0; visible source notes: 3. [gitlab-35-issue-54.md](https://gitea.nessar.fr/attachments/26d8fcf7-e715-44d6-8b2b-e346b51cabec) (SHA-256 `ac856feb3883d4e0f6e68d689be558ee089342a32d6e24adfc38977f9a88a34e`) [gitlab-35-issue-54.json](https://gitea.nessar.fr/attachments/947ad040-e96f-4bdf-a572-629c83afcc0d) (SHA-256 `db094283b671d2a67f58ac61c30412087c40a2a1204d3b8d0b2ea4a88ccffc11`) Old CI job execution and reports are omitted. Original source files and rollback backups remain protected.
gitea-emergency added this to the Development project 2026-10-11 22:14:32 +02:00
gitea-emergency moved this to Closed in Development on 2026-10-11 22:14:32 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: nessar/vac-optimizer#54