Skip to content

fix(settings): pass JSON data and version to OR ConfigurationService::importFromApp#199

Merged
rubenvdlinde merged 1 commit into
developmentfrom
fix/configuration-importfromapp-signature
May 13, 2026
Merged

fix(settings): pass JSON data and version to OR ConfigurationService::importFromApp#199
rubenvdlinde merged 1 commit into
developmentfrom
fix/configuration-importfromapp-signature

Conversation

@rubenvdlinde
Copy link
Copy Markdown
Contributor

Problem

OCA\OpenRegister\Service\ConfigurationService::importFromApp signature changed from ($appId, $force) to ($appId, array $data, string $version, bool $force). Decidesk's SettingsService::loadConfiguration was still calling the old 2-arg signature with named args, which throws ArgumentCountError at install/upgrade time and on every settings reload.

Net effect in the running dev container: register import fails → 0/24 configured → empty Add-Item dropdowns → no usable seed data → tutorial-doc screenshots all show empty state.

Fix

Mirror the working pattern from planix, scholiq, and opencatalogi:

  1. Load lib/Settings/decidesk_register.json from disk
  2. Extract info.version
  3. Pass (appId, data, version, force) to the 4-arg method

Other Conduction apps affected by the same caller bug

  • shillinq (lib/Service/SettingsService.php:143) — tracking issue to follow
  • openbuilt/lib/Resources/template/lib/Service/SettingsService.php:143 — scaffold template, will propagate the bug to every freshly-generated app

Test

After merge, will deploy in dev container, run occ maintenance:repair, and verify decidesk reports a populated register via the OpenRegister API.

Fixes #196

…:importFromApp

The OpenRegister ConfigurationService::importFromApp signature changed from
($appId, $force) to ($appId, array $data, string $version, bool $force).
The old 2-arg call was throwing ArgumentCountError at install/upgrade time,
leaving 0/24 schemas configured and all Add-Item forms empty.

This loads decidesk_register.json from lib/Settings/ in the app itself,
extracts the version from info.version, and passes both to the 4-arg method
(mirrors the working pattern in planix, scholiq, opencatalogi).

Fixes #196
@rubenvdlinde rubenvdlinde merged commit b33b8a4 into development May 13, 2026
12 of 15 checks passed
@rubenvdlinde rubenvdlinde deleted the fix/configuration-importfromapp-signature branch May 13, 2026 07:28
@github-actions
Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/decidesk @ 4360de3

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 100/100
npm ✅ 474/474
PHPUnit ⏭️
Newman ⏭️
Playwright ⏭️

Quality workflow — 2026-05-13 07:29 UTC

Download the full PDF report from the workflow artifacts.

rubenvdlinde added a commit that referenced this pull request May 13, 2026
Re-captured all 52 tutorial screenshots against a dev container that
now has decidesk's register configured (PR #199 fix) and a small
seed-data set:
- 1 governance body (Stadsraad Demoville)
- 2 meetings (one past closed, one upcoming scheduled)
- 2 motions (one adopted, one in debate)
- 1 minutes record
- 3 action items
- 1 decision

48 of 52 PNGs are non-structural — they now show populated list views,
real Add-Item dialogs with mapped schemas, and detail pages with
content. The 4 unchanged ones are the AI-companion and a couple of
flows that don't depend on register data.

Spec used: tests/e2e/docs-screenshots.spec.ts (project: docs-capture).
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