Skip to content

chore(deps): bump @conduction/nextcloud-vue to 2.30.0 for the Reports page - #1731

Merged
rubenvdlinde merged 2 commits into
developmentfrom
chore/bump-nc-vue-2.30.0
Sep 2, 2026
Merged

chore(deps): bump @conduction/nextcloud-vue to 2.30.0 for the Reports page#1731
rubenvdlinde merged 2 commits into
developmentfrom
chore/bump-nc-vue-2.30.0

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

chore(deps): bump @conduction/nextcloud-vue to 2.30.0 for the Reports page

The four tests/e2e/rapportage.spec.ts failures on development are the last
of that suite's red, and they are not a test problem: the Reports page has
rendered EMPTY since #1691 shipped it.

Root cause, in the library rather than here. CnReportsPage declared two
props — page and translate — and read its cards from
this.page.config.cards. CnPageRenderer.resolvedProps() returns
{ ...topLevel, ...normalizedConfig, ...params }: it spreads the page's
CONFIG KEYS as top-level props and never passes a page object. So page
was always {}, cards was always [], and the component rendered its
empty state for every consumer. The contrast makes the contract obvious —
CnIndexPage declares 96 props precisely because it reads the spread.

Confirmed at runtime rather than inferred: the page MOUNTS (its
cn-reports-empty marker is present) with zero cn-report-card elements,
which is exactly the 0 CI reported against an expected 4.

nextcloud-vue#920 fixed it by declaring cards, categories,
description, title and the label props, with 82 lines of new unit tests,
and 2.30.0 published it. This bump is all that is needed here.

Verified against a build of this branch: /apps/pipelinq/reports renders 4
cn-report-card elements and the "Channel analytics" card is visible.

⚠️ The rest of rapportage.spec.ts cannot be judged on this machine — every
page.goto in it exceeds the spec's 30s budget because a page load takes
~13s against the shared dev container. In CI those same navigations complete
and the failure was the card assertion, which is what this fixes. CI is the
instrument for the remainder.

eslint 0 errors, prettier --check on the FULL glob clean, 59 vitest tests
pass.

⚠️ Two corrections to earlier reports of mine, both from measuring the wrong
world. The export-pages family was already fixed by #1706 and #1711 while I
was working, so development's E2E is 4 failed / 328 passed rather than the
44 I quoted from a stale branch. And my first reading said the reports
page type was unimplemented — that was a stale local node_modules (2.27.2
against a lockfile pinning 2.29.0) plus a bundle-override that did not match
?v= query strings. Both instruments were wrong; the CI log settled it.

… page

The four `tests/e2e/rapportage.spec.ts` failures on development are the last
of that suite's red, and they are not a test problem: the Reports page has
rendered EMPTY since #1691 shipped it.

Root cause, in the library rather than here. `CnReportsPage` declared two
props — `page` and `translate` — and read its cards from
`this.page.config.cards`. `CnPageRenderer.resolvedProps()` returns
`{ ...topLevel, ...normalizedConfig, ...params }`: it spreads the page's
CONFIG KEYS as top-level props and never passes a `page` object. So `page`
was always `{}`, `cards` was always `[]`, and the component rendered its
empty state for every consumer. The contrast makes the contract obvious —
CnIndexPage declares 96 props precisely because it reads the spread.

Confirmed at runtime rather than inferred: the page MOUNTS (its
`cn-reports-empty` marker is present) with zero `cn-report-card` elements,
which is exactly the 0 CI reported against an expected 4.

nextcloud-vue#920 fixed it by declaring `cards`, `categories`,
`description`, `title` and the label props, with 82 lines of new unit tests,
and 2.30.0 published it. This bump is all that is needed here.

Verified against a build of this branch: /apps/pipelinq/reports renders 4
`cn-report-card` elements and the "Channel analytics" card is visible.

⚠️ The rest of rapportage.spec.ts cannot be judged on this machine — every
`page.goto` in it exceeds the spec's 30s budget because a page load takes
~13s against the shared dev container. In CI those same navigations complete
and the failure was the card assertion, which is what this fixes. CI is the
instrument for the remainder.

eslint 0 errors, prettier --check on the FULL glob clean, 59 vitest tests
pass.

⚠️ Two corrections to earlier reports of mine, both from measuring the wrong
world. The export-pages family was already fixed by #1706 and #1711 while I
was working, so development's E2E is 4 failed / 328 passed rather than the
44 I quoted from a stale branch. And my first reading said the `reports`
page type was unimplemented — that was a stale local node_modules (2.27.2
against a lockfile pinning 2.29.0) plus a bundle-override that did not match
`?v=` query strings. Both instruments were wrong; the CI log settled it.
@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/pipelinq @ c78e092

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
build
check-manifest
check-vue-demi
test-l10n
format
check-schema-l10n
check-l10n-js
composer ✅ 106/106
npm ✅ 637/637
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-02 07:06 UTC

Download the full PDF report from the workflow artifacts.

…eeds

Follow-up in the same PR. The nc-vue 2.30.0 bump fixed the defect these four
tests were reporting, and it changed their failure MODE rather than clearing
them:

  before the bump   Error: toHaveCount failed — cn-report-card, expected 4,
                    received 0
  after the bump    Test timeout of 60000ms exceeded, with NO assertion error
                    at all

That second shape is the tell. No assertion failed, so the cards render now;
the tests simply ran out of budget. Each one calls openApp() — which boots
the shell and dismisses the walkthrough and support dialogs — then does a
full navigation, and `type:"reports"` is mapped through
defineAsyncComponent, so the first of them also pays for fetching that chunk.
A bare timeout reads as "the page is broken" when it means "this test is too
slow", which is exactly how the openregister route sweep misreported itself
earlier today.

180s, with the reasoning written where the next reader will hit it.

Also corrected two comments that survived #1684 and now say the opposite of
what the code does: both told the reader that a path-form goto boots the
shell at the Dashboard and the route must travel in the hash. The shell has
been on createWebHistory(routerBase()) since #1684, and the code beneath
those comments already uses paths.

⚠️ Verified in CI rather than locally, deliberately. Every `page.goto` in
this spec exceeds even the old 30s budget on this machine — a page load
against the shared dev container takes ~13s — and a full local run of the
file was OOM-killed. The targeted check that mattered did pass here:
/apps/pipelinq/reports renders 4 cn-report-card elements with 2.30.0 built
from this branch.
@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/pipelinq @ 49e0a4b

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
build
check-manifest
check-vue-demi
test-l10n
format
check-schema-l10n
check-l10n-js
composer ✅ 106/106
npm ✅ 637/637
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-02 08:42 UTC

Download the full PDF report from the workflow artifacts.

@rubenvdlinde
rubenvdlinde merged commit b6558a1 into development Sep 2, 2026
127 of 130 checks passed
@rubenvdlinde
rubenvdlinde deleted the chore/bump-nc-vue-2.30.0 branch September 2, 2026 09:19
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