tests: un-skip sweep — 26 tests revived on the JSPI build, failures re-gated with fresh evidence
Empirical pass over every skip/fixme whose premise the JSPI migration could have changed. Revived (verified green): - Firefox wasm-budget guards RETIRED (drift-trio, drift-trio-fuzz, drift-trio-scenarios, ysync-two-tab, ysync-libsymbols): the JSPI build (~half the asyncify size) fits three editor tabs inside Firefox 153's per-process budget — +20 firefox collab tests. - roundtrip 'pcbnew preserves items through a yjs round trip': the asyncify-fragile envelope parse it waited on is gone — both engines. - drift-trio-scenarios S4/S4b: converge now (was KNOWN ~5-8%). - pcbnew-collab + eeschema-collab 'a local move propagates A→B'. - web eeschema-fp-selector, read-only-editor's fixme'd writer-stream test, footprint-browse-remote read path (chromium; firefox gated: FootprintEnumerate rows never appear in 60s — slow wasm tier suspected). Still broken, re-gated with re-verified reasons: - 3d-viewer raytracer engine toggle: still inert, both engines. - maximize display geometry: wxDisplay reports 0x0 in the harness. - web editor WRITE bridge (symbol/footprint × remote/spike): wedges at the New Symbol/Footprint dialog step on both engines — the web-e2e-rot 01 gap stands for writes. Verify runs: kicad+wx touched files 93 passed / 0 failed / 7 skipped (intended gates); web touched files 7 passed / 0 failed / 9 skipped. lint:determinism + lint:ci-coverage green. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016X9eh1s5sTx1o9Em9KBuwR
This commit is contained in:
parent
db819850ee
commit
3ee174e9b4
17 changed files with 56 additions and 33 deletions
|
|
@ -35,7 +35,8 @@ async function canvasCenter(page: Page): Promise<{ x: number; y: number }> {
|
|||
// legacy startModal pump was deleted at doc 20 D-1; modals are scheduler
|
||||
// waits now — re-evaluate against the scheduler runtime; see also
|
||||
// docs/features/ngspice-split/README.md "The editor side").
|
||||
test.skip('symbol chooser footprint selector populates and preview renders (eeschema)', async ({ page }) => {
|
||||
test( // re-enabled 2026-08-13: the chooser fp-selector flow revived on the JSPI build (both engines)
|
||||
'symbol chooser footprint selector populates and preview renders (eeschema)', async ({ page }) => {
|
||||
test.setTimeout(420000);
|
||||
const logs: string[] = [];
|
||||
page.on('console', (m) => logs.push(`[${m.type()}] ${m.text()}`));
|
||||
|
|
|
|||
|
|
@ -84,7 +84,14 @@ async function dblclickRow(page: Page, re: RegExp): Promise<string | null> {
|
|||
// KNOWN-BROKEN: the fp/sym editor kicadLibs enumerate/save flows are dead
|
||||
// (docs/features/web-e2e-rot/01-editor-lib-bridge-flows.md). fixme, not fail:
|
||||
// on CI this dies in a 180s boot timeout per engine — running it buys no signal.
|
||||
test.fixme('footprint editor browses + loads a real ingested footprint (read path / version cap)', async ({ page }) => {
|
||||
// Re-enabled 2026-08-13: the read path revived on the JSPI build (chromium).
|
||||
test(
|
||||
'footprint editor browses + loads a real ingested footprint (read path / version cap)', async ({ page }) => {
|
||||
test.skip(
|
||||
test.info().project.name.includes('firefox'),
|
||||
'FootprintEnumerate child rows never appear on Firefox within 60s — slow ' +
|
||||
'wasm tier suspected (probed 2026-08-13); passes on chromium',
|
||||
);
|
||||
const logs: string[] = [];
|
||||
page.on('console', (m) => logs.push(`[${m.type()}] ${m.text()}`));
|
||||
page.on('pageerror', (e) => logs.push(`[pageerror] ${e.message}`));
|
||||
|
|
|
|||
|
|
@ -43,7 +43,10 @@ async function clickTreeRow(page: Page, label: string): Promise<boolean> {
|
|||
// KNOWN-BROKEN: the fp/sym editor kicadLibs enumerate/save flows are dead
|
||||
// (docs/features/web-e2e-rot/01-editor-lib-bridge-flows.md). fixme, not fail:
|
||||
// on CI this dies in a 180s boot timeout per engine — running it buys no signal.
|
||||
test.fixme('footprint editor save persists to the backend (remote write round-trip)', async ({ page }) => {
|
||||
// Probed 2026-08-13 on the JSPI build: still dead — wedges at the New Symbol/
|
||||
// Footprint dialog step on BOTH engines (web-e2e-rot 01 stands for writes).
|
||||
test.fixme(
|
||||
'footprint editor save persists to the backend (remote write round-trip)', async ({ page }) => {
|
||||
const owner = `e2e-fp-${Date.now()}`;
|
||||
const logs: string[] = [];
|
||||
page.on('console', (m) => logs.push(`[${m.type()}] ${m.text()}`));
|
||||
|
|
|
|||
|
|
@ -34,7 +34,10 @@ async function bootFootprintEditor(page: Page): Promise<void> {
|
|||
// KNOWN-BROKEN: the fp/sym editor kicadLibs enumerate/save flows are dead
|
||||
// (docs/features/web-e2e-rot/01-editor-lib-bridge-flows.md). fixme, not fail:
|
||||
// on CI this dies in a 180s boot timeout per engine — running it buys no signal.
|
||||
test.fixme('footprint editor save routes through the pcbjam_fp write bridge (main thread)', async ({ page }) => {
|
||||
// Probed 2026-08-13 on the JSPI build: still dead — wedges at the New Symbol/
|
||||
// Footprint dialog step on BOTH engines (web-e2e-rot 01 stands for writes).
|
||||
test.fixme(
|
||||
'footprint editor save routes through the pcbjam_fp write bridge (main thread)', async ({ page }) => {
|
||||
const logs: string[] = [];
|
||||
page.on('console', (m) => logs.push(`[${m.type()}] ${m.text()}`));
|
||||
page.on('pageerror', (e) => logs.push(`[pageerror] ${e.message}`));
|
||||
|
|
|
|||
|
|
@ -231,7 +231,7 @@ test("a writer's edits stream into the viewer live (and never the reverse)", asy
|
|||
// for two fully WRITABLE tabs on a fresh kicad_editor build (the previous
|
||||
// CI artifacts were built at an older kicad rev). Un-fixme once the
|
||||
// envelope/parser mismatch is fixed on main.
|
||||
test.fixme();
|
||||
// fixme removed 2026-08-13: passes on the JSPI build (both engines):
|
||||
|
||||
const itemId = await writer.evaluate(() =>
|
||||
(window as unknown as W).Module.kicadCollabTestSelectFirst(),
|
||||
|
|
|
|||
|
|
@ -21,7 +21,10 @@ const BACKEND = process.env.BACKEND_URL ?? 'http://localhost:3060';
|
|||
// KNOWN-BROKEN: the fp/sym editor kicadLibs enumerate/save flows are dead
|
||||
// (docs/features/web-e2e-rot/01-editor-lib-bridge-flows.md). fixme, not fail:
|
||||
// on CI this dies in a 180s boot timeout per engine — running it buys no signal.
|
||||
test.fixme('symbol editor save persists to the backend (remote write round-trip)', async ({ page }) => {
|
||||
// Probed 2026-08-13 on the JSPI build: still dead — wedges at the New Symbol/
|
||||
// Footprint dialog step on BOTH engines (web-e2e-rot 01 stands for writes).
|
||||
test.fixme(
|
||||
'symbol editor save persists to the backend (remote write round-trip)', async ({ page }) => {
|
||||
// Unique owner per run so the test is isolated from prior runs.
|
||||
const owner = `e2e-${Date.now()}`;
|
||||
const logs: string[] = [];
|
||||
|
|
|
|||
|
|
@ -31,7 +31,10 @@ async function bootSymbolEditor(page: Page): Promise<void> {
|
|||
// KNOWN-BROKEN: the fp/sym editor kicadLibs enumerate/save flows are dead
|
||||
// (docs/features/web-e2e-rot/01-editor-lib-bridge-flows.md). fixme, not fail:
|
||||
// on CI this dies in a 180s boot timeout per engine — running it buys no signal.
|
||||
test.fixme('symbol editor save routes through the pcbjam write bridge (main thread)', async ({ page }) => {
|
||||
// Probed 2026-08-13 on the JSPI build: still dead — wedges at the New Symbol/
|
||||
// Footprint dialog step on BOTH engines (web-e2e-rot 01 stands for writes).
|
||||
test.fixme(
|
||||
'symbol editor save routes through the pcbjam write bridge (main thread)', async ({ page }) => {
|
||||
const logs: string[] = [];
|
||||
page.on('console', (m) => logs.push(`[${m.type()}] ${m.text()}`));
|
||||
page.on('pageerror', (e) => logs.push(`[pageerror] ${e.message}`));
|
||||
|
|
|
|||
Loading…
Reference in a new issue