app
KiCad - the KiCad Bridge
Public Made by Adomby adom
Reference implementation of the KiCad bridge: multi-instance Python server, forward path via kicad-cli, reverse path via in-process plugin. Most complex of the three bundled bridges.
← Commit history
background doctrine: the foreground-reason contract (0.9.131)
1 file changed
+13
skills/kicad-bridge-background/SKILL.md+13@@ -238,3 +238,16 @@ Adversarial verification recipe: open a surface, wait out every guard tier, forc the window to the foreground via ab desktop_set_window_state {activate:true}, and assert the sentinel logs self-raise (bounced) and the user's window is back in front within ~300ms.++## The foreground-reason contract (0.9.131, John 2026-08-16 verbatim ruling)++"the ai should never be allowed to foreground without giving you a reason and if+it does give you a reason and you foreground u should always show an ab caption+indicating the reason for 3 seconds and then hide the caption."++Implementation: bring_to_user(hwnd, reason) REFUSES empty reasons; the dispatcher+refuses foreground:true without foregroundReason (returns _foregroundRefused with+guidance); announce_foreground captions for 3s and the caption renders ~1.2s+BEFORE the window moves. Sentinel bounces hold NOACTIVATE for 10s afterward+(10.0.5 prevention is reactive-only; without the hold, repeat-steal storms+flicker - the '10 windows blipping' John saw was exactly this during test runs).