Commit graph

2 commits

Author SHA1 Message Date
Zachery Aaron Shores-Chmielewski
f0f33e0934 Implement sender client state machine with comprehensive tests
- Add SenderClient state machine with states: Idle, Ready, Composing, Encrypting, Submitted, Error
- Implement all state transitions according to specification
- Use sodiumoxide for sealed box encryption
- Add validation for sender name (max 200 chars) and message body (max 10,000 chars)
- Implement complete test suite covering:
  - State transitions and invalid transitions
  - Input validation (empty, max length, over max)
  - Encryption (ciphertext randomness, different messages)
  - Unicode and special characters support
  - Multiple messages in sequence
  - Error handling and recovery
2026-01-19 08:49:30 +07:00
Zachery Aaron Shores-Chmielewski
184702057b Add initial protocol specification
Documents the messagebox protocol with implementation-agnostic state
machines for sender, store, and reader components.
2026-01-19 08:45:16 +07:00