Summary
Two Playwright E2E tests are currently test.fixme()'d (in tests/e2e/pages.spec.ts):
Dashboard › shows heading and action buttons
Cases page › new case modal has correct fields
Both pages render fine in a normal dev container (Apache + mod_rewrite) but render in a degraded state in the CI E2E job (which serves Nextcloud via a bare php -S, no rewrite).
What CI shows
With the latest fixes in (generateUrl() on the /api/settings fetch — that 404 is gone, the call now returns 200):
- Dashboard (
type: dashboard, CnDashboardPage): the widget grid renders, but the page header does not — no <h2>Dashboard</h2>, no "New Case" / "New Task" / "Refresh dashboard" action buttons — and all 11 dashboard widgets render the "Widget not available" fallback. (In a normal dev env the header renders and several widgets render real content.)
- Cases create dialog: clicking "Add Item" opens the generic
CnFormDialog (<h2>Create Item</h2>) with an empty form body (<div class="cn-form-dialog__form"> contains only whitespace) — CnFormDialog never resolves the case schema's fields. (In a normal dev env procest's CaseCreateDialog opens with the case-type combobox, title/description fields, etc.)
Suspected cause
The procest config import into OpenRegister still aborts partway during occ maintenance:repair (Failed to import configuration for app procest: Property 'caseType' should match format 'uuid' but 'omgevingsvergunning' does not) — OpenRegister's importer doesn't resolve slug references in seed-object data, so the statusType/resultType/roleType/adviesAanvraag seed objects (which reference caseType by slug) fail validation and abort the import. The procest register + schemas are created before the abort, but apparently CnDashboardPage/CnFormDialog's page-config/schema wiring still ends up under-populated in that state. Needs a focused look at @conduction/nextcloud-vue's CnPageRenderer → CnDashboardPage/CnFormDialog (does CnPageRenderer pass title? why does the dashboard header not render when the grid does?) plus OpenRegister's seed-object importer (slug-ref resolution).
Acceptance
Re-enable the two tests once the dashboard header + Cases create-form render correctly under the CI env.
Summary
Two Playwright E2E tests are currently
test.fixme()'d (intests/e2e/pages.spec.ts):Dashboard › shows heading and action buttonsCases page › new case modal has correct fieldsBoth pages render fine in a normal dev container (Apache +
mod_rewrite) but render in a degraded state in the CI E2E job (which serves Nextcloud via a barephp -S, no rewrite).What CI shows
With the latest fixes in (
generateUrl()on the/api/settingsfetch — that 404 is gone, the call now returns 200):type: dashboard,CnDashboardPage): the widget grid renders, but the page header does not — no<h2>Dashboard</h2>, no "New Case" / "New Task" / "Refresh dashboard" action buttons — and all 11 dashboard widgets render the "Widget not available" fallback. (In a normal dev env the header renders and several widgets render real content.)CnFormDialog(<h2>Create Item</h2>) with an empty form body (<div class="cn-form-dialog__form">contains only whitespace) —CnFormDialognever resolves thecaseschema's fields. (In a normal dev env procest'sCaseCreateDialogopens with the case-type combobox, title/description fields, etc.)Suspected cause
The procest config import into OpenRegister still aborts partway during
occ maintenance:repair(Failed to import configuration for app procest: Property 'caseType' should match format 'uuid' but 'omgevingsvergunning' does not) — OpenRegister's importer doesn't resolve slug references in seed-object data, so thestatusType/resultType/roleType/adviesAanvraagseed objects (which referencecaseTypeby slug) fail validation and abort the import. The procest register + schemas are created before the abort, but apparentlyCnDashboardPage/CnFormDialog's page-config/schema wiring still ends up under-populated in that state. Needs a focused look at@conduction/nextcloud-vue'sCnPageRenderer→CnDashboardPage/CnFormDialog(doesCnPageRendererpasstitle? why does the dashboard header not render when the grid does?) plus OpenRegister's seed-object importer (slug-ref resolution).Acceptance
Re-enable the two tests once the dashboard header + Cases create-form render correctly under the CI env.