Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [2.6.133] - 2026-04-17

### Added
- feat(music): voice channel status updates on track start (#660)
- feat(stats): public `/api/stats/public` endpoint + animated countup on landing page (#667)
- feat(autoplay): refactor — queueManipulation split into 6 autoplay modules (candidateScorer, diversitySelector, spotifyRecommender, lastFmSeeder, candidateCollector, replenisher) (#658, #659, #662, #668, #669, #670)

### Fixed
- fix(backend): SSE heartbeat leak on client disconnect — AbortController guard prevents writes to dead sockets (#666)
- fix(bot): LRU+TTL on audio-feature cache — prevents unbounded memory growth (#663)
- fix(bot): LRU+TTL on duplicate-detection caches — 4 module-level Maps now bounded (#672)
- fix(bot): LRU+TTL on trackNowPlaying state — class wrapper with cleanupGuild() hook (#675, #676)
- fix(bot): cleanup Discord listeners and connections on SIGTERM/SIGINT (#676)
- fix(music): skip/stop controls — compounding fixes verified (#677)
- fix(security): require `guildModuleAccess` middleware on roles + moderation routes (#664)
- fix(security): apiLimiter on 7 backend routes, writeLimiter on mutations (#673)
- fix(security): follow-redirects CVE-2024-45590 bumped via pnpm.overrides (#673)
- fix(security): TruffleHog action SHA-pinned to v3.94.3 (#673)
- test(backend): fix Express 5 integration test breakage (#681)

### Changed
- chore(sonar): exclude bot entry point + event handler glue from coverage measurement

## [2.6.132] - 2026-04-16

### Added
- Intermediate release bundling Phase 3 refactor completion and first wave of memory hygiene

## [2.6.131] - 2026-04-16

- feat(landing): marketing landing page at `/` with hero, feature grid, stats strip, FAQ, footer
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "lucky-bot",
"version": "2.6.132",
"version": "2.6.133",
"description": "All-in-one Discord bot platform \u2014 music, moderation, auto-mod, custom commands, and web dashboard",
"type": "module",
"workspaces": [
Expand Down
2 changes: 1 addition & 1 deletion packages/backend/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@lucky/backend",
"version": "2.6.131",
"version": "2.6.133",
"description": "Express API server for Lucky",
"type": "module",
"main": "./dist/index.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/bot/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@lucky/bot",
"version": "2.6.131",
"version": "2.6.133",
"description": "Discord bot application",
"type": "module",
"main": "./dist/index.js",
Expand Down
2 changes: 1 addition & 1 deletion packages/frontend/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "lucky-webapp",
"private": true,
"version": "2.6.131",
"version": "2.6.133",
"type": "module",
"scripts": {
"dev": "vite",
Expand Down
2 changes: 1 addition & 1 deletion packages/shared/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@lucky/shared",
"version": "2.6.131",
"version": "2.6.133",
"description": "Shared code for Lucky modular monolith",
"type": "module",
"main": "./dist/index.js",
Expand Down
Loading