Commit Graph
3 Commits
Author SHA1 Message Date
Firehose Bot fc2bafdfa1 fix(pi): abort session-start make test on session replacement to avoid stale ctx
The fire-and-forget run captured its session's pi/ctx; after /new, fork,
switch, or reload pi invalidates those, so the orphaned run's notify/
sendMessage threw 'This extension ctx is stale after session replacement
or reload'. Now session_shutdown aborts the in-flight run before
invalidation (pi.exec supports AbortSignal), and stale errors are
swallowed as a race guard.

Also show a 'running tests...' footer status widget while the run is
in flight, cleared on completion.
2026-10-15 14:00:38 +01:00
Firehose Bot a1fc8486e9 feat(pi): record session-start make test in test-balls via event bus
Emit test-balls:record on the shared pi.events bus after the session-start
make test run completes, so test-balls shows a ball for it like any other run.

The run is now fire-and-forget: session start no longer blocks on make test,
and the emit always lands after every extension's session_start handler has
run (project extensions load before global ones, so emitting synchronously
raced test-balls' runs reset). Exactly one ball is recorded per run, even if
UI reporting fails.
2026-10-15 13:51:13 +01:00
mostalive a1d1107129 Run tests when resetting pi, so we do not forget to run tests 2026-07-07 13:36:09 +01:00