Skip to content

Document feature-specific minimum hosts for split view, LAN, export and player identity #69

Closed

Description

@cchacs

Problem

Splitscreen 1.14.18 has no minimum-host declaration, and its features span several core API generations. A single unqualified compatibility claim hides important degraded modes.

Source-level matrix

  • Basic split view: alpha.1 contains createHighway, renderer lifecycle/switching, chart access and playback contracts used by this plugin.
  • LAN sharing: /ws/sync/{session_id} was added in core 03e1c1d (July 22).
  • Coordinated/offline rendering: renderFrame, renderFrameAt and setExternalFrameDriver were added in this fork's f7c761c (September 16). The live coordinator guards absent APIs; export needs them.
  • Per-player identity/targeted difficulty: playerContexts and player-difficulty.v1 arrived in 7633211 (September 17). _publishPanelContext has a no-op fallback without that API.

Inspected plugin revision: c739c61. Alpha.1 is a source-level candidate for basic mode, not an end-to-end certification. #50 tracks player-context integration; this report tracks compatibility declarations.

Requested change

  • Publish separate required/optional feature requirements and identify upstream versus get-flashbacks-only commits.
  • Test basic split operation against alpha.1 and the complete feature set against a baseline containing the later commits.
  • Gate unsupported LAN/export/player-identity features with clear diagnostics.
  • Record a tested minimum host and the Splitscreen version required by Visual Export; coordinate with Declare the correct minimum host version feedback-plugin-visual-export#6.
  • Do not raise the basic-mode minimum solely because an optional feature has a newer dependency.

The lyrics-only offline export failure is a separate plugin defect, not proof that a newer host is missing the API.

Core compatibility tracking: get-flashbacks/feedBack#102

Activity

  1. pullfrog commented on Sep 26, 2026

    @pullfrog
  2. added theissue type on Sep 26, 2026
  3. cchacs commented on Oct 1, 2026

    @cchacs
    CollaboratorAuthor

    @pullfrog please build this (Effort: Low). Publish the feature-specific minimum-host matrix described in the issue (basic split view, LAN sharing, coordinated/offline rendering, per-player identity), separating required from optional features. Cite the core commits named in the issue rather than inventing version numbers, and don't put a minHost in the manifest that hasn't been tested. Follow the repo's CLAUDE.md (version bump and CHANGELOG if the change is user-visible) and open a PR against main. Please don't merge it.


    Generated by Claude Code

  4. pullfrog commented on Oct 1, 2026

    @pullfrog

    Opened PR #77: #77

    Docs — README gained a "Host compatibility" section with the per-feature matrix (basic split view = required floor, source-level check at v0.3.0-alpha.1; LAN 03e1c1d on canonical + fork main; coordinated/offline frames f7c761c and player identity 7633211, fork-only), a "Checking your host" hostFeatures() example, and "Why there is no minHost" (core exposes it as unenforced metadata and the basic path isn't yet certified end-to-end). CLAUDE.md carries the same matrix plus the rules for these paths.

    Code — no minHost; instead each unsupported optional feature now says so once naming the core commit it wants (_warnOnce, plus a toast for the relay so a share nobody can join has an on-screen reason), and hostFeatures() reports the same answers for consumers. One predicate per feature is shared by the probe and the guarded call site (_hasPlayerContextApi, _recordHostFrameApi), and a relay socket that never opens is counted across every attempt — including a WebSocket the browser refuses to construct — before being diagnosed after three; the reconnect loop is untouched.

    Verification — node tests/screen.test.js: 196 tests, all pass (14 in the new host-feature diagnostics section); node --check screen.js clean; version bumped 1.14.21 → 1.15.0.

    Not merging — left for review.

    Pullfrog  | View workflow run | via Pullfrog | Using big-pickle (free) | 𝕏

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

    documentationImprovements or additions to documentation

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions