π Docs drift report
Comparing v3.16.0 β HEAD against Maintainerr_docs. Informational only - maintainers decide what needs doc updates before release.
Rule glossary parity
- Code rule keys (
rules.constants.ts): 171
- Documented keys (
docs/Glossary.md): 165
In code but missing from Glossary (6)
Radarr.movieId
Radarr.movieTitle
Sonarr.episodeFileRank
Sonarr.seasonFileRank
Sonarr.seriesId
Sonarr.seriesTitle
New migrations on this branch
No new migrations.
Rule constants
rules.constants.ts changed: +49 / -3 lines
- Review rule tables in
docs/Rules.mdx and entries in docs/Glossary.md.
Public contracts (@maintainerr/contracts)
- Modified (11):
packages/contracts/src/collections/logs.ts
packages/contracts/src/media-server/features.ts
packages/contracts/src/media-server/sort-utils.ts
packages/contracts/src/overlays/overlay-element.ts
packages/contracts/src/overlays/overlay-provider-dtos.ts
packages/contracts/src/overlays/overlay-template.ts
packages/contracts/src/rules/rule.ts
packages/contracts/src/settings/download-client/downloadClientSetting.ts
packages/contracts/src/settings/servarr/arrTag.ts
packages/contracts/src/streamystats/watchlists.ts
packages/contracts/src/uploads/index.ts
Public DTO changes may affect docs/API.md and the OpenAPI spec in static/openapi-spec/maintainerr_api_specs.yaml.
New HTTP controllers
No new controllers.
feat: commits on this branch
- 175887a0 feat(rules): add Sonarr seasonFileRank for season-level rolling windows (#3223)
- d78a1b8f feat(rules): add Radarr movieTitle/movieId scoping properties (#3222)
- 848d88d9 feat(rules): add Sonarr episodeFileRank with seriesTitle/seriesId scoping (#3095)
Behavioral fixes worth reviewing
- 8338ab02 fix(rules): plainer labels for the rank properties (#3224)
- touched:
apps/server/src/modules/rules/constants/rules.constants.ts
- 2090276d fix(collections): distinguish a missing library from an empty one (#3203) (#3211)
- touched:
apps/server/src/modules/collections/collections.service.spec.ts, apps/server/src/modules/collections/collections.service.ts
- 2406e8c4 fix: keep server booting when sharp can't load on pre-x86-64-v2 CPUs (#3184)
- touched:
README.md, apps/server/src/modules/collections/collection-poster.service.ts, apps/server/src/modules/overlays/overlay-render.service.ts, apps/server/src/modules/overlays/overlays.controller.ts
fix: commits that touched a doc-worthy surface - the UI, any server module except internal-only events/logging, any controller, or the README. Worth scanning to decide whether observable behavior changed enough to warrant a docs note.
Documentation-labeled issues & PRs
Merged PRs labeled documentation (1):
Manually tagged with the documentation label - confirm each is reflected in Maintainerr_docs before release.
π€ Documentation-labeled issues resolved by merged PRs
Analyzing 3 merged PRs that closed documentation-labeled issues since v3.16.0.
PR #106 - build(deps-dev): bump prettier from 2.6.2 to 2.7.1
Resolves: #3220
No docs changes needed.
PR #3095 - feat(rules): add Sonarr episodeFileRank with seriesTitle/seriesId scoping
Resolves: #3220
- docs/Rules.mdx: Add entries for the new Sonarr rule properties (
episodeFileRank, seriesTitle, seriesId) in the rule-property list. Include descriptions for each property as outlined in the PR body.
- docs/Glossary.md: Add definitions for the new Sonarr rule properties:
- episodeFileRank: Rank of an episode within its show by air date, newest = 1, computed only over episodes currently on disk (
hasFile === true). Availability: episodes. Type: number.
- seriesTitle: The Sonarr series title, case-insensitive. Availability: shows, seasons, episodes. Type: text.
- seriesId: The Sonarr series ID, a stable scope handle for destructive rules. Availability: shows, seasons, episodes. Type: number.
PR #3222 - feat(rules): add Radarr movieTitle/movieId scoping properties
Resolves: #3220
- docs/Rules.mdx: Add a section under "Creating rules" to document the new Radarr
movieTitle and movieId properties, including their usage for scoping, the case-insensitivity of movieTitle, and the null/undefined behavior for unresolved movies.
- docs/Glossary.md: Add entries for the new Radarr properties:
- Movie title
:::info
The title of the Radarr movie. Matching is case-insensitive.
:::
- Key: Radarr.movieTitle
- Availability: movies
- Type: text
- Movie ID
:::info
The unique Radarr ID of the movie. This is a rename-proof handle for scoping.
:::
- Key: Radarr.movieId
- Availability: movies
- Type: number
AI suggestions are informational and may be incomplete or wrong. Always review the actual PR diff before writing docs.
π€ Guidance for Copilot opening the docs PR
Open a PR on Maintainerr_docs that addresses this drift report, following these rules:
- Always work from local clones, not github.com web views (they can be cached or truncated).
Clone Maintainerr/Maintainerr and Maintainerr/Maintainerr_docs before anything else.
- Read complete files, not excerpts or partial reads. Coverage you would otherwise miss often
sits past the first screenful - read each doc file and each commit diff end-to-end.
- Source of truth: the upstream Maintainerr commits and file diffs listed above.
Use the prose summary as guidance, but always confirm against the local clone
(git show <sha>) before editing.
- Skip what's already documented: read the current
main branch of Maintainerr_docs
and the most recent merged docs PRs first. If something is already covered, do not
re-document it.
- Minimal edits only: make only the doc updates that are still missing for the Next
release. No speculative additions, no broad rewrites.
- Doc-only changes: restrict edits to files under
docs/ and static/openapi-spec/.
Do not touch sidebars, config, or unrelated assets unless strictly required by a doc edit.
- PR description structure:
- What was added - one short bullet per doc edit, citing the upstream commit or PR.
- Already covered by prior PRs - list anything from this drift that earlier merged
docs PRs already documented, so reviewers can confirm it's intentionally skipped.
- Keep the PR focused and tied to the actual code diff rather than the issue summary alone.
π Docs drift report
Comparing
v3.16.0βHEADagainst Maintainerr_docs. Informational only - maintainers decide what needs doc updates before release.Rule glossary parity
rules.constants.ts): 171docs/Glossary.md): 165In code but missing from Glossary (6)
Radarr.movieIdRadarr.movieTitleSonarr.episodeFileRankSonarr.seasonFileRankSonarr.seriesIdSonarr.seriesTitleNew migrations on this branch
No new migrations.
Rule constants
rules.constants.tschanged: +49 / -3 linesdocs/Rules.mdxand entries indocs/Glossary.md.Public contracts (
@maintainerr/contracts)packages/contracts/src/collections/logs.tspackages/contracts/src/media-server/features.tspackages/contracts/src/media-server/sort-utils.tspackages/contracts/src/overlays/overlay-element.tspackages/contracts/src/overlays/overlay-provider-dtos.tspackages/contracts/src/overlays/overlay-template.tspackages/contracts/src/rules/rule.tspackages/contracts/src/settings/download-client/downloadClientSetting.tspackages/contracts/src/settings/servarr/arrTag.tspackages/contracts/src/streamystats/watchlists.tspackages/contracts/src/uploads/index.tsPublic DTO changes may affect
docs/API.mdand the OpenAPI spec instatic/openapi-spec/maintainerr_api_specs.yaml.New HTTP controllers
No new controllers.
feat:commits on this branchBehavioral fixes worth reviewing
apps/server/src/modules/rules/constants/rules.constants.tsapps/server/src/modules/collections/collections.service.spec.ts,apps/server/src/modules/collections/collections.service.tsREADME.md,apps/server/src/modules/collections/collection-poster.service.ts,apps/server/src/modules/overlays/overlay-render.service.ts,apps/server/src/modules/overlays/overlays.controller.tsfix:commits that touched a doc-worthy surface - the UI, any server module except internal-onlyevents/logging, any controller, or the README. Worth scanning to decide whether observable behavior changed enough to warrant a docs note.Documentation-labeled issues & PRs
Merged PRs labeled
documentation(1):Manually tagged with the
documentationlabel - confirm each is reflected in Maintainerr_docs before release.π€ Documentation-labeled issues resolved by merged PRs
Analyzing 3 merged PRs that closed
documentation-labeled issues sincev3.16.0.PR #106 - build(deps-dev): bump prettier from 2.6.2 to 2.7.1
Resolves: #3220
No docs changes needed.
PR #3095 - feat(rules): add Sonarr episodeFileRank with seriesTitle/seriesId scoping
Resolves: #3220
episodeFileRank,seriesTitle,seriesId) in the rule-property list. Include descriptions for each property as outlined in the PR body.hasFile === true). Availability: episodes. Type: number.PR #3222 - feat(rules): add Radarr movieTitle/movieId scoping properties
Resolves: #3220
movieTitleandmovieIdproperties, including their usage for scoping, the case-insensitivity ofmovieTitle, and thenull/undefinedbehavior for unresolved movies.:::info
The title of the Radarr movie. Matching is case-insensitive.
:::
:::info
The unique Radarr ID of the movie. This is a rename-proof handle for scoping.
:::
AI suggestions are informational and may be incomplete or wrong. Always review the actual PR diff before writing docs.
π€ Guidance for Copilot opening the docs PR
Open a PR on Maintainerr_docs that addresses this drift report, following these rules:
Clone
Maintainerr/MaintainerrandMaintainerr/Maintainerr_docsbefore anything else.sits past the first screenful - read each doc file and each commit diff end-to-end.
Use the prose summary as guidance, but always confirm against the local clone
(
git show <sha>) before editing.mainbranch of Maintainerr_docsand the most recent merged docs PRs first. If something is already covered, do not
re-document it.
release. No speculative additions, no broad rewrites.
docs/andstatic/openapi-spec/.Do not touch sidebars, config, or unrelated assets unless strictly required by a doc edit.
docs PRs already documented, so reviewers can confirm it's intentionally skipped.