Files
Max Litruv Boonzaayer e058165830 feat: upgrade toolchain and soften sync recovery after network blips
Bump Vite 8, matrix-js-sdk, and related deps; fix immer/vanilla-extract imports for new majors. Replace blocking sync error dialog with background recovery on wake/offline, and disable Vite auto-open in dev. Add feature handoff documentation index.
2026-07-09 01:55:09 +10:00

2.1 KiB

Developer tools — handoff

Summary

Power-user tools for debugging Matrix state: view/edit account data, send custom room events, and inspect raw JSON. Available in user settings and room/space common-settings.

User-facing behavior

  • Settings → Developer tools: account data viewer
  • Room settings → Developer tools: send state events, room account data
  • Raw JSON editors with validation warnings

Architecture

settings/developer-tools/
  DevelopTools.tsx, AccountData.tsx
common-settings/developer-tools/
  DevelopTools.tsx, StateEventEditor.tsx, SendRoomEvent.tsx

Key files

Path Role
cinny/src/app/features/settings/developer-tools/DevelopTools.tsx User-level dev tools
cinny/src/app/features/settings/developer-tools/AccountData.tsx Account data viewer
cinny/src/app/features/common-settings/developer-tools/DevelopTools.tsx Room dev tools entry
cinny/src/app/features/common-settings/developer-tools/StateEventEditor.tsx Edit state events
cinny/src/app/features/common-settings/developer-tools/SendRoomEvent.tsx Send events

Data model

Direct read/write to Matrix account data and state events — production danger.

Dependencies

  • matrix-js-sdk low-level APIs

Integration points

  • user-settings: developer tab
  • common-settings: per-room tools

Testing

Manual

  1. View account data keys on staging account.
  2. Send harmless custom state event in test room.
  3. Verify permission denied without power level.

Automated

  • None

Known issues & gotchas

  • No guard rails — can break rooms with bad state events
  • Should be hidden or disabled in production builds for normal users (currently settings-gated only)
  • Typo DevelopTools vs DeveloperTools in filenames

Future work

  • Feature flag via client config
  • Event diff viewer

Add your extra things here

  • Only use on test homeservers — document internal MSC event types here when experimenting