Skip to content

Wayfinder map: CI/release pipeline for The Red Wizard repo #12

Closed
10 of 10 issues completed
Closed

Description

@JMAN730

Notes

Goal: a CI/release pipeline for this repo of Kodi addon sources. The live Kodi repository (addons.xml, .md5, zips) is served from https://repo.redwizard.xyz/redwizardrepo/ across three channels: main, 21omega (Kodi 20.9–21.8), 22piers (Kodi 21.9–22.8). The driving contributor has no access to that host — the pipeline ends at a GitHub Release bundle; the site maintainer uploads.

Settled constraints (from the charting grilling):

  • Artifacts land on GitHub Releases — no generated branch, no claim on the hosting.
  • Release trigger: git tag v*, with workflow_dispatch as fallback. CI validation runs on every push/PR.
  • Validation is two-tier: blocking = XML well-formedness (all files), PO validity, python -m py_compile, zip build success; advisory (never blocking) = kodi-addon-checker output as job summary.
  • Scope: only addons whose sources live in this repo (~9 dirs with an addon.xml; TMDb-Helper-Players has none and is excluded). The live server hosts ~28 additional third-party addons — those stay the maintainer's business; the bundle ships ready-made <addon> XML entries for splicing.
  • Versioning: the tag is a bundle version (continuing the v1.7.x line); each zip is named <addon.id>-<version>.zip from its own addon.xml.

Live channel observation (2026-07-06): main carries all repo-owned plugins; 21omega/22piers carry only skins incl. skin.carpc-xtouch_me. service.apkredwizard and service.multiinstallmybinaries are in the repo but not live.

Skills each session should consult: /grilling and /domain-modeling for decisions; /prototype for prototype tickets; docs/agents/issue-tracker.md for tracker conventions.

Decisions so far

Status: route complete — all tickets resolved

The destination (a CI/release pipeline ending at a GitHub Release bundle) is reached: build script, two-tier CI, release workflow, maintainer handoff doc, source cleanups, and hardened blocking checks are all in place. Outstanding merges: PR #22 (mp3streams assets) and PR #25 (cleanups + CI promotion) — trivial one-line conflict between them on the mp3streams version line, second-to-merge keeps 2026.07.07.

Fog

Everything below hangs on maintainer buy-in and cannot be specified without them in the conversation. If the maintainer engages, these graduate into a fresh charting session:

  • Automating the final upload — SSH/rsync/API to repo.redwizard.xyz, or migrating artifact hosting to GitHub Pages behind the domain.
  • Third-party drift detection — should CI warn when the live server's third-party addon versions go stale? Unclear if wanted at all.
  • Contribution flow hardening — branch protection, required checks on PRs.

Activity

  1. JMAN730 commented on Jul 7, 2026

    @JMAN730
    OwnerAuthor

    Route complete — closing the map. All ten tickets resolved (#13–#20, #23, #24). The destination is reached and proven: two-tier CI with promoted XML/PO blocking gates shared between ci.yml and release.yml, tag-triggered release workflow, channel bundles + merge_addons.py maintainer handoff, and cleaned addon sources — all merged to main via PR #21, #22, and #25, with CI green on the post-merge main.

    The Fog section stays on record: upload automation, third-party drift detection, and contribution-flow hardening all await maintainer engagement, and per the map they'd return as a fresh effort, not a resumption of this one.


    Generated by Claude Code

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions