Skip to content

feat(example-sets): a fragment may give a task its checklist - #4758

Merged
rubenvdlinde merged 1 commit into
developmentfrom
feat/example-set-task-checklist
Oct 21, 2026
Merged

rubenvdlinde merged 1 commit into
developmentfrom
feat/example-set-task-checklist

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

What

An example set's task may now declare a checklist: a list of {id, label, description?, checked?} items, written to the task engine as declared. The check refuses a checklist that is not a list, an item without an id or a label, an id used twice and a checked that is not true or false.

Why

dossiq's DqTaak board draws a task with a Checklist card ("2 van 4 klaar"). The engine and the task page already support a checklist, but ExampleSetTasks::FIELDS did not list it. So a fragment that declared one was refused, and that refusal stops the whole set from installing.

Verified

  • ExampleSetTasksTest: 20 tests pass. That includes a new test that writes a task with its checklist and four new refusal cases.
  • phpcs and phpstan are clean on ExampleSetTasks.php. The phpcs findings in the test file are on lines this PR does not touch.

The dossiq PR that seeds the DqTaak task depends on this one.

AI-assisted: written with Claude Code (claude-opus-5-5) and reviewed before submission.

The task engine keeps a checklist on a task and the task page draws it,
but ExampleSetTasks refused the field, so no example task could show
one. The check now accepts a list of {id, label, checked} items and
refuses a malformed one before anything is written.

Assisted-by: ClaudeCode:claude-opus-5-5
@rubenvdlinde
rubenvdlinde merged commit f76477b into development Oct 21, 2026
40 of 45 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/openregister @ 167a8af

Check PHP Vue Security License Tests
lint ✅
phpcs ✅
phpmd ❌
psalm ✅
phpstan ✅
phpmetrics ✅
eslint ✅
stylelint ✅
build ✅
check-specs ✅
test-l10n ✅
test-l10n-parity ✅
format ✅
check-schema-l10n ✅
composer ✅ ✅ 173/173
npm ✅ ✅ 648/648
app:check-code ⏭️
info.xml ✅
REUSE ✅
lockfile sync ✅
PHPUnit ❌
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-21 20:33 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