deepseek-harness/packages/client/web-react/src
imccyu a8c6dcb180 fix(gui): contain selector failures and key the chain boundary by entry
Two hardenings on the chain outlet branch:

A throwing chain selector runs before its entry's SlotErrorBoundary
exists, so uncontained it blacked out the whole owner region and skipped
the remaining chain. It now degrades to a decline: reported via
console.error with the registrant identity, later entries still tried,
all-null/all-throw passes land on the owner fallback.

The elected entry's boundary is now keyed by entry identity: an unkeyed
boundary that failed on entry A survived a re-election and kept a
healthy entry B blacked out until the outlet unmounted. The key remounts
the boundary fresh whenever the election changes.
2026-07-23 20:01:04 +08:00
..
bind.ts refactor(gui): move the snapshot-store engine into the client runtime 2026-07-23 03:30:06 +08:00
index.ts feat(gui): chain slot kind with select routing and renderSlotChain 2026-07-23 18:03:44 +08:00
invariant.ts feat(gui): step1 skeleton — dsc web serves built web UI over booted harness host 2026-07-22 16:24:44 +08:00
scoped-slots.tsx fix(gui): contain selector failures and key the chain boundary by entry 2026-07-23 20:01:04 +08:00
session-provider.tsx refactor(gui): move the snapshot-store engine into the client runtime 2026-07-23 03:30:06 +08:00
use-invoke.ts feat(gui): step1 skeleton — dsc web serves built web UI over booted harness host 2026-07-22 16:24:44 +08:00
use-sync-external-store.d.ts feat(gui): step1 skeleton — dsc web serves built web UI over booted harness host 2026-07-22 16:24:44 +08:00