Files
hq/04-ISSUES/167-code-several-modules-share-has-no-home/00-report.md
T
jschoubben ea0c62355c
mesh/delivery merged: source.main moved to novox/hq@c2f4bb2d485d
mesh/delivery-group group words/catalog merged: every member is merged
mesh/check pass ea0c62355c1c on eec73b8af0d7 | carried from 292232dad226 | unit 39 run, 0 kept, 1 skipped | integration 39 run, 0 kept, 1 skipped | co…
The glossary's word is catalog: replace the spelling catalogue in running prose
2026-10-28 11:27:34 +01:00

1.1 KiB

opened
opened
2026-09-30

167 — Code several modules share has no home

What was observed

The download-stack write-in step (register download clients and torznab indexers through the Servarr API) is identical for sonarr, radarr, lidarr and bookshelf. Because a module builds from its own directory, it now exists as four byte-identical copies under modules/<m>/downloads/, kept honest by a test that fails when one differs. The same shape repeats: an MQTT probe copied into two modules, and a "write the provider into the app through its API, idempotently, refuse a minted value" step in ombi, home-assistant, nodered, tautulli and the four downloaders.

What would be right

A home for shared module code the builder can use — an sdk helper (a write-in step harness: read bindings and pair credentials, probe the provider, diff, write, report) or a shared package the catalog builds once — so a fix lands in one place.

Re-checked 2026-10-08: still holds. The media catalog still carries the download-stack write-in step as four copies, one under each of the four downloaders' downloads/.