feat: add e2e tests with Letta Cloud (#149)

E2E testing infrastructure that tests the full message flow against a real Letta Cloud agent.

Changes:
- Add MockChannelAdapter for simulating inbound/outbound messages
- Add e2e/bot.e2e.test.ts with 4 e2e tests:
  - Simple message/response
  - /status command
  - /help command
  - Conversation context retention
- Add 'mock' to ChannelId type
- Update CI workflow with separate e2e job (uses secrets)
- Add npm run test:e2e script

E2E tests require:
- LETTA_API_KEY (already in repo secrets)
- LETTA_E2E_AGENT_ID (needs to be added)

E2E tests are skipped locally without these env vars.

Written by Cameron ◯ Letta Code

"Trust, but verify." - Ronald Reagan (on e2e testing)
This commit is contained in:
Cameron
2026-02-04 17:51:23 -08:00
committed by GitHub
parent 1113631252
commit fe233b2f8f
12 changed files with 572 additions and 16 deletions

View File

@@ -108,7 +108,7 @@ LettaBot can transcribe voice messages using OpenAI Whisper. Voice messages are
### Configuration
Add your OpenAI API key to `lettabot.config.yaml`:
Add your OpenAI API key to `lettabot.yaml`:
```yaml
transcription: