# Verification status

> See which NatUI behaviors are covered by tests, native tree assertions, and screenshots.

Canonical: https://natui.dev/docs/status/verification

## JavaScript suite [#javascript-suite]

The repository currently contains 77 contract and unit tests. They cover:

* Reconciler creation, movement, removal, and commit batching
* Prop validation and all-or-nothing serialization
* Host handshake, process exit, and request timeouts
* Controlled-value sequence acknowledgements and enforcement
* Menu, toolbar, presentation, selection, and sorting semantics
* Screenshot success, failure, and timeout behavior

Linux CI runs the JavaScript tests, package build, and typecheck.

## macOS [#macos]

The macOS CI job compiles the Swift host and runs the JavaScript suite and package build. GUI verification is local because hosted CI has no normal window session.

Local real-window suites cover:

* Base demo in Node mode
* Kitchen-sink app-shell and multi-component workflows
* Embedded JavaScriptCore demo

They assert native tree dumps, interaction events, optimistic edits, sequence acknowledgements, and host-rendered PNG files.

## Windows [#windows]

The blocking Windows CI job compiles the Release x64 WinUI host with .NET 8.

The base Node-mode suite has also passed locally against a real WinUI 3 window, including screenshots and controlled-input stress behavior.

The newer app-shell kinds are currently compile-checked on Windows. They have not yet received the same real-window end-to-end suite as macOS.

## Evidence limits [#evidence-limits]

* Tree dumps prove host node state, not every visual detail.
* PNG validation proves captured window content, not popup layers outside the captured surface.
* Debug events prove protocol handling, not physical pointer or keyboard routing.
* Current checks do not constitute a complete accessibility audit.
* The real-window suites do not visit every public component. The component catalog is validated separately against all 37 public exports.