Part of #551. Implementation slice 6/6.
Blocked by: #554 Blocked by: #555 Blocked by: #556
Deliver slice 6 and close the complete feature only with observed distributed-application evidence on every supported channel.
Exercise real NetEase sign-in, account/session expiry, playlists/search, Online Preview, single/batch/playlist Streaming Import, Keep/Replace/Apply to Remaining/cancellation/conflicts, update/pin/revocation, restart, disable/sign-out/uninstall and local-song preservation. Cover fresh offline setup, interrupted/failed installs, invalid/incompatible/unstartable updates and preservation of a usable installed version.
Use unchanged host plus NetEase and the executable second-source fixture for capability/auth/pagination/colliding-id acceptance. Never place real credentials in logs/artifacts. Record exact tested release, hashes, OS/security environment, quarantine/Gatekeeper and Defender outcomes. Record Flathub policy approval separately from sandbox execution.
Acceptance: complete traceable evidence for the specification, including backend build without Node and local-first workflows. Browser automation does not substitute for native authentication, WebView ownership, runtime policy, or OS security behavior. YouTube resource updates are explicitly out of scope. All six slices must finish before #418 reaches main.
Required workflow
Work from the integration branch in an isolated worktree. Read the parent specification in full. Use TDD at its approved application-facing seam, with a real stdio process for plugin integration. Merge integration tip before reporting. Do not close without acceptance evidence. Resolve by evidence comment, closure, and a pointer on the parent map.
Maintainer-reassigned platform acceptance
Own actual Flatpak sandbox install/execution with channel-bundled pinned Node and signed downloadable JS packages; fix the existing pnpm tarball packaging failure as part of this acceptance. Do not infer Flathub approval: none exists; first-submission rejection of JS downloads triggers explicit Flatpak feature omission in Settings/release notes. Intel macOS missing runner evidence, if any from #553, must be completed here.