brewlog/src/infrastructure/repositories
Jon Seager 6271b0e5e5
feat(ai): capture usage data from OpenRouter API responses
Add Usage struct to parse prompt_tokens, completion_tokens,
total_tokens, and cost from every OpenRouter response. Extraction
functions now return (result, Option<Usage>) tuples. New ai_usage
table stores per-call records with a repository trait and SQL
implementation.
2026-02-05 12:08:48 +00:00
..
ai_usage.rs feat(ai): capture usage data from OpenRouter API responses 2026-02-05 12:08:48 +00:00
bags.rs feat(home): limit open bags to 3 most recently updated 2026-02-04 17:19:26 +00:00
brews.rs feat(search): implement search filtering in repository SQL queries 2026-02-03 12:51:26 +00:00
cafes.rs refactor(cafes): remove notes field from Cafe entity 2026-02-03 21:02:37 +00:00
cups.rs fix(timeline): use consistent "Added" labels and simplify cup title 2026-02-04 16:01:03 +00:00
gear.rs feat(search): implement search filtering in repository SQL queries 2026-02-03 12:51:26 +00:00
macros.rs chore(lint): enable clippy pedantic and restriction lints 2026-02-02 17:55:16 +00:00
mod.rs feat(ai): capture usage data from OpenRouter API responses 2026-02-05 12:08:48 +00:00
pagination.rs refactor: simplify overly nested and duplicated code across five modules 2026-02-04 19:25:35 +00:00
passkey_credentials.rs feat(account): add account page with passkey and token management 2026-02-05 11:24:43 +00:00
registration_tokens.rs feat(auth): replace password auth with WebAuthn passkeys 2026-02-05 11:00:07 +00:00
roasters.rs refactor(roasters): remove notes field from Roaster entity 2026-02-03 21:18:48 +00:00
roasts.rs refactor(roasts): extract helpers to remove too_many_lines suppression 2026-02-03 14:09:53 +00:00
sessions.rs feat!: use numeric, database-generated IDs throughout 2025-11-25 18:21:04 +00:00
timeline_events.rs feat(search): implement search filtering in repository SQL queries 2026-02-03 12:51:26 +00:00
tokens.rs chore(lint): enable clippy pedantic and restriction lints 2026-02-02 17:55:16 +00:00
users.rs feat(auth): replace password auth with WebAuthn passkeys 2026-02-05 11:00:07 +00:00