Skip to content

v0.99.64

Latest

Choose a tag to compare

@pbtrung pbtrung released this 11 Nov 16:42

Fixes

  • Preserve replies when sending fails, recover failed storage writes and
    deferred history requests, and ignore late history for closed conversations.
  • Serialize concurrent searches and retain queue recovery after errors and
    timeouts. Reject queued searches after reconnecting to a new socket.
  • Validate saved receipts and preferences, handle cross-tab storage clearing,
    normalize IRC commands, harden message formatting and support single-token
    PONG replies.
  • Validate OAuth issuer identity and response types. OAuth configuration must
    match the provider's issuer exactly, including any trailing slash.
  • Refresh memoized message callbacks when their parent handlers change.

Maintenance

  • Split large persistence, backlog, messaging, connection and rendering modules
    along responsibility boundaries while preserving public imports.
  • Update compatible dependencies to their latest stable releases, including
    jsdom 31, and patch the minimatch advisory. TypeScript 7.0.2 remains the
    typechecker; TypeScript 6 remains for typescript-eslint's compiler API.
  • Add 38 regression/recovery tests and tighten coverage thresholds. Document
    findings, fixes, module boundaries and validation in doc/codebase-audit.md.

Validation

  • 725 unit/component tests and 64 desktop/mobile browser tests pass.
  • Typechecking, lint, formatting, production build and coverage checks pass.
  • Coverage: 89.96% statements, 83.35% branches, 90.12% functions, 90.01% lines.
  • npm audit reports zero vulnerabilities. Ten optional screenshot generators
    remain disabled by their existing configuration.