Skip to content

feat(screens): dossiq batch b75 (R46-A, R46-B, R46-C, R46-D) - #5135

Merged
rubenvdlinde merged 11 commits into
developmentfrom
integrate/dq-b75
Nov 3, 2026
Merged

rubenvdlinde merged 11 commits into
developmentfrom
integrate/dq-b75

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

Dossiq batch b75 of the DQ-ROUND fix round. It is built on development a620c92, after b74 (#5122) and #5128. It lands 6 commits from four lanes (R46-A, R46-B, R46-C, R46-D). The nc-vue range stays at ^2.171.0.

This PR merges on local green, per Ruben's order of 2 Nov. CI is the bottleneck. The checks below ran locally, and CI was not waited on.

Heads (merge order, --no-ff, all without conflicts)

  • R46-A fix/r46a-dq-residuals 3c8e564, with 6a4a301 and a38f386:
    • 6a4a301, DqBeheerGeavanceerd: the four demo deadline definitions name their legal basis in Dutch, "Servicenorm, geen wettelijke termijn (demo)", as the board does. The seeder skips existing rows, so the instance needs the window PATCH.
    • a38f386, DqZaakContact "Live gesprek": in the board look a live conversation is one row beside its badge.
    • 3c8e564, DqZaakDocumenten and Slepen: the Assessment column gets the subline "ground {reviewGrounds|values}" (en/nl).
  • R46-B fix/r46b-deadline-report-cards-as-drawn da2c96a, DqTermijnen: the Kwartaalrapport and Jaarlijkse dwangsomaudit sections sit 12px apart, both summaries are stacked, and the annual summary sets its meta beside the figure.
  • R46-C fix/r46c-access-card-grants-before-links cf85779, DqZaakBetrokkenen Toegang: the card lists who can open the case first, then the access links. The spec case-access-card-lists-team-and-group-grants says the same.
  • R46-D feat/case-assistant-opens-the-case-session a937294, DqZaakAssistent: the case assistant card sets openSubjectSession: true, so it opens the conversation about the case.

Not in this batch: no R47-W data head had landed at the cut. It goes to b76.

Dependencies

  • nc-vue 24u7 (being integrated): 3c8e564 (the grounds subline) needs feat/files-column-subline, and a937294 (the subject session) needs feat/ai-chat-opens-the-subject-session e6c1109b. R46-B's stacked list padding and warnings figure need fix/r46b-report-card-rhythm 78a86fdc30, and R46-A's card rhythm needs fix/r46a-dq-card-rhythm. On 2.171.0 these keys are ignored, so nothing regresses.
  • SIG PHP, not built: the grounds subline stays empty until the dossier listing carries reviewGrounds. The assistant card needs hermiq's session-about-a-subject lib/ part and hermiq feat/example-set-lindelaan-subject-session e681d74. Without them, both features stay as they are today: no subline, and an empty thread.
  • The R46-B card's last -17 is the "omgevingsvergunning-kleinbouw" row, which comes from lib/Service/Termijn/TermCaseTypeResolver (SIG).

Verified locally

  • Diff check (R20/tools/diff-check.sh, base origin/development, HYDRA_GATES_HOME set to hydra-gates at .github 1ae01af): php -l, phpcs, phpunit (ShippedDeadlineDefinitionCoverageTest), eslint and stylelint report 0 NEW. SIG gates: gate 122 PASS (0 findings) and gate 123 PASS (21 floored checks held, 0 inherited). The gate runner's 6 FAIL lines are inherited, whole-tree findings that this diff does not touch: gate 22/53 (vendored manifest schema 2.138.0 is behind the installed 2.171.0), gate 60 (the "My work" icon), gate 100 (setup order), gate 102 (the string "275px") and gate 119 (development has 172 procedure-named files against a baseline of 181; this batch deletes no file).
  • COMPOSER_PROCESS_TIMEOUT=0 composer check:strict: ALL CHECKS PASSED, on 2990525 (development at a620c92). PHPUnit ran 10422 tests and 65115 assertions with 0 failures, 3 warnings and 105 skipped. There is no pcov here, so coverage was not measured.
  • npm run lint: 5 errors and 4 warnings, the same inherited set as b74 (CaseTypeFieldRightsWidget.vue, myTeamSource.js and three vitest specs). None of those files is touched by this batch.
  • NODE_OPTIONS=--max-old-space-size=2048 npm run build: compiled, with the dexie singleton check passing.
  • check:manifest PASS, test:l10n OK, check:l10n-js up to date (regenerated after the merges, no change).
  • The heads' vitest suites plus their neighbours (assistantCardBoard, caseAccessCardBoard, caseConversationsBoardRow, filesVerdictGroundLine, reportDashboardsDeclaration, simpleCasePage, casePeopleTabBoard): 7 files, 98/98.
  • After the cut, development 17f6e44 (fix(cases): a split's second case starts in its initial status, and the demo seed writes as the system (REVIEW: case state and history) #5127) was merged in, head 68b979f. It touches only lib/Service/Cases, the demo caseload seeder and their tests, none of which this batch changes. check:manifest, test:l10n and check:l10n-js pass again, and PHPUnit on tests/Unit/Service/Cases plus DemoCaseloadSeedDataServiceTest runs 98/98. check:strict was not run a second time. Compare development...integrate/dq-b75: ahead_by 0.

Window steps (9e)

These are also in R20/EXSET-LAND/PENDING-WINDOW-STEPS.md, under "9e (b75)".

  1. Pull dossiq and build it against an nc-vue pack with 24u7. No npm ci is needed for the lock (unchanged), no composer install, no occ upgrade and no register load.
  2. R46-A termijn PATCH: DRY=1 bash R20/DQ-ROUND/R46-A/window-r46a-data.sh, then run it with ADMIN_AUTH. It sets the Dutch legalBasis on td-building-permit, td-grant-application, td-citizen-complaint and td-foi-request. It is idempotent.
  3. R46-B: set Waterland's organisation f047e218 contactEmail to m.visser@waterland.example, if it is still null.
  4. R46-B: just before DQ-L1, run dayclose-preflight, and dayclose-reset if more than 3 open rows show.
  5. R46-D: once hermiq e681d74 and the hermiq lib/ part are there, run the example-set refresh for the Lindelaan subject session.
  6. Merge board PR design-system#969 before the measure, then re-measure the boards listed in the window file.

Prepared by a dossiq integration lane (AI-assisted, Claude Code). The coordinator merges.

🤖 Generated with Claude Code

The case-assistant-chat widget opts in to openSubjectSession, so the
Assistent card opens the handler's latest session about this case with
the proposals the assistant still waits on, as DqZaakAssistent draws it.
On an older nextcloud-vue or hermiq the card keeps its empty thread.

Assisted-by: ClaudeCode:claude-opus-5-5
…sis in Dutch

building-permit, grant-application, citizen-complaint and foi-request read
"Service norm, no statutory term (demo)" in the shipped deadline set. The
DqBeheerGeavanceerd board says "Servicenorm, geen wettelijke termijn (demo)"
since design-system ba178d8, and the longer text wraps those four rows of
AWB-termijndefinities, so the board grew 68px and every card under the table
read 67.5px high on r45.

Assisted-by: ClaudeCode:claude-opus-5-5
DqZaakBetrokkenen draws Toegang with the teams and groups that can open
the case first ("Team Woo en informatie", "Juridische zaken") and the
access link under them. The case-access-card's two record-list sections
swap; each section keeps its endpoint, rows, texts and row action.

Assisted-by: ClaudeCode:claude-opus-5-5
…e line

DqTermijnen draws the quarterly report and the annual audit as one column
12px apart, the quarter's sentence as a plain line under the table and the
annual total with its count beside it. The cards now set the sections gap
to 12 (was 8) and both summary lists stack (no row padding); the annual one
puts its meta beside the title (nextcloud-vue metaBeside).

Assisted-by: ClaudeCode:claude-opus-5-5
…ard look

DqZaakContact "Live gesprek" draws each conversation held from the case as one
56px row: the subject and its meta line on the normal line, the "Afgelopen"
badge beside them, the footnote 12px under the list. Live stacked the badge on
the subject's line at 1.5, so a row was 72px and the card 17.3px taller than
drawn (r45), which moved "Contactmomenten in het klantbeeld" 34.5px down.
Nextcloud's own look keeps the stacked rows.

Assisted-by: ClaudeCode:claude-opus-5-5
…ounds

DqZaakDocumenten draws the cited ground under a partly or not public verdict:
"Deels openbaar" over "grond 5.1.2.e". The Assessment column now declares
nextcloud-vue's column `subline` ("ground {reviewGrounds|values}") over the
dossier listing's `reviewGrounds`. Until the listing carries the codes the
cell draws the pill alone, as before.

Needs nextcloud-vue feat/files-column-subline (24u7).

Assisted-by: ClaudeCode:claude-opus-5-5
…tegrate/dq-b75

Assisted-by: ClaudeCode:claude-opus-5-5
…ntegrate/dq-b75

Assisted-by: ClaudeCode:claude-opus-5-5
… integrate/dq-b75

Assisted-by: ClaudeCode:claude-opus-5-5
Assisted-by: ClaudeCode:claude-opus-5-5
@rubenvdlinde
rubenvdlinde merged commit 241e5fc into development Nov 3, 2026
7 checks passed
@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/dossiq @ d9f0a47

Check PHP Vue Security License Tests
lint ✅
phpcs ✅
phpmd ✅
psalm ✅
phpstan ✅
phpmetrics ✅
eslint ❌
stylelint ✅
build ✅
check-manifest ✅
check-vue3-compile ✅
test-l10n ✅
format ❌
check-schema-l10n ✅
check-l10n-js ✅
check-debt-ratchet ❌
check-types-e2e ✅
composer ✅ ✅ 109/109
npm ✅ ✅ 657/657
app:check-code ⏭️
info.xml ✅
REUSE ❌
lockfile sync ✅
PHPUnit ✅ 10433/10433 · 8 skipped
Newman ⏭️
Playwright ⏭️ deferred: E2E runs locally and on the promotion path only. This pull request targets development, so the suite is asked once per promotion into beta and main rather than once per push per open pull request. Run it locally with npx playwright test, or from the Actions tab on a branch with no open pull request into development.
Hydra gates ❌

Quality workflow — 2026-11-03 07:20 UTC

Download the full PDF report from the workflow artifacts.

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