Skip to content

Works alone, works with every supported sibling #104

Description

@iderex

This plugin follows the family rule: it works alone, and it works with
every other supported iderex Jellyfin plugin installed at the same time.

Working alone means a stock server with only this plugin comes up clean and
every advertised function works. Where this plugin consumes another by
design, the absence of that other plugin degrades gracefully: a clear
message in the log and the dashboard, no crash, no partial writes.

Working together means the full set of supported plugins installed at once
produces no collisions: no clashing routes, no duplicate scheduled task
names, no fights over configuration keys or shared server state, and no
plugin changing another's behaviour except through a declared interface.

What this issue asks for, so the rule is held by a machine rather than by
care:

  • An integration harness that boots a headless test server per supported
    server line twice: once with this plugin alone, once with the full
    supported set. Both runs must come up without startup errors, answer
    their routes, and pass a collision scan over routes, task names and
    configuration keys. The harness runs without a display and without
    elevated rights, like every test in this repository.
  • The matrix runs in CI on a schedule and before every release, and its
    result is visible on the repository.
  • A red matrix blocks the release until the collision is fixed or the
    incompatibility is documented as a known limitation with its reason.

Done when the harness exists, the first full-matrix run is green on both
server lines, the schedule is active, and the release checklist names the
matrix as a condition.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

blocked-on-upstreamWaiting on a release or a change outside this repository

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions