Browse documentation

Visitor and operator usability review

On this page 4 sections

Requirements: REQ-PRODUCT-FORM-PERMISSIONS, REQ-PRODUCT-SETUP, REQ-PRODUCT-A11Y, REQ-PRODUCT-MOBILE.

This review follows the tasks each audience needs to complete. It is an implementation and local Chromium review, not an accessibility certification or the full platform matrix.

Visitor tasks

Operator tasks

Evidence and remaining checks

Relevant tests: packages/notabenda/test/form-permission.test.mjs, packages/notabenda/test/setup.test.mjs, site/test/demo.test.mjs, site/test/host.test.mjs. The deployment-tree test resolves the complete browser import graph, including the optional journal. The journal tests use a development-only IndexedDB implementation to exercise real transactions/abort behavior as well as actual browser interaction above.

The review does not establish the complete screen-reader, WebKit/Firefox, physical iOS/Android, forced-colors, text-size/zoom, translation/RTL or on-screen-keyboard matrix. Those remain acceptance work. Local restriction while offline cannot instantly change a remote sender or host process; the interface distinguishes it from a confirmed withdrawal.

The optional Google Basic example follows the same visitor controls and shared light/midnight design. Its local execution trail and reload boundary have a separate verification record, including narrow-screen and keyboard observations.

Mobile documentation now starts with a native collapsed “Browse documentation” menu, preserving the full sidebar on desktop. The article is visible in the first mobile screen without requiring JavaScript. Shared link parity and collapsed markup are checked in site/test/guide-navigation.test.mjs; keyboard expansion and narrow-screen layout are checked in Chromium.

Contract-action follow-through

The optional declaration module received a separate visitor/operator walkthrough and Astra review. Native editing-stage submission now reads the visible controls again; a UTF-8 limit failure cannot silently submit an earlier valid value, and silent valid DOM/autofill changes are included. Withdrawal has review/edit/final action; German continuing-contract cancellation retains its direct final action. Uncertain attempts use an explicit same-request retry label, and pinned document links announce their new-tab behavior.

The browser walkthrough found that Back from admin can reload a page rather than restore BFCache state. The example now explicitly retains its exact command within that session’s tab and never retries on load. It preserves the mounted view for persisted pagehide and later destroys it on actual unload. Native package code itself does not persist personal fields. The deliberate example refuses unreadable recovery state and sends no POST after a failed recovery write; repair retries the same in-memory command. Production hosts must choose a recovery design without making browser storage an unjustified obstacle to statutory intake. Full platform acceptance remains open.

Operators receive separate confirmation/application states and direct state filters while keeping a contact/reference search. A received declaration, provider acceptance, recipient delivery and contract fulfillment remain distinct. See the focused contract-action verification.

The final Chromium pass verified 320px/390px layout, 16px fields, at least 48px form targets, announced document links, exact receipt recovery after Back/full reload, and operator filtering of uncertain confirmation. All 408 automated tests passed, plus the disposable local SQLite capture/restart check and Worker dry run. Downloaded-file, full screen-reader and broader platform acceptance are not claimed.