MERMAID SEQUENCE DIAGRAM SYNTAX RULES:

DECLARATION:
- Start with: sequenceDiagram

PARTICIPANTS:
- Define: participant A as Actor
- Use meaningful aliases for clarity

ARROWS:
- ->> = Synchronous message
- -->> = Return/Response message
- -x = Lost message
- -) = Async message
- ->>+ = Activate lifeline
- ->>- = Deactivate lifeline

NOTES:
- Note over A: Comment text
- Note left of A: Left-side note
- Note right of A: Right-side note

BLOCKS:
- alt/else/end = Alternative flows
- loop/end = Iteration blocks
- par/and/end = Parallel execution
- opt/end = Optional execution

COMMON ISSUES:
- Missing participant definitions
- Invalid arrow syntax (single dash instead of double)
- Unclosed alt/loop/par blocks
- Invalid participant names with spaces

FIX REQUIREMENTS:
1. Define all participants before first message
2. Use proper arrow syntax (->> not ->)
3. Close all blocks with appropriate end keyword
4. Use valid participant identifiers