Builds plain-text tooltip content — the surface with no DOM at all.
⚠️ This function used to be the THIRD rendering engine: it joined String(value)
with " | " and skipped exactly two widgets by name. That is why a price, a
badge or a link read as [object Object] in a tooltip — the same defect as
the popup's, on more widgets. It now delegates to the shared text projection, so
a value reads the same way here as anywhere else, and widgets with no text form
(a button, an image, a gallery) contribute nothing instead of contributing
noise.
This IS the safe mode of FE-07: no anchors, no buttons, no interactive nodes —
not because they are stripped afterwards, but because a text surface never asks
for them.
Builds plain-text tooltip content — the surface with no DOM at all.
⚠️ This function used to be the THIRD rendering engine: it joined
String(value)with" | "and skipped exactly two widgets by name. That is why aprice, abadgeor alinkread as[object Object]in a tooltip — the same defect as the popup's, on more widgets. It now delegates to the shared text projection, so a value reads the same way here as anywhere else, and widgets with no text form (a button, an image, a gallery) contribute nothing instead of contributing noise.This IS the safe mode of FE-07: no anchors, no buttons, no interactive nodes — not because they are stripped afterwards, but because a text surface never asks for them.