Self-review of PR #473: the header still said every React rendering of the
file was bypassed, while its "displayed texts" tests render the control with
its hooks from the shared harness. architecture.md: the slot presets are
commented in each test file (the two direct writes of the onboarding wiring
test are covered by the comment of mountWith).
Resolves#437
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Where a test presets a harness slot by position (PriceFetchConsentToggle,
useOnboardingChecklist's mountWith, SystemsSettingsPage), a comment names
the dependency on the component's hook order: any hook added before shifts
the slots without a word (the `slot` helper of fakeReact).
- docs/architecture.md, Tests: "Limites connues" lists the slot presets, and
links to ADR 0021 for withoutFolders and for the catch-up measurement
instead of repeating them.
- ADR 0021 section 7: the relative-path limit is stated precisely (a run with
two separators or more is still cut to its last segment; only the words of
a folder holding a blank stay), and a second limit is written: a folder
name holding one of the stops (a backtick, `;`, `|`, a closing parenthesis
not followed by a separator...) ends the path there, and that name, or its
start, stays in the line.
- db.ts: the comment of withoutFolders says "a closing parenthesis not
followed by a separator", as the code does, and points to ADR 0021.
No behaviour change.
Resolves#437
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- db.test.ts: `\r` joins the path stops of withoutFolders (removing it from
PATH_STOP now fails).
- The six keys whose "t removed" mutation survived the review of PR #435
(comment 23499) are asserted in their marked form:
transactions.transferIcon.ariaLabel (a row linked to a transfer) and
transactions.notes.placeholder (title of every row's notes button) in
TransactionTable.render.test.tsx; license.keyPlaceholder and
license.activate in LicenseKeyForm.render.test.tsx;
dashboard.kpiSectionTitle in DashboardPage.render.test.tsx;
balance.priceFetching.consent.accept in PriceFetchControl.test.tsx, the
consent dialog opened by presetting the control's first harness slot
(the dialog's title, body and decline texts are pinned with it).
- TransactionTable.wiring.test.ts opens a row's notes through its button
and pins the textarea placeholder, the second call of the notes key.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>