Skip to content

Moodarr v0.1.0-alpha.21

Pre-release
Pre-release

Choose a tag to compare

@jremick jremick released this 05 Jul 01:35
Immutable release. Only release title and notes can be modified.

MoodRank trace-first release candidate

This prerelease supersedes v0.1.0-alpha.19 and v0.1.0-alpha.20.

Container images

  • ghcr.io/jremick/moodarr:v0.1.0-alpha.21
  • ghcr.io/jremick/moodarr:sha-4ac3b7672cfa

What changed

  • Adds the trace-first MoodRank foundation from alpha.19 with opt-in trace persistence, redacted review-queue prompt capture, result provenance, rejection rows, impression rows, and response diagnostics.
  • Keeps trace writes disabled by default unless MOODRANK_TRACE_WRITE=on is explicitly set for live validation windows.
  • Supersedes alpha.20 by treating plain already available wording as a Plex-available hard filter, not only phrases that explicitly say in Plex.
  • Adds regression coverage from expanded live persona testing so already-available TV prompts cannot leak requestable or pending rows into the ranked window.

Verification

  • npm run verify:release passed locally on commit 4ac3b7672cfa4402ef0105243fc67b341c789e59.
  • npm audit --omit=dev reported 0 vulnerabilities.
  • CI passed: https://github.com/jremick/moodarr/actions/runs/28725577311
  • GHCR publish passed: https://github.com/jremick/moodarr/actions/runs/28725577811
  • Live EXP read-back passed on a private EXP endpoint/ with image ghcr.io/jremick/moodarr:v0.1.0-alpha.21, health ok, MOODRANK_TRACE_WRITE=on, and revision 4ac3b7672cfa4402ef0105243fc67b341c789e59.
  • Live paired AI-off/AI-on prompt pass covered the original seed prompts plus family rating, requestable, Plex-only, runtime, horror exclusion, and already-available TV cases: 20/20 HTTP 200, 0 hard-filter misses.
  • Live trace DB snapshot passed npm run eval:moodrank-traces -- --db-path /tmp/moodarr-alpha21-live.sqlite --min-traces 1 --sample-traces 5.

Notes

This is still an alpha prerelease. Keep Moodarr LAN/VPN-only, set MOODARR_ADMIN_TOKEN, keep /data private, and do not expose Plex/Seerr APIs publicly.