Skip to content

fix(e2e): the seed asks for the schema slug this app now declares - #578

Merged
rubenvdlinde merged 1 commit into
developmentfrom
fix/seed-asks-for-the-renamed-schema
Sep 5, 2026
Merged

fix(e2e): the seed asks for the schema slug this app now declares#578
rubenvdlinde merged 1 commit into
developmentfrom
fix/seed-asks-for-the-renamed-schema

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

planninq's E2E leg does not fail. It never runs.

[ci-seed] schemas present: [… 'plannedTimeEntry', 'project', 'projectPhase', 'task' …]
##[error]Planninq schemas missing after import: ['timeEntry']
##[error]The e2e suite cannot seed a project, columns, tasks or labels without them.
##[error]Seed command failed with exit 1: bash apps/planninq/tests/e2e/ci-seed.sh

Read those two lines together: the schema imported fine, under the name it now has. #575 renamed timeEntry to plannedTimeEntry — three apps declared a timeEntry, and a schema slug is global per organisation — and the seed's required-schema list still asked for the old one.

That rename was careful. It shipped RenameTimeEntrySchemaSlug in both <post-migration> and <install>, and the commit message explains why the import's not-found branch would otherwise create a second schema and orphan every existing entry. It just missed this list, which is the hiding place that costs the most: the seed exits before Playwright starts, so every spec is reported as not run rather than as failing, and the leg looks like one broken seed instead of a suite that never executed.

Verified

bash -n on the script, and every one of the six required slugs checked against lib/Settings/planninq_register.json on development — all declared. The suite itself runs on the development push, since the E2E leg is skipping on pull requests.

🤖 Generated with Claude Code

#575 renamed `timeEntry` to `plannedTimeEntry` — three apps declared a
`timeEntry` and a schema slug is global per organisation. The seed's
required-schema list still asked for the old name.

That is the ninth hiding place a slug rename has, and the one that costs
the most: the seed exits 1 before Playwright starts, so the whole suite
is reported as NOT RUN rather than as failing. On development:

    ##[error]Planninq schemas missing after import: [timeEntry]
    ##[error]The e2e suite cannot seed a project, columns, tasks or labels
    ##[error]Seed command failed with exit 1

...while the line above it listed `plannedTimeEntry` among the 28 schemas
that had in fact imported.

Verified against `lib/Settings/planninq_register.json` on development:
every one of the six required slugs is declared.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/planninq @ 57c9d5c

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
build
check-manifest
check-l10n-js
check-schema-l10n
composer ✅ 104/104
npm ✅ 536/536
app:check-code ⏭️
info.xml
REUSE
PHPUnit
Newman
Playwright ⏭️ deferred — runs on the promotion into beta/main, not on a pull request into development
Hydra gates

Quality workflow — 2026-09-05 14:09 UTC

Download the full PDF report from the workflow artifacts.

@rubenvdlinde

Copy link
Copy Markdown
Contributor Author

Merging with check:schema-l10n red, deliberately. It is pre-existing and this change adds no schema string — it edits tests/e2e/ci-seed.sh only.

Measured on a clean origin/development archive: 137 uncovered against a baseline of 135, identical without this branch. The two that landed since the baseline (d05199f) both came in with #575, and both are written in Dutch inside the schema:

  • Urenboeking
  • De humaniq \TimeEntry` waarop deze uren geboekt zijn. Een platte uuid en geen `$ref`: humaniq's register is een ander register, en ADR-062 regel 7 geeft een doel buiten dit register geen `$ref`.`

Worth a look by whoever owns #575, because covering them is not just adding keys: l10n/en.json is the English source, so an identity entry holding Dutch would make the catalogue lie. The schema strings want rewriting in English first, and the second one reads as a note to a developer rather than a description a user should see on a form.

This PR is the seed fix: it asked for timeEntry after #575 renamed the slug to plannedTimeEntry, and the seed exits before Playwright starts, so the whole suite was reported as not run.

@rubenvdlinde
rubenvdlinde merged commit 9a229f1 into development Sep 5, 2026
40 of 42 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant