4gray
a2fafcfc08
test(performance): add end-to-end Xtream benchmark harness ( #1300 )
...
* docs(performance): plan Xtream benchmark
* feat(xtream-mock-server): add deterministic 100k fixture
* style(xtream-mock-server): apply repository formatting
* fix(xtream-mock-server): harden performance fixture data
* feat(xtream-mock-server): add performance control plane
* docs(performance): correct Xtream capture plan
* fix(xtream-mock-server): harden performance controls
* fix(xtream-mock-server): harden control lifecycle
* feat(performance): add Xtream preload markers
* feat(performance): trace Xtream main phases
* feat(performance): mark Xtream store publications
* feat(performance): trace Xtream database phases
* feat(performance): trace Xtream delete cancellation
* feat(performance): capture Xtream phase attribution
* feat(performance): mark Sources Xtream refresh
* test(performance): define Xtream benchmark evidence contracts
* test(performance): add Xtream benchmark runner
* test(performance): surface failure evidence writes
* test(performance): align database read clock
* test(performance): preserve capture failure contracts
2026-07-28 08:08:07 +02:00
4gray
24f0dee6f0
test(performance): add formal M3U import benchmark ( #1287 )
...
* test(performance): add formal M3U import benchmark
* test(performance): harden formal capture validity
* test(performance): address benchmark review feedback
2026-07-27 10:34:22 +02:00
4gray
8bafd62932
fix(perf): benchmark the performance build
2026-07-26 22:49:36 +02:00
4gray
28ed38906d
test(perf): add production renderer benchmark build
2026-07-26 22:37:52 +02:00
4gray
f147d4fe37
perf(m3u): stop cancelled refresh workers ( #1268 )
2026-07-26 09:25:51 +02:00
4gray
8fdac824fd
feat(packaging): ship Linux embedded MPV frame-copy runtime ( #1200 )
...
* docs: design Linux frame-copy packaging
* docs: plan Linux frame-copy packaging
* feat(packaging): define Linux frame-copy profiles
* fix(packaging): reject inherited profile names
* feat(embedded-mpv): validate staged Linux runtime
* fix(embedded-mpv): require Linux source packages
* fix(embedded-mpv): harden Linux runtime staging
* feat(embedded-mpv): build LGPL Linux runtime
* fix(embedded-mpv): pin Linux runtime inputs
* feat(embedded-mpv): build relocatable Linux helper
* fix(embedded-mpv): require bundled Linux runtime
* fix(embedded-mpv): make Linux runtime portable
* feat(packaging): ship Linux frame-copy artifacts
* fix(embedded-mpv): verify Linux helper linkage
* fix(packaging): enforce Linux frame-copy isolation
* fix(embedded-mpv): pin Linux display data
* docs(embedded-mpv): document Linux frame-copy packaging
* feat(embedded-mpv): probe Linux frame-copy runtime
* test(embedded-mpv): smoke packaged Linux frame-copy
* docs(embedded-mpv): clarify Linux system runtime baseline
* fix(embedded-mpv): harden Linux runtime capability gate
* ci: verify Linux frame-copy packages
* test(embedded-mpv): harden packaged Linux smoke
* test(embedded-mpv): preserve packaged GL mode
* test(packaging): harden Linux package probes
* fix(embedded-mpv): enable private Snap shared memory
* fix(embedded-mpv): sanitize Linux helper environment
* fix(packaging): enforce private Snap memory semantics
* fix(packaging): reject ambiguous Snap memory metadata
* fix(embedded-mpv): prioritize trusted Snap GL
* fix(packaging): reject advanced Snap YAML semantics
* fix(packaging): reject arbitrary Snap YAML aliases
* feat(packaging): ship Linux runtime license notices
* docs(embedded-mpv): document Linux runtime distribution
* fix(packaging): parse Snap trailing comments safely
* fix(release): gate Snap publish on public source release
* fix(packaging): strip VCS metadata from source bundle
* docs(packaging): clarify Linux source release gate
* test(embedded-mpv): smoke missing bundled libmpv
* style(embedded-mpv): format final validation inputs
* fix(e2e): satisfy fixture index signature typing
* fix(ci): declare fontconfig gperf generator
* fix(embedded-mpv): hash runtime cache identities
* fix(packaging): harden Linux frame-copy delivery
* fix(packaging): tighten runtime delivery gates
* fix(ci): decouple Linux runtime matrix
* fix(packaging): harden Linux frame-copy delivery
* fix(packaging): validate Linux frame-copy runtimes
* fix(packaging): scope Snap Electron library checks
* feat(packaging): ship Linux frame-copy runtimes
* fix(packaging): improve Linux runtime smoke diagnostics
* fix(packaging): expose bounded helper probe details
* test(packaging): trace Snap EGL probe failures
* fix(packaging): prefer core22 ABI in Snap helper
* fix(packaging): bound helper probe capture
* fix(packaging): harden Linux frame-copy releases
* fix(packaging): canonicalize libplacebo submodule identity
* fix(packaging): make source archive inspection portable
* fix(packaging): harden Snap release verification
2026-07-18 17:28:22 +02:00
4gray
2d5c4fa4f9
chore: tighten validation and runtime logging
...
* chore: tighten validation and runtime logging
* fix(i18n): localize new settings labels
2026-05-15 17:43:42 +02:00
4gray
d24c77a143
chore(nx): enforce scoped workspace boundaries ( #942 )
2026-05-15 09:59:06 +02:00
4gray
973423a2b5
test(e2e): enhance Electron E2E tests with new build configurations and clear favorites functionality
...
Entire-Checkpoint: c6e522b4276c
2026-04-19 23:09:17 +02:00
4gray
81c2aab829
test(e2e): add end-to-end tests for playlist import, providers, and settings persistence
...
- Implemented tests for importing M3U playlists via native dialog.
- Added smoke tests for loading Xtream and Stalker content through IPC.
- Created tests to verify persistence of remote control settings across app restarts.
- Updated smoke tests to check for main window properties and workspace content rendering.
refactor(electron-backend): enhance store service and database path handling
- Modified store service to use a dynamic configuration directory based on environment.
- Refactored database connection to utilize new path utility functions for better path management.
fix(e2e): improve test selectors and structure for better reliability
- Updated test selectors in web-e2e tests to use role-based queries for better accessibility.
- Refactored settings tests to reduce redundancy and improve clarity.
chore(e2e): update TypeScript configuration for better inclusion of test files
- Adjusted tsconfig.json to ensure proper inclusion of e2e test files.
Entire-Checkpoint: bb9a8e2e351e
2026-03-17 23:30:16 +01:00
4gray
e8a80fdb60
test(electron): add Playwright smoke E2E tests for app
...
Add a new Electron smoke test suite using Playwright to verify the
packaged application starts, renders the main window, and exposes
expected window properties. The tests launch the built Electron main
bundle, locate the primary (non-DevTools) window, wait for DOM load,
and assert the title contains "IPTVnator". They also check window
visibility and bounds, validate rendered body content, and capture
screenshots to dist/test-results/electron-backend-e2e for debugging.
Include helpers to resolve project paths, ensure the screenshot
directory exists, and robustly find the main application window. Set
NODE_ENV and ELECTRON_IS_DEV to ensure the app loads built artifacts.
2026-01-09 12:53:53 +01:00