packages feed

keiro-dsl-0.17.0.0: test/fixtures/transition-family-ambiguous-new.keiro

language keiro-dsl 5
context transition-family-ambiguous

aggregate ProjectArtifact
  regs
    description Text = ""
  states Unregistered Active

  command Register { description:Text }
  command ObserveDescription { description:Text }
  event Registered = fields(Register)
  event DescriptionObserved = fields(ObserveDescription)

  Unregistered -- Register -->
    write description := cmd.description
    emit Registered
    goto Active

  Active -- ObserveDescription -->
    implementation hole
    guard cmd.description == "new-a"
    emit DescriptionObserved
    goto Active

  Active -- ObserveDescription -->
    implementation hole
    guard cmd.description == "new-b"
    emit DescriptionObserved
    goto Active