Filing-gate category: ① a product defect with named sites (class a). A transient failure becomes a permanent error screen. Reader: triage first (route and grade), then the seat that claims it.
Filed by the domain:ui seat #2 (session_014mXUNuFomfj24w7s1pZzhN) from the contract review of PR objectui#10649 (objectui#10623) at 008a5df. The review read it at source. ⛔ Not graded here.
Sites (read by the seat on objectui origin/main)
packages/plugin-timeline/src/ObjectTimeline.tsx:
const [error, setError] = useState (~:258);
setError(e as Error) in the fetch's catch (~:414), the only write, with no setError(null) anywhere;
if (error) { (~:808) returns the error screen above the canvas.
Reach
On main a failure can start only from mount, a query change, or pull-to-refresh. After it, every later successful fetch updates the rows while the error screen stays until remount. PR objectui#10649 (objectui#10623, in rework) makes object-timeline re-read on every data-invalidation event, and the console bridges every data-source write onto that bus. Once it lands, one failed background re-read puts a healthy timeline on a permanent error screen. The mechanism is pre-existing; the reach grows with objectui#10623. PR objectui#10649 is fixing the same defect for object-map in its own surface, following ObjectGantt.
Direction (for triage, not a ruling)
Take the objectui#10578 shape (ObjectGantt): clear error on a successful commit. Decide whether a failed background re-read keeps the last good rows, as ObjectGantt's silent mode does. Pin both: a failure, then a success, shows the rows; and a re-read failure over good rows.
Dedupe
REST read of every objectui issue and PR updated since 2026-09-24T00:00Z (740 items), titles matched against timeline.*error|error.*timeline|clears: the only hit is objectui#10578 (ObjectGantt, closed, fixed by PR objectui#10630). Lit control: that same walk finds objectui#10578.
Dedupe words: ObjectTimeline never clears error · timeline error screen stays after success · setError null timeline
Generated by Claude Code
Filing-gate category: ① a product defect with named sites (class a). A transient failure becomes a permanent error screen. Reader: triage first (route and grade), then the seat that claims it.
Filed by the
domain:uiseat #2 (session_014mXUNuFomfj24w7s1pZzhN) from the contract review of PR objectui#10649 (objectui#10623) at008a5df. The review read it at source. ⛔ Not graded here.Sites (read by the seat on objectui
origin/main)packages/plugin-timeline/src/ObjectTimeline.tsx:const [error, setError] = useState(~:258);setError(e as Error)in the fetch'scatch(~:414), the only write, with nosetError(null)anywhere;if (error) {(~:808) returns the error screen above the canvas.Reach
On
maina failure can start only from mount, a query change, or pull-to-refresh. After it, every later successful fetch updates the rows while the error screen stays until remount. PR objectui#10649 (objectui#10623, in rework) makesobject-timelinere-read on every data-invalidation event, and the console bridges every data-source write onto that bus. Once it lands, one failed background re-read puts a healthy timeline on a permanent error screen. The mechanism is pre-existing; the reach grows with objectui#10623. PR objectui#10649 is fixing the same defect forobject-mapin its own surface, followingObjectGantt.Direction (for triage, not a ruling)
Take the objectui#10578 shape (
ObjectGantt): clearerroron a successful commit. Decide whether a failed background re-read keeps the last good rows, asObjectGantt's silent mode does. Pin both: a failure, then a success, shows the rows; and a re-read failure over good rows.Dedupe
REST read of every objectui issue and PR updated since 2026-09-24T00:00Z (740 items), titles matched against
timeline.*error|error.*timeline|clears: the only hit is objectui#10578 (ObjectGantt, closed, fixed by PR objectui#10630). Lit control: that same walk finds objectui#10578.Dedupe words:
ObjectTimeline never clears error·timeline error screen stays after success·setError null timelineGenerated by Claude Code