Skip to content

Conversation

@i11v
Copy link
Owner

@i11v i11v commented Jan 22, 2026

Summary

  • Implement a declarative email dataset generator for JMAP RFC 8621 functional testing
  • Add YAML-based scenario parser with Effect Schema validation
  • Integrate Claude Haiku via Vercel AI SDK for realistic email content generation (with template fallback)
  • Build RFC 8621 compliant JMAP Email objects with proper threading (Message-ID, In-Reply-To, References)
  • Support attachment placeholder generation for various MIME types
  • Update seed-test-data.ts to use generated data with support for all test personas

Test plan

  • Run pnpm run generate:test-emails to verify email generation
  • Run pnpm run seed:test-data to verify seeding works with new generator
  • Verify generated emails.json contains valid JMAP Email objects

🤖 Generated with Claude Code

i11v and others added 3 commits January 22, 2026 22:38
Implement a declarative email dataset generator for JMAP RFC 8621 functional
testing with the following components:

- Scenario parser: YAML-based scenario definitions with Effect Schema validation
- AI content generator: Claude Haiku integration via Vercel AI SDK for realistic
  email content (with fallback to template-based generation)
- Email builder: RFC 8621 compliant JMAP Email object construction
- Thread builder: Proper Message-ID, In-Reply-To, References header linkage
- Attachment generator: Placeholder blob generation for various MIME types

Scenarios cover threading (reply chains, branching), content types (plain text,
HTML, multipart), attachments, keywords/flags, and edge cases (emoji subjects,
long subjects, empty bodies).

Also updates seed-test-data.ts to:
- Use generated test data instead of hardcoded emails
- Create archive mailbox automatically if missing
- Properly route emails to sender's account for sent/drafts mailboxes
- Support all test personas (alice, bob, carol, david, eve)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@i11v i11v merged commit e2b4d42 into main Jan 22, 2026
5 checks passed
effect-jmap-release bot pushed a commit that referenced this pull request Jan 22, 2026
# [0.5.0](v0.4.3...v0.5.0) (2026-01-22)

### Features

* Add comprehensive test email dataset generator ([#11](#11)) ([e2b4d42](e2b4d42))
@effect-jmap-release
Copy link

🎉 This PR is included in version 0.5.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants