# Verification — nonfinal checkpoint 0.5.3

Executed on 2026-10-19. This pass is verification and packaging cleanup only: delivery-inventory assertion, illustrated-plan DOM coverage, corrected records, and checkpoint packaging. Design and architecture are unchanged from 0.5.2. Only the USD 50/month ceiling is confirmed.

| Check | Result |
|---|---|
| Existing regressions | **134 passed, 0 failed** |
| Architecture boundaries | **83 passed, 0 failed** |
| 0.3.1 corrections | **55 passed, 0 failed** |
| Focused budget behavior | **87 passed, 0 failed** |
| Fixture references | **Passed: all IDs resolve** |
| OpenAPI, queue schemas, contract payloads | **Valid; 55 payloads match** |
| TypeScript | **Passed** |
| Static local links/assets | **394 checked, 0 failures** |
| DOM execution | **123 passed, 0 failed** (15 exact delivery targets; plan HTML mounts six figures; local assets and section links checked) |
| Explainer correction smoke | **14 fixtures; overview gap; multiline labels; plan embeds passed** |
| Shipping fixture probes | **Halden DE unknowns + Northfield stale + Halden US → NV without postcode passed** |
| Mermaid generator validation | **Sequence rect/end + semicolon checks; empty-edge omission; reserved-id sanitize in `generate-docs.js`** |
| Mermaid `mmdc` SVG generation | **`mmdc` wrote SVG for 11 plan/correction `.mmd` files (exit 0). This is CLI SVG output evidence, not a separate parse-only proof.** |
| Browser execution | **Not attempted.** Explicitly excluded by the user |

The workbench log `verification/correction-0.5.3/results.json` is not in this package. That log is inherited workbench evidence, not a check executed on this guide. Rendered layout and visual inspection remain unverified.

---

# Earlier verification — nonfinal checkpoint 0.5.2

Executed on 2026-10-19. This pass corrects overview geometry, multiline SVG labels, budget admission boundaries, shipping unknown/missing-input, and inline implementation-plan figures. The 0.5.x explainer approach and the 0.4.0 architecture baseline are preserved. Only the USD 50/month ceiling is confirmed.

**Record correction (0.5.3):** An independent re-run of the 0.5.2 archive’s DOM suite produces **116 passed, 1 failed**. The failure is the stale delivery-inventory assertion still requiring **14** links while the delivered index and packaging wrapper list **15** (including the illustrated implementation plan). Earlier notes that claimed **117 passed, 0 failed** for that archive were incorrect. Mermaid evidence for that pass is **`mmdc` SVG generation** for 11 `.mmd` files (exit 0), distinct from `generate-docs.js` validation — not a proven parse-only non-browser check.

| Check | Result |
|---|---|
| Existing regressions | **134 passed, 0 failed** |
| Architecture boundaries | **83 passed, 0 failed** |
| 0.3.1 corrections | **55 passed, 0 failed** |
| Focused budget behavior | **87 passed, 0 failed** (24 h age OK; USD 39.99 → 40 essential admit; USD 39/27 deferral) |
| Fixture references | **Passed: all IDs resolve** |
| OpenAPI, queue schemas, contract payloads | **Valid; 55 payloads match** |
| TypeScript | **Passed** |
| Static local links/assets | **372 checked, 0 failures** |
| DOM execution (independent archive re-check) | **116 passed, 1 failed** (stale “14 exact target links” vs 15 delivered targets) |
| Explainer correction smoke | **14 fixtures; overview gap 24 px; multiline labels; plan embeds passed** |
| Shipping fixture probes | **Halden DE unknowns + Northfield stale + Halden US → NV without postcode passed** |
| Mermaid generator validation | **Sequence rect/end + semicolon checks; empty-edge omission; reserved-id sanitize** |
| Mermaid `mmdc` SVG generation | **`mmdc` wrote SVG for 11 plan/correction `.mmd` files (exit 0); distinct from generator validation** |
| Browser execution | **Not attempted.** Explicitly excluded by the user |

