docs: enhance FSM page with state transition table, state labels, Moore vs Mealy comparison and quiz#771
Conversation
…re vs Mealy comparison and quiz
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughUpdated docs/seq-design/fsm.md with a Moore vs Mealy comparison table and mnemonic, a state transition table for the soda vending FSM, an explanation of state-label symbols and binary transition-arrow labels, a note about the diagram’s internal “20” value, an “Experiment” section, and a five-question Quiz. Modified assets/js/interactive_soda_machine.js to add a 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Addressed all CodeRabbit review comments:
|
There was a problem hiding this comment.
Actionable comments posted: 4
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: b8903096-8da2-4c28-8169-08b57efcf55a
📒 Files selected for processing (2)
assets/js/interactive_soda_machine.jsdocs/seq-design/fsm.md
…der, state names and quiz
There was a problem hiding this comment.
Actionable comments posted: 1
♻️ Duplicate comments (1)
docs/seq-design/fsm.md (1)
173-175:⚠️ Potential issue | 🟡 MinorHyphenate compound adjective "above-mentioned".
Static analysis correctly flags that "above mentioned" should be hyphenated when used as a compound adjective before a noun.
📝 Proposed fix
Let's try the soda can vending machine and look for the corresponding state changes in the FSM diagram -for each of the above mentioned possibilities. +for each of the above-mentioned possibilities.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 64839491-0298-4200-9344-072a0a8c2308
📒 Files selected for processing (2)
assets/js/interactive_soda_machine.jsdocs/seq-design/fsm.md
| 3. A Mealy machine has 3 states and one binary input. | ||
| The minimum number of rows in its state | ||
| transition table will be: | ||
| 1. 3 | ||
| 2. 6 | ||
| 3. 8 | ||
| 4. 9 |
There was a problem hiding this comment.
Fix formatting in question 3.
Line 194 has a double space after "3." (3. A Mealy), and the answer options at lines 197-200 have inconsistent indentation (3 spaces vs expected 0). This may cause rendering issues with the quiz component.
📝 Proposed fix
-3. A Mealy machine has 3 states and one binary input.
- The minimum number of rows in its state
- transition table will be:
- 1. 3
- 2. 6
- 3. 8
- 4. 9
+3. A Mealy machine has 3 states and one binary input.
+ The minimum number of rows in its state
+ transition table will be:
+ 1. 3
+ 2. 6
+ 3. 8
+ 4. 9🧰 Tools
🪛 markdownlint-cli2 (0.21.0)
[warning] 197-197: Inconsistent indentation for list items at the same level
Expected: 0; Actual: 3
(MD005, list-indent)
[warning] 198-198: Inconsistent indentation for list items at the same level
Expected: 0; Actual: 3
(MD005, list-indent)
[warning] 199-199: Inconsistent indentation for list items at the same level
Expected: 0; Actual: 3
(MD005, list-indent)
[warning] 200-200: Inconsistent indentation for list items at the same level
Expected: 0; Actual: 3
(MD005, list-indent)
|
Addressed all CodeRabbit review comments:
|
|
Addressed remaining CodeRabbit review comments:
|
magic-peach
left a comment
There was a problem hiding this comment.
JS fix looks correct — removing the 3300ms setTimeout that was calling enableButtons() when state <= 4 was the root cause. States 5 and 6 (W15, W20) were being missed, and now the enable/disable flow is driven cleanly from the switch cases in update().
Docs additions are solid: the Moore vs Mealy table, state transition table, and label glossary address everything reported in #769. Quiz questions are well-formed.
One nit: fsm.md is missing a newline at end of file (the diff shows \ No newline at end of file). Worth a quick fix before merge.
|
Addressed the remaining review feedback by adding the missing newline at the end of All requested changes should now be resolved. |
|
Your plan includes 2 PR reviews per hour. Reviews are available now. |
Fixes #769
Fixes #770
Changes done:
(Processing coin, Returning change, Enjoy your soda)
Screenshots
No UI changes for documentation.
JS fix adds status messages during processing states
so users understand what the machine is doing.
Preview Link(s):
✅️ By submitting this PR, I have verified the following
Summary by CodeRabbit
Documentation
User Experience