Introduce application services that encapsulate entity creation + timeline event recording. Route handlers call service.create() instead of repo.insert() + inline timeline construction. - Add define_simple_service! macro for roaster/cafe/gear services - Add custom services for roasts, bags, brews, cups (need enrichment or cross-entity lookups) - Add to_timeline_event() methods to all 7 domain entity types - Remove timeline SQL from 4 repository insert() methods - Delete brew_timeline_event() helper from brews route handler - Update backup test to use services (timeline events created naturally) - Document service layer pattern in CLAUDE.md |
||
|---|---|---|
| .. | ||
| bags.rs | ||
| brews.rs | ||
| cups.rs | ||
| mod.rs | ||
| roasts.rs | ||