# Notification preferences fixture specification

**Synthetic specification, not an implemented or executed application.** Prepare a disposable fixture in a framework your team already uses; use its current official documentation. No particular Next.js version is assumed.

## Starting state

Record baseline commit, runtime, dependency lock and installation instructions. Supply an existing form shell, a mock client with deterministic pending/success/422/503 behavior, and evaluator-owned acceptance checks. Keep baseline checks unchanged. Use fake records and no production credentials.

Initial record: name=Alex Example, email=alex@example.invalid, weekly_digest=false. The client accepts exactly name,email,weekly_digest. A successful response returns the saved record. Invalid-input cases must not call the client. A retry after a simulated503 succeeds on the next mock response.

## Acceptance cases

1. Initial values appear and field labels are usable.
2. Invalid email shows a clear error without sending a save request; define the fixture's validation rule explicitly rather than claiming complete RFC address validation.
3. Valid input sends one expected payload to the mock client.
4. Pending request shows progress and prevents duplicate submission.
5. Success shows confirmation and retains the returned saved state.
6. Simulated422/503 gives a clear error and preserves entered values.
7. Retry uses the preserved values and can succeed.
8. Existing baseline behavior/checks still pass.

## Controls and evidence

Declare allowed component/style files, dependencies, commands, network destinations and reviewer-owned acceptance files. Inspect any changed tests. Record required boundary controls and harmless fixture checks; a prose instruction is not an enforced sandbox.

Use a fresh disposable copy per candidate. Record the same initial prompt, context, retry budget and measurement boundary. Keep prompts, diffs, logs, manual patches and final acceptance decisions. Unrun candidates remain not_run. Do not claim this specification supplies a cloneable harness, passing tests or a benchmark result.
