Skip to content

feat: Add actor-based session control server - #4

Merged
zazabe merged 6 commits into
mainfrom
server-mode
Aug 16, 2026
Merged

feat: Add actor-based session control server#4
zazabe merged 6 commits into
mainfrom
server-mode

Conversation

@zazabe

@zazabe zazabe commented Aug 16, 2026

Copy link
Copy Markdown
Owner
  • Add actor-based session lifecycle and profile management.
  • Expose HTTP APIs and a client for recording, replay, debugging, and traffic subscriptions.
  • Extend protocol configuration and causal event metadata across HTTP, WebSocket, and WASM.
  • Add session integration tests and update documentation.

zazabe added 6 commits August 16, 2026 13:57
- Introduced a new `session` module containing session management functionality.
- Implemented `SessionManager` and `SessionActor` for handling session lifecycle, including creation, retrieval, and termination.
- Added necessary types and error handling for session operations.
- Updated `Cargo.toml` and `Cargo.lock` to include new dependencies for session management.
- Refactored existing code to integrate the new session management features.
- Added a new HTTP control server for managing sessions via RESTful API.
- Implemented routes for session creation, listing, retrieval, and deletion.
- Introduced session readiness and shutdown handling in the `SessionManager`.
- Updated `Cargo.toml` and `Cargo.lock` to include new dependencies for HTTP server functionality.
- Refactored session-related types and error handling to support the new API.
- Improved session endpoint management with structured response models.
- Introduced `ProfileId` and `ProfileSnapshot` types for managing profiles.
- Added functionality for creating, retrieving, listing, and removing profiles in `SessionManager`.
- Updated session creation to associate sessions with profiles.
- Enhanced API routes to support profile operations, including new endpoints for profile management.
- Refactored session-related types and error handling to accommodate profile integration.
- Implemented loading of profiles from TOML files at startup.
- Introduced `SubscribeTraffic` functionality in the `SessionManager` and `SessionActor` to allow clients to subscribe to session traffic events.
- Added a new `Client` module for managing sessions and profiles via an HTTP control server, including commands for creating, listing, and stopping sessions.
- Implemented streaming of traffic events as Server-Sent Events (SSE) for real-time monitoring of session activity.
- Updated API routes to support traffic event subscriptions and enhanced session response models to include session names.
- Refactored session-related types and error handling to accommodate new features and improve overall structure.
- Updated `Cargo.toml` and `Cargo.lock` to include new dependencies for HTTP client functionality.
- Removed deprecated `config` and `debug` modules, consolidating functionality into the main application structure.
- Introduced `StartSession` and `GetSessionByName` commands in the `SessionManager` for improved session control.
- Enhanced `SubscribeTraffic` to include an `after` parameter for better traffic event management.
- Updated session handling to support traffic history and sequencing, allowing clients to retrieve past events.
- Refactored session-related types and error handling for improved clarity and maintainability.
- Updated `Cargo.toml` and `Cargo.lock` to reflect changes in dependencies and features.
@zazabe
zazabe enabled auto-merge (squash) August 16, 2026 14:02
@zazabe
zazabe merged commit 27954e9 into main Aug 16, 2026
4 checks passed
@zazabe
zazabe deleted the server-mode branch August 16, 2026 14:07
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