The workbench log `verification/correction-0.5.2/results.json` is not in this package. That log is inherited workbench evidence, not a check executed on this guide. Rendered layout and visual inspection remain unverified.

---

# Earlier verification — nonfinal checkpoint 0.5.1

Executed on 2026-10-19. This pass corrects explainer diagrams and documentation against the shared admission handler, AW-02 capture order, shipping evaluator and Mermaid sequence export. The 0.5.0 explainer approach and 0.4.0 architecture baseline are preserved. Only the USD 50/month ceiling is confirmed.

| Check | Result |
|---|---|
| Existing regressions | **134 passed, 0 failed** |
| Architecture boundaries | **83 passed, 0 failed** |
| 0.3.1 corrections | **55 passed, 0 failed** |
| Focused budget behavior | **82 passed, 0 failed** (includes USD 39 forecast / USD 27 accounted deferral) |
| Fixture references | **Passed: all IDs resolve** |
| OpenAPI, queue schemas, contract payloads | **Valid; 55 payloads match** |
| TypeScript | **Passed** |
| Static local links/assets | **363 checked, 0 failures** |
| DOM execution | **117 passed, 0 failed** |
| Explainer correction smoke | **14 fixtures; sources present; overview/capture/budget/shipping/plan assertions passed** |
| Shipping fixture probes | **Halden DE fresh unknowns + Northfield stale retain/warn passed** |
| Mermaid sequence export | **Validated and parsed (`ex_capture_intake`, `ex_capture_accept`)** |
| Browser execution | **Not attempted.** Explicitly excluded by the user |

The workbench log `verification/correction-0.5.1/results.json` is not in this package. That log is inherited workbench evidence, not a check executed on this guide. Rendered layout and visual inspection remain unverified.

---

# Earlier verification — nonfinal checkpoint 0.5.0

Executed on 2026-10-19. This pass adds focused explainer diagrams on the primary review pages and in the atlas, regenerates diagram sources from `assets/fixtures-explainers.js`, and corrects deferred-LLM wording so additional model cost must fit the USD 40 operating envelope while preserving the USD 10 uncertainty reserve. The reviewed architecture baseline remains 0.4.0; the 0.4.1 implementation plan remains a proposal. Only the USD 50/month ceiling is confirmed.

| Check | Result |
|---|---|
| Existing regressions | **134 passed, 0 failed** |
| Architecture boundaries | **83 passed, 0 failed** |
| 0.3.1 corrections | **55 passed, 0 failed** |
| Focused budget behavior | **79 passed, 0 failed** |
| Fixture references | **Passed: all IDs resolve** |
| OpenAPI, queue schemas, contract payloads | **Valid; 55 payloads match** |
| TypeScript | **Passed** |
| Static local links/assets | **350 checked, 0 failures** (includes new explainer diagram sources) |
| DOM execution | **117 passed, 0 failed** |
| Browser execution | **Not attempted.** Explicitly excluded by the user |

The workbench log `verification/explainer-0.5.0/results.json` is not in this package. That log is inherited workbench evidence, not a check executed on this guide. The workbench notes that those commands ran with `NODE_PATH=/tmp/prw-tooling/node_modules`. Rendered layout and visual inspection remain unverified.

---

# Earlier verification — nonfinal checkpoint 0.4.1

Executed on 2026-10-14. This pass adds the proposed [implementation plan](implementation-plan.md) and links it from Decisions and delivery, the Technical reference and the generated decision list. No architecture, contract, fixture or cost-engine behavior changed. The plan is a proposal; only the USD 50/month ceiling is confirmed.

| Check | Result |
|---|---|
| Existing regressions | **134 passed, 0 failed** |
| Architecture boundaries | **83 passed, 0 failed** |
| 0.3.1 corrections | **55 passed, 0 failed** |
| Focused budget behavior | **79 passed, 0 failed** |
| Fixture references | **Passed: all IDs resolve** |
| OpenAPI, queue schemas, contract payloads | **Valid; 55 payloads match** |
| TypeScript | **Passed** |
| Static local links/assets | **335 checked, 0 failures** (includes the new plan and its links) |
| DOM execution | **117 passed, 0 failed** (adds a check that the delivery section links the unapproved plan) |
| Browser execution | **Not attempted.** Explicitly excluded by the user |

The workbench log `verification/plan-0.4.1/results.json` is not in this package. That log is inherited workbench evidence, not a check executed on this guide. The workbench notes that those commands ran with Open Design’s bundled Node v24.15.0 because the system `node` shim failed to load, with `NODE_PATH=/tmp/prw-tooling/node_modules`, and that nothing was installed. Rendered layout and visual inspection remain unverified.

---

# Earlier verification — nonfinal checkpoint 0.4.0

Executed on 2026-10-12. This pass adds the confirmed budget constraint, proposed launch workload, admission simulation and presentation refinements. The 0.3.1 correction list remains closed. This is a review checkpoint, not implementation acceptance.

## Executed checks

| Check | Result | Scope |
|---|---|---|
| Existing regressions | **134 passed, 0 failed** | Existing demonstrations plus the scenario-driven checks for the added launch fixture. |
| Architecture boundaries | **83 passed, 0 failed** | Existing recovery, authorization, identity, publication, freshness, artifact and billing boundaries. |
| 0.3.1 corrections | **55 passed, 0 failed** | Closed publication, collector, retention, queue and browser-scheduling corrections remain covered. |
| Focused budget behavior | **79 passed, 0 failed** | Launch totals, fixed/variable split, headroom, sensitivities, quotas, reservations, settlement, timeouts, schedule, reporting and deferral. |
| DOM execution and interactions | **116 passed, 0 failed across 15 pages** | JSDOM, without a browser executable. Includes the budget demonstration, global reset, delivery disclosure, preserved decision/connection hierarchy and deep-link focus handlers. |
| OpenAPI | **Valid** | Swagger Parser structure and reference resolution. |
| Contract payloads | **55 passed** | Existing documented requests and live public serializers. JSON Schema format validation is disabled; this does not validate real URLs, timestamps or network behavior. |
| Queue schemas | **3 compiled; 3 embedded examples passed** | AJV 2020-12. |
| TypeScript | **Passed** | `tsc --noEmit --lib ES2022,DOM contracts/contracts.ts`. |
| Fixture references | **Passed: all IDs resolve** | Explicit placeholder patterns remain declared; real unresolved references fail. |
| Static local links/assets | **323 checked, 0 failures** | Root HTML links/assets and Markdown links in README, changelog and docs. Checks local file existence; dynamic anchor behavior is covered separately by DOM tests. |
| Browser execution | **Not attempted** | Explicitly excluded by the user. No browser launch, installation, automation, screenshots or `check:browser` execution. |

**Behavioral total: 351 assertions.** DOM checks and contract payload checks are separate. They are not visual verification.

The workbench log `verification/budget-0.4.0/results.json`, and the output files that sat alongside it, are not in this package. That log is inherited workbench evidence, not a check executed on this guide. The workbench notes that dependencies were already present under `/tmp/prw-tooling/node_modules`, that no installation was performed, and that the execution used that directory’s TypeScript binary. Rendered layout and visual inspection remain unverified.

The first focused test run found a test-comparison issue: historical scenario expectations are rounded cents, so their totals need cent-level comparison; the new launch and sensitivity arithmetic retains numerical tolerance. The first DOM run found a malformed option tag in the price-confirmation selector; the tag was corrected and the DOM suite passed on rerun. Final results above are successful executions, not inferred results.

## Budget results and limits

The shared engine estimates **USD 34.48/month** for **two scrapers, 200 listings each, daily refreshes** over 30 days:

