agent-desktop/crates
Lahfir 96ecaf4e6d test: host the uia fixture window in a second process
Sub-phase 2.2 unit U4, plus U1's ledger rows and U9's document corrections.

A window the test process creates itself is served by in-process client-side
providers, so the failure taxonomy the walker exists to classify is
structurally unreachable from it, and a cache policy validated there is
validated against exactly the provider class the policy says to skip. The
default fixture therefore re-executes the test binary against one ignored
entry point and hosts the window in that second process; the in-process
variant is retained only for teardown and concurrency tests.

UI Automation calls are issued only from threads that own no fixture window,
because ElementFromHandle sends WM_GETOBJECT and a cross-thread SendMessage
blocks until the receiving thread pumps. The class name is unique per fixture
so parallel tests cannot collide on ERROR_CLASS_ALREADY_EXISTS, and the host
process carries a watchdog so a crashed parent cannot strand a window on a
shared runner.

The ledger gains area 14. Two rows change what was planned. A14-4: with the
host process killed, get_first_child surfaces E_FAIL while get_next_sibling
returns the exact pair a live provider returns at end-of-list, so no walker
can detect mid-walk process death from the sibling terminator. A14-8: the
minimized-window geometry rule reproduces on the COM stack, but A1-2's
IsOffscreen-false clause does not - the minimized top level reports true while
every descendant reports false, so a container's value says nothing about its
subtree.

phases.md gains the five corrections U9 owns. The new_direct() reason was
wrong in two places rather than one; both now carry the source-verified
reason. The hunk index moves with them, 43 to 46.
2026-07-28 01:41:46 -06:00
..
core fix: write the trace html export through the user-output primitive (#113) 2026-07-27 19:12:55 -07:00
ffi feat: windows toolchain, ci & com bootstrap (sub-phase 2.1) (#112) 2026-07-27 18:35:51 -07:00
linux feat!: implement Playwright-grade foundation contract 2026-07-20 00:21:38 -07:00
macos feat!: implement Playwright-grade foundation contract 2026-07-20 00:21:38 -07:00
windows test: host the uia fixture window in a second process 2026-07-28 01:41:46 -06:00