You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Set a verdict beside the panes, not in a dialog over them
Setting one was an `AlertDialog`, and the step that lists the verdicts a new
one contradicts is what that shape got wrong. Two things a reader wants there
are behind the scrim: why two verdicts can disagree at all, which every other
label in this window answers with a `?` that opens the reference in a tab —
and a tab opened behind a modal is a tab you cannot reach, so the only way to
explain it was to draw the paragraph above the list, all 265 characters of it,
every time, for somebody who read it once. And the objects themselves. Each
verdict being overruled is an object, and the reason somebody typed for it is
the case for the other reading, so weighing it against yours is sometimes going
and looking — which a dialog can only offer by being dismissed, and dismissing
it throws away the half typed reason it was holding.
So `SettingVerdict` is state `HeapDumpDive` keeps per tab id, and
`LeakStatusSetter` draws it where a note goes: under the tab's title, above the
panes whose chain and sizes are the evidence the verdict is drawn from. The
paragraph is now the `CONFLICTING_VERDICTS` page, each conflicting verdict is a
link to its object, and the tab you came from is still half set when you come
back to it. Tab ids are never reused, so an entry can only be about the tab it
was made for, and closing that tab drops it.
The three surviving dialogs are all about getting a heap dump rather than
reading one — `Take heap dump…`, `Bitmaps from the live process`, and the one a
`shark://` link asks — so there is nothing behind them worth reaching.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
0 commit comments