Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: liquid-java/liquidjava-fsm
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2b5519d
Choose a base ref
...
head repository: liquid-java/liquidjava-fsm
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 0706928
Choose a head ref
  • 13 commits
  • 13 files changed
  • 3 contributors

Commits on Oct 27, 2026

  1. Merge pull request #15 from liquid-java/feat/14-entry-transitions

    Draw a StateRefinement without from as an entry transition
    CatarinaGamboa authored Oct 27, 2026
    Configuration menu
    Copy the full SHA
    9047856 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    09fdb81 View commit details
    Browse the repository at this point in the history

Commits on Nov 4, 2026

  1. Inherit the state sets and methods of the supertypes' specs

    A class whose @stateset is in a superclass's spec, such as java.awt.Frame
    with the displayable states declared for java.awt.Window, had no state
    machine, and the superclass's machine did not have the subclass's methods.
    
    parseAll(List<String> uris, String className) builds one model from
    several files and merges the specs of the class's supertypes in them, as
    the verifier does when it builds a receiver's machine: the class's own
    state sets first, then those of its supertypes, nearest first. A call
    uses the class's own refinement of a method, otherwise that of the
    nearest type that declares it, so an inherited refinement is left out
    when a nearer spec refines the method, when a nearer type redeclares it,
    or when not every caller can call it. Constructors stay the class's own.
    parseAll(uri, className) does the same for the specs in one file.
    
    Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
    CatarinaGamboa and claude committed Nov 4, 2026
    Configuration menu
    Copy the full SHA
    10e5d0b View commit details
    Browse the repository at this point in the history
  2. Skip a missing file and test a supertype spec without a state set

    A file that no longer exists made the model fail to build, which
    discarded the specs in the other files.
    
    Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
    CatarinaGamboa and claude committed Nov 4, 2026
    Configuration menu
    Copy the full SHA
    0ae018e View commit details
    Browse the repository at this point in the history
  3. Merge pull request #16 from liquid-java/feat/inherited-specs

    Inherit the state sets and methods of the supertypes' specs
    CatarinaGamboa authored Nov 4, 2026
    Configuration menu
    Copy the full SHA
    e5099f0 View commit details
    Browse the repository at this point in the history

Commits on Nov 9, 2026

  1. Read named state sets and states written as values of their sets

    The verifier now accepts @stateset(name = "phase", value = {...}) and a
    state written as a value of its set, phase(this) == open, which it reads
    as open(this), and phase(this) != open as !open(this). The parser took
    such a from for a condition on every state, so the diagram lost its
    transitions.
    
    A comparison of a one-argument function with a state, in either order,
    is now that state, and != negates it, wherever the shorthand is read:
    from, to, constructors and factories. Conditions keep the form the spec
    wrote. Each state machine carries stateSetName, the name given to its
    state set, or null when it has none, so a client can label the diagram
    with the name the verifier's messages use.
    
    Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
    CatarinaGamboa and claude committed Nov 9, 2026
    Configuration menu
    Copy the full SHA
    c927195 View commit details
    Browse the repository at this point in the history
  2. Negate only a state compared with != as a value of its set

    open(this) != false is not phase(this) != open: it means open(this), so
    its complement drew the transition from the other states. Only a
    comparison that is itself a state value is read as its negation.
    
    Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
    CatarinaGamboa and claude committed Nov 9, 2026
    Configuration menu
    Copy the full SHA
    b5a1061 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #17 from liquid-java/feat/state-values

    Read named state sets and states written as values of their sets
    CatarinaGamboa authored Nov 9, 2026
    Configuration menu
    Copy the full SHA
    710ee40 View commit details
    Browse the repository at this point in the history

Commits on Nov 10, 2026

  1. Release liquidjava-fsm 0.2.3 on liquidjava-verifier 0.0.37

    Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
    CatarinaGamboa and claude committed Nov 10, 2026
    Configuration menu
    Copy the full SHA
    d01be01 View commit details
    Browse the repository at this point in the history
  2. Draw a StateRefinement without from only from the states it leaves un…

    …covered
    
    A StateRefinement with a to but no from was also drawn from the initial pseudo state, like a constructor, when the
    method had other StateRefinements with from. The verifier reads it as from = true, so it already goes from the states
    the others do not cover; only constructors and factory methods enter the state machine. entryTransitions is kept,
    always empty, so that clients still compile.
    
    Closes #18
    
    Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
    CatarinaGamboa and claude committed Nov 10, 2026
    Configuration menu
    Copy the full SHA
    23a1d3b View commit details
    Browse the repository at this point in the history
  3. Name the fixture after what it tests, a StateRefinement without from …

    …beside others
    
    Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
    CatarinaGamboa and claude committed Nov 10, 2026
    Configuration menu
    Copy the full SHA
    a904ec0 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #19 from liquid-java/fix/to-without-from

    Draw a StateRefinement without from only from the states it leaves uncovered
    CatarinaGamboa authored Nov 10, 2026
    Configuration menu
    Copy the full SHA
    68a31fe View commit details
    Browse the repository at this point in the history

Commits on Nov 11, 2026

  1. Release liquidjava-fsm 0.2.4 on liquidjava-verifier 0.0.38

    Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
    CatarinaGamboa and claude committed Nov 11, 2026
    Configuration menu
    Copy the full SHA
    0706928 View commit details
    Browse the repository at this point in the history
Loading