- Fixed costs/provisions: **USD 17.00** — hosting base 5, shared regional host provision 10, other-service provision 2.
- Variable services: **USD 17.48** — database 13.07, extraction/review models 4.41. Other metered lines are covered by assumed available account allowances.
- Headroom below the confirmed USD 50 ceiling: **USD 15.52**. Hold **USD 10.00** for uncertainty, leaving **USD 5.52** unreserved.
- Human review: **7.84 hours/month**, or **USD 470.40** imputed effort at the existing USD 60/hour assumption, separate from recurring-service cash.

Database active for 720 hours raises services to **USD 40.84**. Parser failures at 20% produce unconstrained demand costing **USD 38.89** and **15.68 hours** human effort; that demand exceeds the proposed model quotas and would be deferred. Both changes total **USD 45.25**. Removing account allowances yields **USD 44.18**. These sensitivities are estimates, not usage measurements or guarantees of equivalent completion.

The USD 10 host and USD 2 other-service provisions are not verified quotes. Before paid launch, price every required service, tax/FX and any paid authentication, backup, monitoring, domain or proxy need. Confirm account allowance allocation. An unknown required price or unresolved usage report blocks new paid work in the proposed gate. The reserve is not an extra line of expected spending.

See the generated [cost model](cost-model.md) and [budget controls](budget-controls.md) for assumptions and formulas. The earlier prototype, pilot and stress cases retain their original service assumptions and remain secondary planning references, not approved launch budgets.

## Focused behavior demonstrated

- The gate rejects unknown required prices/allowance allocation and usage reporting older than 24 hours.
- Token, model-attempt, browser-hour/concurrency, source/listing, refresh, fetch-retry, queue-delivery and dry-run replay limits bound admitted work.
- Duplicate IDs do not reserve twice. Settlements replace reservations once; conflicting retries are rejected. Timeouts retain liability. Fixed invoice settlement moves a commitment to charges without counting it twice.
- Discretionary work defers at USD 35 committed/forecast exposure. New paid work must fit the USD 40 operating envelope; USD 10 is reserved once for uncertainty.
- Accepted data and original observation time remain available. Deferred processing is labeled stale; no automatic retry storm is modeled.
- The budget demonstration is isolated in memory, resets with Global Reset and does not deploy enforcement or change other architectural decisions.

## Unverified and deferred

**Rendered layout, visual inspection and real-browser interaction remain unverified**, including desktop/narrow reflow, contrast as rendered, zoom, scrolling and full keyboard traversal. DOM focus/disclosure tests do not establish these outcomes. This limitation does not block this checkpoint or its packaging.

Infrastructure validation still needs:

- A transactional, persistent admission ledger across collectors and process restarts; atomic quota/reservation updates; month rollover carrying unsettled liabilities.
- Conservative adapter quotes, actual token metering, bounded browser execution, reporting latency, allowance sharing and real invoices. Fixed services and provider usage can continue billing while jobs are paused; no provider spending cap is verified.
- PostgreSQL cursor coordination, leases, live progress, pruning, cutover and restore fencing under real failures.
- IdP cryptography, TLS/session integration, storage no-overwrite behavior and restoration objectives.
- Authorized real-source measurements for access, parser failures, browser dependence, database active time, costs and human effort. Pantry & Pour remains a fictional fixture.
- Stakeholder comprehension and architecture acceptance.

Jonathan has confirmed the spending ceiling only. The launch workload/controls, service inventory/providers, source selection, catalog/publication policy, topology/recovery objectives, identity governance and retention remain proposals or open decisions. See [Decisions still open for Jonathan](architecture/decisions-for-jonathan.md). The workbench screen `decisions.html` is not in this package.

## Packaging

The installed `package-design-checkpoint` helper creates the nonfinal archive, preserves earlier archives and validates its private ZIP before atomic publication. The minor bump to 0.4.0 reflects new budget-planning and admission-control capabilities. Primary target: How it works; 13 labeled alternatives remain in the homepage’s Delivery details disclosure. An accepted implementation handoff is not produced by this task.
