Say instance for a process instance in code, type every class constant, fold four duplicated helpers and correct ten documentation errors

Closes https://www.drupal.org/project/orchestra/issues/3633207

No behavior change except where noted. One commit per finding. Merge after !729 (merged) and !730 (merged).

Naming and conventions

  • N1. Code and comments say instance, not run, for a process instance. The ProcessInstance::setState() exception now says "not an instance state". UI and log strings are left as they are.
  • N2. Every class constant has a type (const string X). 185 constants were untyped, sometimes next to typed ones in the same class.
  • N3. Comments and the demo guide use orchestra's own terms: "person", not "visitor". The French guide says wait_all join and matching join instead of AND and OR joins.

Duplicated logic

  • D1. InnerPluginSettingsTrait::buildToggledInnerSettings() and InputName::buildForElement() replace three copies in QuorumJoin, Reassign and InteractionPluginConfigTrait. Reassign submits through submitInnerSettings().
  • D2. SubformInput::readValue() replaces four hand-written walks of the raw user input. WorkingRowsTrait holds the cm_node_features key and the row accessors that PluginSequenceFeatureBase and NodeValues each declared.
  • D3. Engine-side warnings go to the Orchestra log channel through OrchestraLoggerTrait. This covers orchestra_remote_process, orchestra_interaction_webform, orchestra_ui and orchestra_content. The client modules keep their own channels. Test: FormFromSubmissionTest::testTheStepWithNoFormLogsOnTheOrchestraChannel() (fails on 1.x).
  • D4. InstanceFilterForm::parseInitiatorUid() parses the initiator filter for both the filter form and the list.

Documentation

  • Doc1. parseMap() documents the name|other syntax.
  • Doc2. The gateway docblocks describe the gateways that exist (Capability, Assignment, Operation), not a plan.
  • Doc3. TenantLimitedOptionsTrait counts three filters.
  • Doc4. hook_orchestra_identity_proof_producer_info_alter() and hook_orchestra_identity_proof_verifier_info_alter() are documented.
  • Doc5. docs/architecture.md lists all five config entities, IncidentKind, and four missing submodules.
  • Doc6. docs/concepts.md counts eight primitives (adds notify). docs/content.md names the $initiator argument.
  • Doc7. docs/distributed.md lists listDefinitions() and counts three step endpoints.
  • Doc8. docs/extending.md lists the incident kind plugin type and scopes the capability rule to engine plugin managers.
  • Doc9. The roadmap, concepts, views docs and the orchestra_views README name the views that ship.
  • Doc10. The audit trail README lists ignored. The interaction README nests interaction under features. The VBO README says canceled.

AI-Generated: Yes (Claude Code was used to audit the module and to write this code, its test and this description.)

Merge request reports

Loading
Loading