← Commit history

Dev skill: park z-bottom is now one AD call with force:true (AD 1.9.115); PS fallback documented as legacy-only pending fleet update

John Lauer ·9ad793e42e · ·parent 29ec1f9
1 file changed +8−4
dev-skills/pup-bridge-dev/SKILL.md+8−4
@@ -257,10 +257,14 @@ tiny Win32 call, no PS window-hunting, no timers, no loops.** Lives in `tryDetac 3. `parkSessionWindowDirect(page, sessionId)`:    - hwnd via **AD `desktop_find_window`** (native, matches the "(session: <id>" title suffix the      welcome page just set), retried together with the bottoming below (~8 × 300ms).-   - **Z-bottom UNCONDITIONALLY** (`osBottomUnlessForeground(hwnd, force=true)` — the ONE residual-     Win32 PS call): `SetWindowPos(HWND_BOTTOM, NOMOVE|NOSIZE|NOACTIVATE)`, z-order only. There is-     deliberately **NO user-click escape hatch at park time** — see the dead ends: "foreground at-     park" has non-user causes and honoring it forced never-clicked windows onto John's screen.+   - **Z-bottom UNCONDITIONALLY via AD-core** (v1.8.63): ONE call —+     `desktop_set_window_state {titleContains, state:'bottom', force:true}` (AD ≥1.9.115; both+     verbs shipped from pup's feature requests). `force:true` bottoms even a foreground window.+     There is deliberately **NO user-click escape hatch at park time** — see the dead ends:+     "foreground at park" has non-user causes and honoring it forced never-clicked windows onto+     John's screen. A legacy PS fallback (`osBottomUnlessForeground`) remains ONLY for desktops on+     AD ≤1.9.114 (no state:'bottom', or force ignored + skip-on-foreground) — delete it once the+     fleet is ≥1.9.115.    - **HARD RULE: never move the window on-screen until 'bottomed' is CONFIRMED.** If bottoming      can't be confirmed after the retries, return an honest `park-failed` and leave the window      invisible off-screen — the self-heal (reattach / open_tab / switch_tab / any status query)