Skip to content

feat(2.4.0): move Algorithm Card reference from resource target to BP… - #14

Merged
rg4444 merged 1 commit into
mainfrom
feat/2.4.0-algorithm-task-bpmn
May 20, 2026
Merged

feat(2.4.0): move Algorithm Card reference from resource target to BP…#14
rg4444 merged 1 commit into
mainfrom
feat/2.4.0-algorithm-task-bpmn

Conversation

@rg4444

@rg4444 rg4444 commented May 20, 2026

Copy link
Copy Markdown
Contributor

…MN task

v2.3.0 placed the algorithm card on the resource target in mappings.yaml. v2.4.0 reverses this — the card belongs on the BPMN task itself via the new uapf:algorithmCardRef attribute. Rationale: when the card lives on the resource target the algorithm becomes invisible at the BPMN diagram level, defeating the purpose of having a process notation. The card belongs on the task because the task IS the invocation of the algorithm.

This is a deliberate, plainly-stated reversal of a same-day-merged decision. The only dependent ecosystem at revision time is one in-flight implementation package (dokumenta-semantiska-analize) which is being updated in lockstep.

Changes:

  • VERSION 2.3.0 -> 2.4.0
  • NEW BPMN extension namespace https://uapf.dev/bpmn/v2.4 and attribute uapf:algorithmCardRef (valid on serviceTask, businessRuleTask, task)
  • NEW schemas/bpmn-extension.schema.json (extension definition)
  • REMOVED target.algorithm_card from schemas/resource-mapping.schema.json
  • Chapter 13.8 rewritten: BPMN integration via attribute
  • NEW chapter 13.9: BPMN ioSpecification synthesized from Card io block — this is the load-bearing detail that makes downstream gateway branching on algorithm outputs visually traceable
  • NEW chapter 13.10 (informative): visual rendering contract — algorithm icon, card identity, metadata line, risk-class dot, data-object IO
  • SEM-012 reworded: now governs the BPMN attribute, not the target field
  • NEW SEM-013 (ERROR, advisory): BPMN ioSpecification matches Card io
  • examples/approve-expense-l4: Task_CheckPolicy is now a serviceTask with uapf:algorithmCardRef + ioSpecification; resource target loses algorithm_card field; archive re-packed
  • Honest CHANGELOG note: same-day reversal, no widely-deployed code depended on target.algorithm_card

…MN task

v2.3.0 placed the algorithm card on the resource target in mappings.yaml.
v2.4.0 reverses this — the card belongs on the BPMN task itself via the
new uapf:algorithmCardRef attribute. Rationale: when the card lives on
the resource target the algorithm becomes invisible at the BPMN diagram
level, defeating the purpose of having a process notation. The card
belongs on the task because the task IS the invocation of the algorithm.

This is a deliberate, plainly-stated reversal of a same-day-merged
decision. The only dependent ecosystem at revision time is one in-flight
implementation package (dokumenta-semantiska-analize) which is being
updated in lockstep.

Changes:
- VERSION 2.3.0 -> 2.4.0
- NEW BPMN extension namespace https://uapf.dev/bpmn/v2.4 and attribute
  uapf:algorithmCardRef (valid on serviceTask, businessRuleTask, task)
- NEW schemas/bpmn-extension.schema.json (extension definition)
- REMOVED target.algorithm_card from schemas/resource-mapping.schema.json
- Chapter 13.8 rewritten: BPMN integration via attribute
- NEW chapter 13.9: BPMN ioSpecification synthesized from Card io block —
  this is the load-bearing detail that makes downstream gateway
  branching on algorithm outputs visually traceable
- NEW chapter 13.10 (informative): visual rendering contract — algorithm
  icon, card identity, metadata line, risk-class dot, data-object IO
- SEM-012 reworded: now governs the BPMN attribute, not the target field
- NEW SEM-013 (ERROR, advisory): BPMN ioSpecification matches Card io
- examples/approve-expense-l4: Task_CheckPolicy is now a serviceTask
  with uapf:algorithmCardRef + ioSpecification; resource target loses
  algorithm_card field; archive re-packed
- Honest CHANGELOG note: same-day reversal, no widely-deployed code
  depended on target.algorithm_card
@rg4444
rg4444 merged commit 3c6ffa9 into main May 20, 2026
2 checks passed
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