review fixes: pin alert-overlay opacity against tab-enter's ::before, guard stripBottom against a non-finite strip.top

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Codeman maintainer
2026-08-15 06:49:39 +02:00
parent 0af80b417c
commit ff13234b3d
2 changed files with 10 additions and 1 deletions
+3 -1
View File
@@ -286,7 +286,9 @@ function computeLineagePath(input) {
// sitting above further rows (see the corridor note above the constants).
const span = Math.abs(cx - px);
const stripBottom =
strip && Number(strip.height) > 0 ? Number(strip.top) + Number(strip.height) : Number.NEGATIVE_INFINITY;
strip && Number(strip.height) > 0 && Number.isFinite(Number(strip.top))
? Number(strip.top) + Number(strip.height)
: Number.NEGATIVE_INFINITY;
const baseline = Math.max(pBottom, cBottom, stripBottom);
const dip =
Math.min(LINEAGE_DIP_MAX_PX, Math.max(LINEAGE_DIP_MIN_PX, LINEAGE_DIP_BASE_PX + span * LINEAGE_DIP_PER_PX)) +
+7
View File
@@ -1486,6 +1486,12 @@ html[data-line-anim="packet"] .connection-line.line-enter {
inset: -2px;
border-radius: inherit;
pointer-events: none;
/* Explicit: .tab-enter::before (entrance animations) parks ::before at
opacity 0 with fill-mode both, and an alerted tab that is also entering
would otherwise inherit that and render an invisible alert. Our animation
shorthand already displaces theirs at this specificity; the opacity must
be pinned the same way. */
opacity: 1;
border: 2px solid var(--red);
background: rgba(239, 68, 68, 0.12);
box-shadow: 0 0 8px rgba(239, 68, 68, 0.4);
@@ -1505,6 +1511,7 @@ html[data-line-anim="packet"] .connection-line.line-enter {
inset: -2px;
border-radius: inherit;
pointer-events: none;
opacity: 1; /* see the action variant above */
border: 2px solid var(--yellow);
background: rgba(234, 179, 8, 0.1);
box-shadow: 0 0 8px rgba(234, 179, 8, 0.35);