Clara's summary card loses its avatar

The heading is now just the title — the same shape a plain "Prospect info" heading has. Captured before and after, on five surfaces.

30 Aug 2026 · branch fix/drop-clara-summary-icon · captured against propflow-stage · at c1c14150df+local

Data note. Every name and balance below comes from propflow-stage, which is anonymized by construction (ADR-0097/0110 — phones in the impossible +1000 NPA, emails @example.test). The identical capture against prod would carry real tenants' names and balances and is not safe to attach anywhere, which is why the generator refuses to run against one.

1 · Clara's Summary on the prospect page — BEFORE

This is the card Gera pointed at: "for the clara summary we don't need to have that icon for clara anymore just have like the title like the prospect info." The gradient six-dot avatar sits to the left of the title, pushing the heading text off the card's left padding so it no longer lines up with the prose underneath it or with any other card heading on the page.

Asserted in the captured DOMClara's Summary. The heading is in frame on the BEFORE server, so the two captures are of the same card rather than of two different scroll positions.

The Clara's Summary card with a circular gradient Clara avatar to the left of the heading text.
main, 1440px — the avatar sits before the title and indents the heading.

2 · Clara's Summary on the prospect page — AFTER

Just the title. The heading now starts at the card's left padding — the same x as the summary prose beneath it, and the same x as the plain Prospect info heading on the card above. Nothing was left behind: the leading slot that positioned the mark is deleted from SummaryCardHeader, so the chipless branch renders a bare <h2> carrying its own mb-4 rather than a one-child flex row with a stranded gap-2.

Asserted in the captured DOMClara's Summary. Same assertion as the BEFORE section — the card is still there and still named; only the mark is gone.

The same card with no avatar: the heading text starts at the card's left padding.
This branch, 1440px — bare heading, flush left, spacing to the body unchanged.

3 · The renewal offer-summary rail card — BEFORE

The most interesting thing this change does, and the one a reviewer would never guess from the diff. This heading is an uppercase eyebrow in a one-third-width rail, and the avatar was eating enough of that line to wrap the title onto two lines at 1440px — a full desktop width, not a narrow one. The card is a row taller than it needs to be, for a mark that says what the words already say.

Asserted in the captured DOMOffered rent · Month-to-month fallback. Two rows from inside the rail card, so the frame is provably the card and not the page around it.

The renewal offer summary rail card, its uppercase heading wrapped across two lines beside a Clara avatar.
main, 1440px — the avatar forces the eyebrow onto two lines in the rail.

4 · The renewal offer-summary rail card — AFTER

One line. This card did not route through SummaryCardHeader — it hand-rolled its own flex items-center gap-2 mb-3 row — so it needed its own edit, and the wrapper went with the glyph: a flex row describing a sibling that no longer exists is not layout, it is residue. The mb-3 now rides the heading itself. Its loading ghost changed in the same commit, because a ghost that paints a mark its real card dropped shows up as an icon flashing away on load.

Asserted in the captured DOMOffered rent · Month-to-month fallback. Same two rows as the BEFORE section — same card, same data, one difference.

The same rail card with the avatar gone and its uppercase heading on a single line.
This branch, 1440px — the eyebrow fits on one line and the card is a row shorter.

5 · Clara's Reasoning on the work-order page — AFTER

The same shared card under a different title. Four detail pages render ClaraSummaryCard — prospect, tenant, unit and work order — so deleting the slot fixed all four at once rather than needing four page edits. This is the work-order one, to show the change is not specific to the title string on the page Gera happened to be looking at.

Asserted in the captured DOMClara's Reasoning. Proves the removal reached a second ClaraSummaryCard title, not just the default one.

The Clara's Reasoning card on a work-order detail page with no avatar beside its heading.
This branch, 1440px — the shared card, second title, same bare heading.

6 · Phone width — AFTER

390px, where a stranded gap or a leftover indent would be most visible because there is least room to hide it. The heading is single-line and flush; the body prose wraps normally under it.

Asserted in the captured DOMClara's Summary. Checked at the width where leftover spacing would show worst.

The Clara's Summary card at phone width with a bare, flush-left heading.
This branch, 390px — flush heading, nothing stranded where the mark used to be.

What the captures are evidence OF

The diff's whole claim is "a mark is gone and nothing was left behind," which is exactly the kind of claim a test states and a picture proves. The unit tests pin the SHAPE — that the chipless heading renders byte-identical to a plain Prospect info heading, that no leading slot exists to wire an avatar back through, and that the renewal card and its ghost both render a bare <p> carrying its own margin. Each of those was positive-controlled: reverting each of the four source files reddened exactly one test and no others.

What the tests could not have caught is the renewal rail card's two-line wrap. No assertion in the suite was ever going to notice that a decorative glyph was costing that heading a whole line at desktop width — that only shows up in a picture, which is why this page exists.

Both servers here are bound to propflow-stage, the anonymized-by-construction table; the capture tool refuses a prod data source before it launches a browser, and the BEFORE server goes through the same refusal as the AFTER one.

PropFlow Docs