Skip to content

UML completion transitions: an explicit spelling usable on any base class #699

Open

Description

@fgmacedo

Why

Reacting when a state finishes its work is the most used form of completion in practice (XState onDone, done.state.* here). UML adds completion of states with a doActivity and runs each completion in its own step. Bare eventless transitions keep their SCXML meaning, so completion needs its own spelling (decided in #692).

Scope

  • An explicit completion spelling on transitions, available on StateChart and any subclass, plus the native YAML key, the schema and diagram rendering.
  • Completion events are queued and taken one per microstep, so the completions of orthogonal regions run in separate microsteps (PSSM case History_002-B, today unclassified).
  • The PSSM converter emits the new spelling, so the cases in its LOWERED map run unlowered.

Acceptance

  • LOWERED cases pass without lowering on both engines; History_002-B leaves the xfail map.
  • W3C SCXML suite unchanged.

Foundation for join, the doActivity completion rule (K2) and deferral recall order.

Refs #692

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementumlUML state machine semantics, tracked in #692

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions