Repository navigation
feat(cmdb-import): show the import mapping read-only in the CMDB import section - #1280
Open
WilcoLouwerse wants to merge 7 commits into
Open
WilcoLouwerse wants to merge 7 commits into
WilcoLouwerse wants to merge 7 commits into
Conversation
GET /api/settings/cmdb-import/mapping answers the import profile and its five migration packs through CmdbImportProfile, the loader the import uses, so the overview is what the next import runs. A broken pack or a missing validator is 503 MAPPING_UNAVAILABLE with the loader's reason. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A collapsible "Mapping (read-only)" block lists the profile's sheets and key columns and one table per migration pack (source column, field, required, transformation and its lookup values), with loading and error states. The section's help text now names the sheets from the endpoint, keeping PROFILE_DEFAULTS as the fallback. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ADDED REQ-CMDB-020 (the read-only mapping endpoint and block) and MODIFIED REQ-CMDB-014 (the section shows the mapping and takes its sheet names from it). The capability is in progress again. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… fewer than two Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…d missing-records modes Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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 | ✅ | ✅ 133/133 | |||
| npm | ✅ | ✅ 807/807 | |||
| app:check-code | ⏭️ | ||||
| info.xml | ✅ | ||||
| REUSE | ❌ | ||||
| lockfile sync | ✅ | ||||
| PHPUnit | ✅ 1230/1230 · 20 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-10-09 14:57 UTC
Download the full PDF report from the workflow artifacts.
This branch has not been deployed
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.
What
An admin can now see, read-only, the column mapping the CMDB import really uses, inside the existing CMDB import section of the stackiq admin settings.
GET /api/settings/cmdb-import/mapping(admin only, CSRF). It loads the import profile and its five packs (module, manufacturer, municipality, usage, businessOwner) throughCmdbImportProfile, the same loader the import uses, so the answer is what the next import runs. Success is the flat{profile, packs}; a broken pack answers503 MAPPING_UNAVAILABLEwith the loader's reason (file names and validator rules only).CmdbImport.vuegets a collapsible block Mapping (read-only) (CmdbImportMapping.vue): the sheets, key column and required columns, then one table per pack with source column → target field, required, transformation and lookup values. The sheet names in the section's help text now come from the endpoint, with the shipped defaults as fallback.docs/features/cmdb-import.mdgets "Viewing the mapping".cmdb-import-mapping-view(ADDED REQ-CMDB-020, MODIFIED REQ-CMDB-014).Jira: WOO-588 (sub-task of WOO-586). Plan: WOO-588 plan. Review and merge are tracked in WOO-590.
Overlap with the WOO-587 PR
The WOO-587 PR (archive and soft-delete on a CMDB re-import) touches the same files:
CmdbImport.vue(one import line),openspec/specs/cmdb-export-import/spec.md(one line in the changes list), and l10n. A local merge of both branches ondevelopmenthad two trivial conflicts (keep both sides). It passed jest (190), the CMDB PHPUnit suites (328 tests) and the two new vitest specs. Whichever PR merges second needsdevelopmentmerged in.Tests
SettingsControllerCmdbImportMappingTest+CmdbImportProfileTestcmdbImportMapping.spec.jsdevelopmentc75dbb2 (connectionsPages, maintenance, settingsInfoPanels ×2, usages ×2, shared-instance); not touched here$value must be a scalar); CI is the evidencecomposer test:unitlocallytests/e2e/spec-coverage/cmdb-import-mapping.spec.tsRig check, Nextcloud 35.0.1 with the beta releases of OpenRegister 2.1.37, OpenCatalogi 2.1.18, Portaliq 0.2.9 and Thematiq 1.2.26, and stackiq = this branch merged with the WOO-587 branch:
GET /api/settings/cmdb-import/mappingas admin🤖 Generated with Claude Code