Releases ·
Roastwarden 0.9.0
Lean home, deep roastery (phase 3). A home install can hide what it doesn't use: six optional modules (reports, cupping, tuning, agents, costs, labels) behind three presets, and a new install asks once what kind of roasting it is for. Weights show in grams or ounces per browser. A roastery can record packed bags, whole bean or ground, straight from a label print, and trace any bag back to its green lot. Drum roasters get two seed profiles, an agent may ask to switch a roaster's control on (the owner approves), each roast keeps its own channels, and Matrix rooms of the newest room version are accepted. The owner's install looks as before: every module stays on.
Added
- Modules and a first-run page (ROADMAP Next 49, Modules and first run): six optional parts
(reports, cupping, tuning, agents, costs, labels) switch on and off in Settings → Modules,
with presets Home, Enthusiast and Roastery; an off module leaves the nav, menus and buttons
(its API stays). An install from before keeps everything on. A new, empty install opens
/welcomeonce: the kind of roasting, temperature and weight units, time zone.GET /api/aboutandroast statusreport the modules;roast moduleschanges them. Hermes task 40. - Weight units (Next 50): metric (g, kg) or US (oz, lb) per browser, Settings → This browser; every weight field takes "8 oz", "2 lb" or "250 g". Labels still print both.
- Packed bags, ground coffee and traceability (Next 51, Roasted coffee,
PDF reports): a packed move on a roasted lot (bags of a size, whole bean or ground
with a grind), from Beans → Packed…,
roast roasted pack <roast> 3x250g --ground espresso, or a label print run ("Take 3 × 250 g off this roast"). Ground bags' labels say so and are best within 14 days of packing (best_until_days_ground).roast traceand the Traceability report follow a roast back to its green lot, or a coffee to every bag. Migration 050. Hermes task 41. - Drum seed profiles and profiles by roaster kind (Next 52, Profiles): a profile can name the kind of roaster it is for (migration 051); two drum seeds (light filter, medium omni); the library lists the selected roaster's kind first.
- An admin token may ask to switch a roaster's control on (Next 48, owner 2026-10-31):
roast roaster control <id> manual, held for the owner's approval; turning it off is at once. - Each roast keeps its channel list (Next 48, migration 049), so history, reports and Artisan export stay right after a roaster's probes change.
- The Modbus register map is editable on the roaster's page (Next 48).
- The interface standard's three tiers (Logger, Manual, Full) are in Wire formats.
Changed
- TC4 extra columns that are temperatures follow the device's unit (°F converted); a column
may override it (
exhaust:F). - The skill's examples say
<roaster>, not the owner's ESP32 (Next 53).
Fixed
- Matrix rooms without a server part (Next 54): since Matrix spec v1.16 a room version 12
id is
!and a hash, with no:server; Settings → Notifications refused it. - A roast that would not start under load: creating a roast could fail with "database is locked" when telemetry was written at the same moment; it now waits its turn.