[eric] canvas: point the two new fixes at their real issues (ENG-420 wheel, ENG-421 run card)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U6zrBsUCNzpMBnov3rTVYV
This commit is contained in:
ciregenz
2026-08-27 22:33:31 -07:00
co-authored by Claude Opus 5
parent 215bc7c894
commit d1de5a1b0d
3 changed files with 3 additions and 3 deletions
@@ -4,7 +4,7 @@
// Holding it matters in BOTH directions, and only one direction used to exist. A scroll being served
// by a scrollable surface stays there past that surface's end, so hitting the bottom of Settings
// never chains into a canvas pan. And a pan the canvas already owns keeps flowing when it drifts
// over an app window, instead of being swallowed mid-gesture (ENG-421).
// over an app window, instead of being swallowed mid-gesture (ENG-420).
export const GESTURE_GAP_MS = 220;
@@ -43,7 +43,7 @@ test('notifications are still a separate question from cards', () => {
assert.equal(isUserLaunchedSession(run('running')), false);
});
// ENG-420: stopping a workflow-backed agent closed its whole card. Haik, production 1.7.9:
// ENG-421: stopping a workflow-backed agent closed its whole card. Haik, production 1.7.9:
// "Stop should mean stop, not close" -- you lose the transcript the moment you stop the run, which
// is the thing you stopped it to read. The despawn rule could not tell "the nightly run finished"
// from "a person pressed Stop", and it was written for the first one.
@@ -36,7 +36,7 @@ export function isUserLaunchedSession(session: SessionOrigin): boolean {
*
* EXCEPT when a human stopped it. "Ends on its own" and "a person hit Stop" are different events and
* this could not tell them apart, so pressing Stop on a workflow-backed agent made its card vanish
* along with the transcript the user stopped it to read (ENG-420). Someone stops a run to LOOK at
* along with the transcript the user stopped it to read (ENG-421). Someone stops a run to LOOK at
* it; the nightly-litter case it was written for is the one that ends by itself, which still
* despawns. Close is what dismisses a card, and Close is the only route that stamps `closed_at`.
*/