mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-14 00:06:17 -08:00
test(vtt-thumbnail): [PKG-VTT-THUMB-05] verify historical core and fullscreen combinations
This commit is contained in:
1 parent
4fa5c68be9
commit
07d5bfef2e
14 files changed
+2984
-10
No files matched your search
@@ -0,0 +1,74 @@
|
||||
# PKG-VTT-THUMB-05: browser combination checkpoint
|
||||
|
||||
Baseline: `4fa5c68be9d2d0d60d725c2a87b8d92a4dc8a85a`. Task05 remains doing;
|
||||
this checkpoint does not claim physical-device or complete distribution acceptance.
|
||||
|
||||
## Inputs and actual coverage
|
||||
|
||||
The new 5.1.6 core snapshot verifies the registry SHA-512, archive SHA-256 and
|
||||
197 archive members. The browser server verifies the actual main entry before
|
||||
serving it. This is the source-associated core for usable VTT 1.0.1, not a newly
|
||||
invented minimum-supported version. Existing frozen 5.1.7, 5.3.0 and 5.4.0 inputs
|
||||
and the current candidate complete the five-core comparison. Npm 5.3.1 was
|
||||
previously found absent; 5.3.0 is only an adjacent published stable comparison.
|
||||
|
||||
`vtt-thumbnail-combinations.spec.js` covers:
|
||||
|
||||
- Candidate plugin on all five cores: actual red/blue preview pixels from DOM
|
||||
screenshots, real pointer positioning, Chapter progress coexistence, native
|
||||
video play/pause, web and native fullscreen, source switching without refetch,
|
||||
unchanged control identity and owned UI removal on destroy.
|
||||
- Actual published 1.0.2/1.0.3/1.1.0 main bundles on candidate core, and 1.0.1
|
||||
on 5.1.6: historical callable/default exports, previews, control identities,
|
||||
source switching and a single VTT fetch. The historical compact-arrow input
|
||||
requirement is explicit; ordinary-arrow parser failures remain separate tests.
|
||||
- Android user-agent profiles with synthetic DOM touch payloads: the actual core
|
||||
gesture handlers emit setBar and perform native media seeking, the preview
|
||||
follows the drag and its real 500ms timer hides it. This is not trusted OS input
|
||||
or physical Android/iOS evidence.
|
||||
- Existing native fetch/abort, malformed input/recovery and lifecycle tests remain.
|
||||
|
||||
The current source build is the plugin input. This is not an installed tarball,
|
||||
every old legacy bundle, a browser-device farm or the online editor. Those gates
|
||||
remain task06/EX-03 and the relevant device/release tasks. No new dependencies,
|
||||
runtime code, public types or shippable build artifacts change in this checkpoint.
|
||||
|
||||
## Findings and failed runs
|
||||
|
||||
VTT 1.0.1 registers `thumbnails`. Actual core 5.1.6 creates its built-in control
|
||||
only when a thumbnail URL is configured, so the plugin can register normally.
|
||||
Core 5.1.7 reserves the control unconditionally. The resulting duplicate-name
|
||||
rejection reproduces on 5.1.7, 5.4.0 and candidate cores in all three engines.
|
||||
The nine explicit failure assertions are historical evidence, not successful
|
||||
old-plugin/new-core acceptance. Preserve the current reserved control; any
|
||||
compatibility accommodation must account for its public identity and duplicate
|
||||
registration behavior. The pairing is recorded as an open release-review issue.
|
||||
|
||||
The initial 27-case run had nine passes and eighteen failures. Fifteen failures
|
||||
came from test-only setBar calls without the event required by newer core hover
|
||||
handlers; the tests now use real mouse movement. Three exposed the 1.0.1 collision.
|
||||
Legal and incompatible combinations now have distinct explicit assertions.
|
||||
|
||||
The expanded 69-case run passed. Adding native fullscreen then produced fourteen
|
||||
passes and one Chromium candidate screenshot timeout. Trace showed actual
|
||||
fullscreen ownership followed by a hidden preview at screenshot time; cleanup
|
||||
also timed out after the interrupted screenshot. Mouse positioning now first
|
||||
uses Playwright's stable/actionable progress hover, then computes the desired
|
||||
position, and verifies visible preview/background before screenshot. The final
|
||||
69-case run passes. This changes test interaction timing, not player code, and
|
||||
does not prove a product fix for every prior timeout. Initial reports are retained;
|
||||
no retry, skip, timeout increase or weaker pixel expectation was introduced.
|
||||
|
||||
## Verification and handoff
|
||||
|
||||
`../baselines/vtt-thumbnail-combinations.json` records exact browser versions,
|
||||
input identities, passes/failures, screenshots/report fingerprints and Node/CI/lint
|
||||
results. Nine passing assertions deliberately confirm historical incompatibility.
|
||||
The task remains open for physical-device evidence, final candidate revalidation
|
||||
and disposition of the old reserved-name pairing; controlled HTTP fixtures do
|
||||
not establish external CDN or every sprite format's behavior.
|
||||
|
||||
The package architecture and environment/browser guides describe actual scope.
|
||||
Revert this checkpoint as one unit to remove the new route, frozen core snapshot,
|
||||
combination tests and evidence without reverting the earlier VTT implementation.
|
||||
Local checkpoint commit only; no push or publication.
|
||||
Reference in new issue
Block a user