Skip to content

refactor: opencode event stream integration and SSE aggregator updates#212

Merged
chriswritescode-dev merged 3 commits intodevfrom
refactor/opencode-event-stream
May 2, 2026
Merged

refactor: opencode event stream integration and SSE aggregator updates#212
chriswritescode-dev merged 3 commits intodevfrom
refactor/opencode-event-stream

Conversation

@chriswritescode-dev
Copy link
Copy Markdown
Owner

Summary

  • Integrate opencode-event-stream transport adapter
  • Refactor SSE aggregator with delta support and status synchronization
  • Add OpenCode auth service and event stream client
  • Update event context and hooks to use new event stream implementation

Changes

  • backend/src/index.ts - Add event stream integration
  • backend/src/services/opencode/auth.ts - New OpenCode auth service
  • backend/src/services/opencode/client.ts - Update client for event stream
  • backend/src/services/sse-aggregator.ts - Refactor with delta support
  • backend/src/services/schedules.ts - Update schedule service
  • backend/test/services/sse-aggregator.test.ts - New aggregator tests
  • frontend/src/contexts/EventContext.tsx - Integrate event stream
  • frontend/src/hooks/useSSE.ts - Update SSE hook
  • frontend/src/lib/opencode-event-stream/openCodeEventStream.ts - Event stream transport

Type of Change

  • Refactor

Checklist

  • Code follows project style (no comments, named imports)
  • TypeScript types are properly defined
  • Tests added/updated (80% coverage target)
  • `pnpm lint` passes locally

…ansport adapter

Migrate singleton SSEManager to OpenCodeEventStream class with pluggable
transport adapter, enabling testability via TestEventStreamTransport.

Remove ensureSSEConnected guards from commands and permissions per domain
model (commands should proceed silently). Simplify subscriptions by
replacing separate subscribe/addDirectory calls with unified
subscribeGlobalMonitor and subscribeToDirectory APIs.
Treat HTTP 524 as a transient network error alongside TIMEOUT, letting
the event stream reconnect silently. Header state remains the indicator.
@chriswritescode-dev chriswritescode-dev merged commit becb16a into dev May 2, 2026
3 checks passed
@chriswritescode-dev chriswritescode-dev deleted the refactor/opencode-event-stream branch May 2, 2026 19:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant