Repository navigation
refactor(aangeboden-gebruik): split the koppelingen lookup by uuid into access, query and search steps - #1404
Merged
rubenvdlinde merged 3 commits intoNov 3, 2026
Conversation
…acting organisation pinned Assisted-by: ClaudeCode:claude-opus-5-5
…to access, query and search steps getKoppelingenGebruikByUuid keeps its signature and its error envelope; the work moves into koppelingenGebruik, mayReadKoppelingen (ambtenaar, or the active organisation owns the object), searchKoppelingen, isOrganisationUuid and emptyKoppelingenPage, each with at most two parameters. Order of the lookups, the log lines and the results are unchanged (golden of the previous commit). Assisted-by: ClaudeCode:claude-opus-5-5
…oppelingen-gebruik-params
Contributor
Quality Report — ConductionNL/stackiq @
|
| 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 | ❌ | ✅ 127/127 | |||
| npm | ❌ | ✅ 807/807 | |||
| app:check-code | ⏭️ | ||||
| info.xml | ✅ | ||||
| REUSE | ❌ | ||||
| lockfile sync | ✅ | ||||
| PHPUnit | ❌ 1546/1552 · 24 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 16:57 UTC
Download the full PDF report from the workflow artifacts.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
REVIEW (access): held for a reviewer. Lane SQ3, SIG unit interfacing in stackiq.
AangebodenGebruikService::getKoppelingenGebruikByUuidwas one 161-line unit with three parameters and the access check inline. It keeps its signature and error envelope; the work moves intokoppelingenGebruik,mayReadKoppelingen(an ambtenaar, or the caller's active organisation owns the object behind the uuid),searchKoppelingen,isOrganisationUuidandemptyKoppelingenPage, each with at most two parameters. The order of lookups (including the organisation lookup that also runs for an ambtenaar), log lines and results are unchanged.What to check:
mayReadKoppelingengrants exactly what the old inline block granted; anorganisationoption only filters for an ambtenaar.Numbers (PHP, lizard): getKoppelingenGebruikByUuid 161 LOC / 3 params to 21 LOC / 3 params; the new units are 37 LOC or less with at most 2 params. Together with the batch PR and the organisation sync PR params >=3 lands at 14.97% (limit 15%).
Golden:
AangebodenGebruikKoppelingenGoldenTest, recorded on the old code. 20 cases; the acting organisation comes from the session and the doubles only grant ownership to it. Cases include a forgedorganisationoption from a non-ambtenaar, no session, no active organisation, a failing organisation lookup, a failing or empty ownership lookup, organisation and module uuids, and a failing search.Mutants (capped, control survived): 12 of 12 killed, among them ambtenaar not granted, owner check weakened to "has an owner", no organisation granted, a failed lookup granting access, the filter applied for anyone, and the organisation lookup moved after the ambtenaar check.
Debt fixed: class
@spectag (phpcs warning).Verification: golden plain re-run green on old and new; development merged in; touched tests (54 AangebodenGebruik tests) green under pcov
--fail-on-risky; full unit suite under pcov on this branch combined with the organisation sync PR: 1591 tests, exit 0 (before the last development merge); on the final tree with the batch PR and development merged: 1631 tests, exit 0, lint 0 errors, gates 37 of 37 applicable 0 FAIL; phpcs, phpstan, psalm, phpmd clean on the touched file.This PR was prepared with AI assistance (Claude Code).