feat(workflow): diploma-eligibility DMN routes foreign diplomas via CBGV-advies (S-13, closes #14) #101
Reference in New Issue
Block a user
Delete Branch "feat/14-dmn-diploma-eligibility"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What & why
S-13: a diploma's origin decides its route. A DMN (
diploma-eligibility) is evaluated inline bythe registratie process as a
businessRuleTask; an exclusive gateway routes a foreign(Buitenlands) diploma through a new CBGVAdvies user task before
Beoordelen, a domestic onestraight there (PRD flow 4). The domain's only new job is carrying the diploma origin and passing it
as a process start variable.
Chose Option B (DMN in the BPMN) over the issue's literal "evaluated by the Domain Service via
Workflow Client" wording — keeps the decision a first-class workflow artefact and §8.2 clean.
Rationale in ADR-0016 (proposal #100); noted on this issue.
Closes #14
Definition of Done
refs #14).docker compose upfrom a fresh clone reaches green health checks within 3 minutes (additive; DMN deployed by flowable-init).docs/architecture/adr-0016-diploma-eligibility-dmn.md).docs/demo-script.md.How it was built (TDD)
DiplomaOriginon the aggregate + submit command; threaded through the process-start port so the Workflow Client emits adiplomaOriginstart variable. Red → green.workflows/diploma-eligibility.dmn(origin → route);businessRuleTask+ exclusive gateway +CBGVAdviesuser task inregistratie.bpmn; DMN deployed to Flowable's DMN engine byflowable-init.Een diploma op herkomst routerenacceptance scenarios (origin carried into the process) + unit tests; verify-domain drives a foreign registration through CBGVAdvies→Beoordelen and the domestic one straight to Beoordelen — exercising both DMN branches live.Notes for reviewers
diplomaOriginso the foreign path is drivable.dotnet format, Release build (0 errors), domain mutation 95.39% (break 90). The DMN/businessRuleTaskREST wiring is CI-verified on verify-stack (no local full-stack run here).View command line instructions
Checkout
From your project repository, check out a new branch and test the changes.