Skip to content

feat(one-guide): add read-only Wrestling view - #203

Merged
Jumpstile merged 2 commits into
mainfrom
feature/issue-191-expanded-one-guide-taxonomy
Oct 2, 2026
Merged

Jumpstile merged 2 commits into
mainfrom
feature/issue-191-expanded-one-guide-taxonomy

Conversation

@Jumpstile

@Jumpstile Jumpstile commented Oct 2, 2026 •

Copy link
Copy Markdown
Owner

Pull Request

Summary

Add a read-only Wrestling category view over the accepted One Guide projection. The category API's window=active option excludes past items before pagination; the GUI renders On Now, Starting Soon, and Coming Up, with guide details and D-pad navigation.

Related to #191. This PR is a presentation dependency only, not complete Wrestling discovery support. It does not independently acquire event schedules or announced cards, fill missing/poor EPG, identify canonical events from titles, or establish whether an offering is playable.

Evidence

  • Focused PowerShell tests: 64 passed (14 OneGuide, 50 WebServer); full Pester suite: 873 passed, 0 failed, across 78 files.
  • Post-review remediation: the new unavailable-state D-pad regression failed before the handler and passes after it; full GUI unit suite: 107 passed across 14 files; typecheck passed; Wrestling Chromium e2e: 1 passed on an isolated port because 5173 was already occupied. Prior hidden-Chromium runtime smoke confirmed sections, details, Escape focus return, and no browser errors.
  • Config schema validation passed; Markdown hygiene passed for 118 files; Markdown links passed (415 links / 118 files); PSScriptAnalyzer reported no Error-severity findings.
  • Prettier passed for all tracked Markdown/JSON/YAML files. The repository-wide local glob also traversed protected ignored/untracked workstation artifacts; those were preserved and not reformatted.
  • Locked Cargo suite's final rerun passed 24/24 on the current snapshot and 24/24 on the unchanged committed base. An earlier current-snapshot run had one failure (tests::classifies_exact_unmatched_and_guide_only_relationships, expected Some(2), got Some(1)); the exact test passed on both base and current snapshots, and the full suite failure did not reproduce. No Rust code or assertion was changed.
  • Local GUI install/checks used Node 26.10.0/npm 12.0.1 (outside the declared Node 22/npm 10 range) in an isolated clean copy after the worktree's existing esbuild executable prevented npm ci from unlinking it. CI uses the supported runtime and remains authoritative. Local Pester was 6.1.0; CI pins 5.7.1. Gitleaks is unavailable locally.

Required Checks

  • Relevant tests pass locally (including full Pester, full GUI unit tests, and final locked Cargo rerun; see anomaly above).
  • Exact-head CI and hosted secret scan pass on a4e71767fe58b7891bf527064fec8829b2419950 (quality-gates and secret-scan both SUCCESS; CI used Node 22 and Pester 5.7.1).
  • Repository documentation updated (DEVELOPER_GUIDE.md, ARCHITECTURE.md, and INTENT_FIT_AUDIT.md).
  • docs/user/ reviewed and updated (CURRENT_LIMITATIONS.md explicitly states accepted-XMLTV-only scope).
  • ADR reviewed; no new ADR is needed for this presentation slice over the existing One Guide API.
  • Exact-head security review of a4e7176 completed with no actionable findings.
  • Exact-head regression and bug review of a4e7176 completed with no further findings. The prior-head D-pad Retry finding is fixed and covered by a failing-before/passing-after test.
  • Vulnerability sweep completed as part of the exact-head security review on a4e7176; no actionable findings.
  • Release impact reviewed: no release, package, or tester distribution is requested by this PR.
  • Go / No-Go release decision: not applicable; this draft PR is not a release candidate and no GO/NO-GO is requested.

Risk

The view reflects only accepted XMLTV. It cannot recover absent or incorrect provider guide data; it does not discover PPV/PLE dates or announced cards independently and does not resolve playback availability. No SER8 performance or <300 ms claim is made. The source matrix in #191 comment #5958323753 documents promotion-owned sources but establishes neither a public API nor permission for automated access, caching, or redistribution; this PR selects no fetch method.

Follow-up Issues

Continue the smallest source-contract/access-rights and adapter slice under #29/#30/#175/#191. Use the matrix's AEW-first, WWE-next sequence while retaining TNA, NJPW, ROH, and MLW as required promotion scope. Before selecting a fetch method, establish permitted access, rights, rate limits, caching/retention, and display rules. Keep event/card discovery independent of XMLTV, version card assertions with provenance, preserve source-local times and unknown timezones, require explicit cancellation evidence, and leave offering availability unknown unless exact service/market/window is corroborated. No new epic.

@Jumpstile Jumpstile added type:feature A wholly new capability priority:high Should be next; significant impact component:ux GUI, review workflows, previews, and user intake labels Oct 2, 2026
@Jumpstile
Jumpstile marked this pull request as ready for review October 2, 2026 21:11
@Jumpstile
Jumpstile merged commit c928666 into main Oct 2, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

component:ux GUI, review workflows, previews, and user intake priority:high Should be next; significant impact type:feature A wholly new capability

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant