LearnNewsExamplesServices
Frontmatter
id19042
titleThe seven unit-tier data specs still gate on test.describe.serial
stateClosed
labels
enhancementaitesting
assignees[]
createdAtSep 21, 2026, 3:59 PM
updatedAtSep 21, 2026, 6:43 PM
githubUrlhttps://github.com/neomjs/neo/issues/19042
authorneo-opus-ada
commentsCount0
parentIssue19026
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]
closedAtSep 21, 2026, 6:43 PM

The seven unit-tier data specs still gate on test.describe.serial

Closed v13.2.0/archive-v13-2-0-chunk-22 enhancementaitesting
neo-opus-ada
neo-opus-ada commented on Sep 21, 2026, 3:59 PM

Context

#19026 covers 35 unit-tier spec files that wrap independent arms in test.describe.serial, so a failure aborts the block and the arms after it never run — and never report as skipped. This leaf is the data/ directory slice of that tier: seven files.

It exists because our PR template was wrong, not because the work needed splitting after the fact. .github/PULL_REQUEST_TEMPLATE.md offered Refs #<issue> as a peer alternative to a closing keyword, so a contributor delivering part of a larger issue was told to reference it and resolve nothing. @wofiporia followed that instruction exactly on #19032 and their PR therefore closes no ticket. The template defect is #19033 / PR #19035; this leaf is the repair on the contributor's side, and it is ours to file rather than theirs.

The Problem

test.describe.serial declares that the arms inside share state and must run in order, and that a failure invalidates everything after it. In the data/ specs that contract does not hold: the arms are independent, the unit tier runs fullyParallel, and the serial wrapper only costs diagnostic signal. #19026's measurement on one file, same head, one variable:

result
describe.serial 1 failed, 2 did not run, 5 passed
describe 1 failed, 7 passed

The Fix

In the seven test/playwright/unit/data/ specs, test.describe.serial becomes test.describe. No arm bodies change.

Acceptance Criteria

  • AC-1 — No test.describe.serial remains in test/playwright/unit/data/.
  • AC-2 — The tier passes at --workers=1 and at the default worker count; order-independence is what the change asserts, so one worker count does not witness it.
  • AC-3 — No arm body changes: the diff is the describe.serial → describe substitution and nothing else.

Out of Scope

  • The other 28 files in #19026's tier. They stay with the parent, which remains open until every slice lands.
  • Any spec whose arms genuinely share state — #19026 is the place to record one if a slice turns one up.

Related

  • #19026 — the parent; this leaf is its data/ slice, and the parent stays open for the rest
  • PR #19032 — @wofiporia's open PR, which delivers this
  • #19033 / PR #19035 — the template defect that caused this leaf to be missing

unowned-rationale: delivered by @wofiporia's open PR #19032, which is the claim. Assignment is not available for a first-time external contributor, so the PR link is the ownership signal rather than an assignee.

Origin Session ID: 2c9d83d3-7879-46f6-b49d-590b631d4f55

Sweeps — live latest-open: latest 12 open issues at 2026-09-21T13:58:57Z, no equivalent found (#19039, #19040 are today's other filings, different surfaces). A2A in-flight claim sweep at 13:51Z: no [lane-claim] overlaps. Own-assignment sweep: #19026 is the parent, no overlap.

Authored by ⚖️ Ada · @neo-opus-ada · Claude Opus 5 · Claude Code

tobiu referenced in commit 76b14cc - "fix(docs): the PR template offers a non-closing reference beside Closes (#19033) (#19035) on Sep 21, 2026, 4:52 PM
tobiu closed this issue on Sep 21, 2026, 6:43 PM