87 implement state machine with stepper visualization for api call coordination ynab settleup - #89
Draft
SThor wants to merge 9 commits into
Conversation
…ation - Create XState v5 parallel state machine for YNAB/SettleUp API coordination - Implement conditional API targeting with proper guard functions - Add support for all outcome scenarios: success, partial success, error states - Build visual test interface with manual API outcome controls - Add real-time state debugging with context display - Implement smart retry logic (full retry vs targeted retry for partial failures) - Set up proper project structure with /src/machines directory - Add /state-machine route for development testing and validation
- Store entire formState object in machine context for transaction integrity - Update all guards to check formState.target.ynab/settleup properties - Modify RETRY_FAILED action to work with formState structure - Update StateMachineTest to create realistic mock formState objects - Prepare for API service integration with complete transaction data This ensures the state machine captures a complete snapshot of transaction data when sync starts, preventing inconsistencies if form state changes during API calls.
- Add 24 comprehensive unit tests achieving 100% coverage - Fix RESET actions to properly clear context on state transitions - Test both partial success scenarios and retry logic
SThor
force-pushed
the
87-implement-state-machine-with-stepper-visualization-for-api-call-coordination-ynab-settleup
branch
from
January 25, 2026 20:33
2372788 to
8f579c4
Compare
SThor
force-pushed
the
87-implement-state-machine-with-stepper-visualization-for-api-call-coordination-ynab-settleup
branch
from
January 25, 2026 20:35
8f579c4 to
47ab32e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR cleans-up the flow across the app, using a state machine, and displays a custom stepper component so that the user better visualizes the process and potential errors.
Fixes #87
Type of change
Checklist