Commit Graph
85 Commits
Author SHA1 Message Date
MythEclipse 834b19b1ae feat(moderation): enhance JSON extraction and validation in moderation analysis 2026-05-21 04:23:01 +07:00
MythEclipse f851ea0fa9 fix(moderation): improve error handling for malformed JSON responses and ensure proper response headers 2026-05-21 04:00:36 +07:00
MythEclipse 5588ece6c7 feat(moderation): normalize JSON response handling and enhance test coverage for moderation analysis 2026-05-21 03:52:51 +07:00
MythEclipse c1c3c99686 feat(moderation): improve message analysis scheduling and update moderation prompt structure 2026-05-21 02:56:41 +07:00
MythEclipse 7eb01606b7 feat(moderation): enhance attachment handling and AI analysis integration 2026-05-21 02:39:28 +07:00
MythEclipse 3d64228d6a feat(config): add AI analysis tuning parameters and update related logic 2026-05-21 01:55:50 +07:00
MythEclipse e8e0697a84 chore: clean dependencies and format restructure 2026-05-19 15:12:09 +07:00
MythEclipse a1b85d8ac3 refactor: extract persisted ui state 2026-05-19 14:11:09 +07:00
MythEclipse f48f62893d refactor: extract pcm audio helpers 2026-05-19 13:56:36 +07:00
MythEclipse 7f5db953fa chore: update dependencies and improve code formatting
- Added `vendor/discord-video-stream` to pnpm workspace.
- Refactored `llmModerationClient.ts` for better readability and consistency.
- Adjusted imports in `recordingsRoutes.ts` for clarity.
- Updated `webserver.ts` to correctly import `createRecordingsRoutes`.
- Enhanced test cases in `llmModerationClient.test.ts` for improved readability.
- Updated submodule references for `better-sqlite3`, `discord-video-stream`, `discord.js-selfbot-v13`, `drizzle-orm`, and `node-datachannel`.
- Created documentation for deprecated dependency removal plan and design.
2026-05-19 02:49:55 +07:00
MythEclipse e85967ae51 style: format winston logger changes 2026-05-19 02:48:37 +07:00
MythEclipse f8ba4b41e9 fix: preserve structured logger metadata 2026-05-19 02:43:52 +07:00
MythEclipse 0e08d29df3 test: cover logger metadata serialization 2026-05-19 02:16:50 +07:00
MythEclipse 520da01be7 fix: handle message_id with extra wrapping quotes and request strict JSON output without reasoning 2026-05-19 00:24:13 +07:00
MythEclipse a338d6b7e2 fix: update image URLs to use httpbin.org for testing and add new test cases for attachment analysis 2026-05-19 00:07:31 +07:00
MythEclipse f3c915eacd feat: add searchMessages function and corresponding API endpoint for message queries 2026-05-18 06:39:12 +07:00
MythEclipse a037d17f53 fix: remove connect timeout from ffmpeg arguments in music player and tests 2026-05-18 05:50:38 +07:00
MythEclipse 04ba772e61 fix: remove read timeout from ffmpeg arguments in music player 2026-05-18 05:46:38 +07:00
MythEclipseandClaude Opus 4.7 ff425e1f46 fix: resolve silent voice playback on VPS and queue screenshare streams
- Add ffmpeg stderr monitoring to catch audio decoding errors
- Add HTTP timeout parameters (-connect_timeout, -read_timeout) for VPS reliability
- Add URL validation in yt-dlp to ensure audio URLs are resolved
- Add comprehensive logging to mediaController for queue operations
- Add logging to musicPlayer for ffmpeg command execution and errors
- Update musicPlayer test to expect new timeout parameters

Fixes:
1. Silent audio issue: ffmpeg errors are now visible in logs
2. Queue bypass: Added logging to track queue → playback flow
3. VPS network issues: Added timeouts for HTTP stream connections

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-18 05:19:38 +07:00
MythEclipseandClaude Opus 4.7 3ae7a4c6ad fix: resolve silent voice playback on VPS and queue screenshare streams
- Call unpause() when starting a stream in DiscordPlayer to prevent getting stuck in a paused state.
- Call stop() instead of pause() in VoiceController on disconnect to fully reset the player.
- Add user-agent header to ffmpeg calls in MusicPlayer and Transcoder to prevent YouTube 403 Forbidden on VPS.
- Add screenshare streams to the media queue when successfully started.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-18 05:09:40 +07:00
MythEclipseandClaude Opus 4.7 1085d7909c fix: address LLM square bracket mapping format and resolve Biome import formatting
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-18 04:40:54 +07:00
MythEclipseandClaude Opus 4.7 cc2c247311 fix: align ytdlp and playTranscode tests with actual implementations
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-18 04:39:21 +07:00
MythEclipseandClaude Opus 4.7 dde8358736 feat: implement robust JSON parsing and multimodal image capping
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-18 04:38:30 +07:00
MythEclipse 51dc1f8869 feat: add multimodal analysis support to LLM moderation client by processing image attachments 2026-05-17 23:56:04 +07:00
MythEclipse e22e620bae feat: add streaming demuxer tests and implement dual-stream output piping in streaming service 2026-05-17 20:44:13 +07:00
MythEclipse 4931e6d1ca test: add unit tests for playTranscodedPreparedStream and transcoder functionality 2026-05-17 17:54:39 +07:00
MythEclipse 6de5342703 feat: refactor screen share controller to use Streamer for session management and simplify stream handling 2026-05-17 05:15:38 +07:00
MythEclipse 5a926dbd17 refactor: remove Discord-video-stream submodule and integrate streaming functionality 2026-05-17 05:10:46 +07:00
MythEclipse 71889ab689 chore: update Discord-video-stream subproject to latest commit 2026-05-17 04:52:20 +07:00
MythEclipse 518577d79d feat: enhance screen share controller with Streamer integration and voice channel management 2026-05-17 01:01:40 +07:00
MythEclipse 99ec528a03 refactor: remove unused getThreads function and related code from voice API and controller 2026-05-16 23:34:07 +07:00
MythEclipse 2744e7035b feat: implement full session recording with muxing support
- Add session recording metadata and mux filter builder in src/recorder/sessionRecording.ts.
- Update SegmentMetadata to include recordingSessionId in src/types.ts and src/recorder/metadata.ts.
- Modify recorder lifecycle to track sessions, register segments, and finalize recordings on stop.
- Create tests for session recording functionality in tests/recorder/sessionRecording.test.ts and tests/recorder/metadata.test.ts.
- Document session recording design and implementation plan in docs/superpowers/specs/2026-05-16-session-full-recording-design.md and docs/superpowers/plans/2026-05-16-session-full-recording.md.
2026-05-16 17:59:17 +07:00
MythEclipse 8b33af8286 feat: prevent recording of audio from bot users 2026-05-16 15:52:10 +07:00
MythEclipse d50ce8698f feat: implement media echo fix and YouTube screenshare design
- Introduced a new `ScreenShareController` to manage YouTube screenshare functionality.
- Updated `DiscordPlayer` to track ownership of audio streams, preventing conflicts between music playback and screenshare.
- Added error handling for various states including voice connection checks and media busy states.
- Created unit tests for `ScreenShareController` and `DiscordPlayer` ownership rules to ensure correct functionality.
- Added documentation for the new media echo fix and screenshare design.
2026-05-16 15:48:28 +07:00
MythEclipseandClaude Opus 4.7 5abe5cc39f feat: update media input guidance
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 19:49:01 +07:00
MythEclipseandClaude Opus 4.7 c954cc0406 feat: resolve youtube search and spotify media
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 19:46:43 +07:00
MythEclipseandClaude Opus 4.7 95ea0cee75 feat: add play-dl search resolver
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 19:44:42 +07:00
MythEclipseandClaude Opus 4.7 2e30a063d2 feat: add yt-dlp media helper
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 19:43:06 +07:00
MythEclipseandClaude Opus 4.7 6aeabc690f feat: prepare media resolver source kinds
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 19:11:23 +07:00
MythEclipse 73901231c3 feat: update backlog sync logic to queue requests and adjust response structure 2026-05-15 18:53:12 +07:00
MythEclipse 61b07e4b01 feat: implement backlog sync cooldown mechanism and update related tests 2026-05-15 18:38:17 +07:00
MythEclipse ff2792d403 style: format media music implementation 2026-05-15 18:04:39 +07:00
MythEclipseandClaude Opus 4.7 94e497b7a6 feat: expose media playback routes
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 17:43:53 +07:00
MythEclipse b00def2d4d fix: guard media controller playback transitions 2026-05-15 17:40:28 +07:00
MythEclipse dbae042279 test: cover media controller conflicts and skip 2026-05-15 17:30:08 +07:00
MythEclipseandClaude Opus 4.7 c509f48f95 feat: coordinate media playback state
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 17:27:27 +07:00
MythEclipse 1e0a00d82d fix: guard music playback process lifecycle 2026-05-15 17:23:36 +07:00
MythEclipseandClaude Opus 4.7 9e07a0a1f3 feat: add ffmpeg music player
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 17:17:17 +07:00
MythEclipse acb43b6dac fix: harden media source resolution 2026-05-15 17:11:26 +07:00
MythEclipseandClaude Opus 4.7 93134a9793 feat: resolve media music sources
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-15 17:05:37 +07:00