test(ci): [CI-01] cover installed Danmuku and native Mask combinations

This commit is contained in:
Harvey Zhao committed 2026-09-15 03:56:05 +08:00
1 parent 54169fdca1
commit 92b04d75c0
27 files changed
+8768 -72

No files matched your search

@@ -185,3 +185,20 @@ Native acceptance still needs source changes, multiple players, failure recovery
devices and internal GPU/WASM resources. The default unversioned solutionPath can
load assets independently of Yarn's SDK resolution. PKG-MASK-05/06 retain the
real combination and distribution/release gates after source/type migration.
## Installed package and local model validation
`yarn test:package --browser` prepares Mask and Danmuku. With its map in
ARTPLAYER_BROWSER_ARTIFACTS, `yarn test:browser:installed danmuku-mask-native`
uses verified installed wrappers and the same fixed local model. The SDK included
in the bundle and model assets loaded through solutionPath have distinct origins;
the model is not inside the Mask tarball. The server verifies model bytes before
serving and records their file/baseline hashes in its manifest. Only metadata
newline conversion is tolerated; executed scripts and binaries are exact.
Each combination records both wrapper identities; published Danmuku controls
remain present. Missing/tampered installed bundles cannot rebuild from source.
Installed mode rejects ARTPLAYER_MASK_PROFILE=1; explicit source profiling remains
available. Native model output, CSS masking, bounded post-ready load, GPU closure,
physical devices and redistribution evidence retain their separate gates. See
../../refactor/changes/2026-09-15-CI-01-danmuku-installed.md for actual results.
@@ -398,3 +398,20 @@ require native Worker completion and visible DOM before testing replacement or
destruction. The separate pause/seek/rate case observes the original ready getter
without changing its result and records bounded native media-time/queue samples
to distinguish eligibility misses from placement failures.
## Installed browser matrix
`yarn test:package --browser` prepares the shared package roster. Set its
browser-artifacts.json as ARTPLAYER_BROWSER_ARTIFACTS and run
`yarn test:browser:installed danmuku --workers=2`. Candidate browser loaders
verify installed UMD bytes and reject conflicting explicit artifacts; the Worker
remains the one embedded in that bundle. Historical baseline/load suites retain
their frozen inputs. Source mode still compiles the normal UMD, and controlled
unit-test bundlers remain separate from native browser execution.
Selected-input attachments record candidate or published identity; PiP and Mask
combinations identify each selected package separately. Native video, DOM, RAF,
Worker and fullscreen checks retain existing assertions and timing. Injected
delays, CPU gaps, bounded pressure and capability fallbacks remain explicitly
labeled. Collection does not imply a green matrix or sustained device acceptance.
See ../../refactor/changes/2026-09-15-CI-01-danmuku-installed.md for actual results.