Skip to content

Conversation

@johnnyt
Copy link
Member

@johnnyt johnnyt commented Sep 7, 2025

Changes initial field from String.t() | nil to [String.t()] to support space-separated initial states per W3C SCXML specification. Adds parsing logic to split "state1 state2" syntax into ["state1", "state2"] list.

Updates interpreter, validator, and test files to handle list format. Fixes parser bug where space-separated states were treated as single IDs.

Test coverage: W3C tests test576 and test413 now pass, all 1028 internal tests pass.

🤖 Generated with Claude Code

Changes initial field from String.t() | nil to [String.t()] to support
space-separated initial states per W3C SCXML specification. Adds parsing
logic to split "state1 state2" syntax into ["state1", "state2"] list.

Updates interpreter, validator, and test files to handle list format.
Fixes parser bug where space-separated states were treated as single IDs.

Test coverage: W3C tests test576 and test413 now pass, all 1028 internal tests pass.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
@codecov
Copy link

codecov bot commented Sep 7, 2025

Codecov Report

❌ Patch coverage is 94.59459% with 2 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
lib/statifier/parser/scxml/element_builder.ex 66.66% 1 Missing ⚠️
lib/statifier/validator/initial_state_validator.ex 94.73% 1 Missing ⚠️
Files with missing lines Coverage Δ
lib/statifier/document.ex 100.00% <ø> (ø)
lib/statifier/interpreter.ex 90.57% <100.00%> (-0.83%) ⬇️
lib/statifier/parser/scxml/element_builder.ex 99.04% <66.66%> (-0.96%) ⬇️
lib/statifier/validator/initial_state_validator.ex 91.48% <94.73%> (-3.52%) ⬇️

... and 1 file with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@johnnyt johnnyt merged commit ce6a8a9 into main Sep 7, 2025
13 checks passed
@johnnyt johnnyt deleted the multiple-initial-states branch September 7, 2025 22:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants