feat(web): add skeleton loading, error toasts, and confirmation dialogs
- Replace all "Loading..." text with structured skeleton screens
(Issue Detail, Agents, Skills, Runtimes, Tokens, Usage)
- Add toast.error for all API failures that were previously silent
(Agents CRUD, Skills CRUD, workspace store, issue/inbox stores,
timeline/reactions/subscribers hooks, agent-live-card)
- Add toast.success for mutations (agent update/delete, skill CRUD)
- Add confirmation dialogs for destructive actions
(comment delete, token revoke)
- Add empty states for Issues and My Issues pages
- Fix hydrateWorkspace resilience: each request catches independently
so partial failures don't block workspace entry
- Fix React key warning in issue-detail timeline rendering
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>