The provision-parties workflow names two subjects that do not exist
Table of Contents
This page is a capture in the inbox bucket of the product backlog — a pre-sprint idea, not yet pulled into a sprint as a story.
1. What
Two pages name command subjects for the party-provisioning saga that do not exist:
- The header comment of
projects/ores.refdata/api/include/ores.refdata.api/workflow/provision_parties_workflow.hpp:41-47says step 0 publishesrefdata.v1.parties.saveand step 2 publishesiam.v1.account_parties.save. projects/ores.refdata/core/modeling/ores.refdata.protocol.org:64listsrefdata.v1.parties.savein its Parties table, andrefdata.v1.parties.historyon the line below, which is absent too.
The code uses different names. The definition's real step subjects are
refdata.v1.parties.put (provision_parties_workflow.hpp:81),
iam.v1.accounts.save (:134) and iam.v1.account_parties.put_many
(:173). No nats_subject anywhere uses parties.save,
account_parties.save or parties.history.
2. Why
The refdata protocol page is where a reader learns which subjects the
component serves, and the comment is where a reader learns what the saga
does. Both send the reader to a subject no broker will route, and the
mismatch already misled the journey architecture audit into recording the
save names as the saga's steps.
3. References
projects/ores.refdata/api/include/ores.refdata.api/workflow/provision_parties_workflow.hpp:41-47— the comment;:81,:134,:173— the three real subjects.projects/ores.refdata/core/modeling/ores.refdata.protocol.org:60-66— the Parties table.projects/ores.refdata/api/include/ores.refdata.api/messaging/party_protocol.hpp:95-273— the generated party subjects, which useput,put_many,deleteandparties_versions.*.projects/ores.iam/api/include/ores.iam.api/messaging/account_party_protocol.hpp:69-201— the generated account-party subjects, which useputandput_many.- Audit the journey, provisioning and web-client architecture before the first implementation story — finding 2, corrected there on 2026-09-27.
4. See also
- Party provisioning returns no workflow instance ids — the same saga's other defect.