Radarr/.github
Cody Kickertz a187cee132
feat(monitoring): implement hierarchical monitoring for Author/Series/Book/Audiobook (#132)
* feat(monitoring): implement hierarchical monitoring for Author/Series/Book/Audiobook

- Add cascade logic: unmonitoring parent cascades to children
- Re-monitoring parent does not auto-monitor children (explicit control)
- EffectivelyMonitored computed from item AND all ancestors
- Database indexes for efficient cascade queries (migration 248)
- AuthorMonitoringChangedEvent and SeriesMonitoringChangedEvent
- EffectivelyMonitored field added to Book/Audiobook API resources

Closes #2

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor(monitoring): reduce code duplication in HierarchicalMonitoringService

- Extract common ancestor check to IsAncestorUnmonitored helper
- Consolidate monitoring context retrieval to GetMonitoringContext
- Create generic UnmonitorEntities helper for cascade operations
- Reduce code from 302 to 233 lines while preserving all functionality

* ci(sonar): exclude intentional structural duplication from CPD

* ci(codeql): exclude user-controlled-bypass for monitoring cascade logic

---------

Co-authored-by: admin <admin@ardentleatherworks.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 12:04:21 -06:00
..
codeql feat(monitoring): implement hierarchical monitoring for Author/Series/Book/Audiobook (#132) 2025-12-22 12:04:21 -06:00
ISSUE_TEMPLATE docs: update community standards with conventional commits and Aletheia branding 2025-12-18 11:13:15 -06:00
workflows ci(deps): bump dessant/lock-threads from 4 to 6 (#130) 2025-12-22 09:20:53 -06:00
CODEOWNERS fix(ci): add CODEOWNERS, enable test blocking, add pre-commit hooks 2025-12-19 11:03:07 -06:00
dependabot.yml ci: fix workflow configs and add dependabot 2025-12-18 13:34:45 -06:00
FUNDING.yml fix(ci): pin Trivy action and update branding 2025-12-19 10:44:32 -06:00
label-actions.yml Replace support-requests with label-actions 2023-09-19 02:05:48 +03:00
labeler.yml fix: address SonarCloud code quality issues (#131) 2025-12-22 09:58:02 -06:00
PULL_REQUEST_TEMPLATE.md docs: update PR template for Aletheia workflow 2025-12-18 10:40:48 -06:00
stale.yml fix(ci): pin Trivy action and update branding 2025-12-19 10:44:32 -06:00