Commit graph

19 commits

Author SHA1 Message Date
Jon Seager
c6b98f81c9
docs: update documentation for passkey auth
- Replace BREWLOG_ADMIN_USERNAME/PASSWORD with BREWLOG_RP_ID/RP_ORIGIN
- Document first-user bootstrap via one-time registration URL
- Document CLI browser handoff flow for token creation
- Update bootstrap script for new token creation process
- Change default URL references from 127.0.0.1 to localhost
2026-02-05 11:00:25 +00:00
Jon Seager
f4090ba329
fix(bootstrap): remove blank lines breaking cup command continuations
When cup notes were removed, the blank lines left between --cafe-id
and --rating broke shell line continuations, causing --rating to be
interpreted as a command.
2026-02-03 21:21:00 +00:00
Jon Seager
4f7d31d47a
refactor(roasters): remove notes field from Roaster entity
- Add migration 0016 to drop notes column from roasters table
- Remove notes from domain structs, repositories, views, CLI, routes
- Remove notes from AI extraction prompts and ExtractedRoaster struct
- Remove notes from scan page form and submission handler
- Update templates, bootstrap script, backup module, and tests
2026-02-03 21:18:48 +00:00
Jon Seager
ae3c1090de
refactor(cafes,cups): remove notes field from Cafe and Cup entities
- Add migrations 0014 and 0015 to drop notes columns
- Remove notes from domain structs, repositories, views, CLI, routes
- Remove notes textarea/columns from web templates
- Update bootstrap script, tests, backup module, and README
2026-02-03 21:09:34 +00:00
Jon Seager
fb31d0a0c4
refactor(cafes): remove notes field from Cafe entity
- Add migration 0014 to drop the notes column from cafes table
- Remove notes from domain structs, repository, view model, CLI, routes
- Remove notes textarea/column from web templates
- Update bootstrap script and all test files
2026-02-03 21:02:37 +00:00
Jon Seager
698c4e93c5
fix(bootstrap): use "United Kingdom" instead of "UK" for consistency
The Foursquare integration normalises ISO country codes to full names
(GB → United Kingdom). Align the bootstrap seed data to match.
2026-02-03 20:45:02 +00:00
Jon Seager
9420711a13
feat(bootstrap): add 22 cups across all 10 cafes to seed script
- Pair roasts with cafes visited, with tasting notes and ratings
- Timestamps align with cafe visit dates across the 6-month spread
- Include cup timeline event timestamp distribution
2026-02-03 16:36:45 +00:00
Jon Seager
3ab1c50cc8
refactor(timeline): remove map pin icon from timeline title
Position is already shown as a clickable detail row in the card body,
making the title icon redundant. Also removes the unused map_link field
from TimelineEventView.
2026-02-03 15:10:21 +00:00
Jon Seager
fff11b0512
feat(bootstrap): add 10 cafes across London, Madrid, Berlin, Munich and Bristol
Add cafe entries distributed over the last 6 months with timestamp
updates for both cafes and timeline events. Add .timeout to sqlite3
heredoc to handle database lock contention.
2026-02-03 14:53:18 +00:00
Jon Seager
4c7e5346a8
feat(bootstrap): add filter paper gear and brew references
- Add Hario V60 Tabbed 02, Sibarist FAST Specialty 02, and Fellow
  Stagg XF Filters as sample filter paper gear
- Reference filter papers in V60 and Stagg XF brews
2026-02-03 12:50:18 +00:00
Jon Seager
a0e2c2a1e9
feat(bootstrap): distribute sample data over 6 months
- Add sqlite3 commands to update timestamps after data creation
- Spread gear, roasters, bags, and brews logically from Aug 2025 to Jan 2026
- Ensure temporal consistency (entities created before being referenced)
- Update timeline_events to match entity creation times
2026-02-02 20:20:47 +00:00
Jon Seager
0eedf09c08
chore(brews): add sample brews to bootstrap script
- Add 8 sample brews with realistic ratios (1:15 to 1:17)
- Use various bags, grinders, and brewers
2026-02-02 19:32:11 +00:00
Jon Seager
0090c4ba43
refactor(cli): restructure commands from flat to nested subcommands
Change CLI structure from `brewlog {verb}-{entity}` to `brewlog {entity} {verb}`:
- brewlog add-roaster → brewlog roaster add
- brewlog list-bags → brewlog bag list
- brewlog create-token → brewlog token create
- etc.

Each entity module now owns its subcommand enum and dispatch logic,
simplifying main.rs and improving discoverability via `brewlog {entity} --help`.

- Add RoasterCommands, RoastCommands, BagCommands, GearCommands, TokenCommands enums
- Add run() dispatcher to each entity module
- Simplify top-level Commands enum to delegate to entity modules
- Update all CLI tests and bootstrap script
2026-02-02 17:02:46 +00:00
Jon Seager
4edc66f44a
chore(bootstrap): add sample gear (2 grinders, 3 brewers) 2026-02-02 16:48:27 +00:00
Jon Seager
2ed8772302
chore(bootstrap): finish 4 older bags in sample data
Mark 4 of the 12 sample bags as finished to provide more realistic
test data with both open and closed bags in the timeline.
2026-02-02 16:45:27 +00:00
Jon Seager
a54ca8f42d
build: add demo bags to database seeding script 2026-02-02 16:32:29 +00:00
Jon Seager
7fc1d4db70
build: update bootstrap script 2026-02-02 15:58:05 +00:00
Jon Seager
42d0f71eb1
feat!: use numeric, database-generated IDs throughout 2025-11-25 18:21:04 +00:00
Jon Seager
3241f3c961
feat: bootstrap brewlog platform 2025-11-24 11:44:12 +00:00