You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Address actionable findings from CodeRabbit review on PR #74. Net effect:
nine bug fixes / a11y improvements in dashnote, plus tighter test coverage
for the cache, session, and reload-stale-response invariants.
- a11y: drawer toggle aria-label flips with state; OperationResultNotice
uses assertive aria-live for errors so role="alert" semantics hold
- LoginModal: clear stale error and mnemonic when modal reopens
- NotesWorkspace: monotonic reload token + session-snapshot guard so a
late listMyNotes response from a previous identity/contract can't
clobber state or write the wrong workspace into cache
- notesCache: key by identityId + contractId + network (per CLAUDE.md);
clearCachedNotes sweeps every contract+network slot for an identity
- useTheme: optional-chain .matches so missing matchMedia falls back to
"dark" instead of throwing
- SessionContext: isolate DPNS lookup failures so a name-service hiccup
doesn't fail an otherwise-valid session; clear any prior remembered
identity when login uses rememberMe: false (prevents logout falling
back to the wrong identity)
- App.test.tsx: import ReactNode instead of using bare React.ReactNode
(jsx: react-jsx doesn't put React in scope as a namespace)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
0 commit comments