feat(app): ask 'how did it do?' when a harvest is noted (schema v13)
The note growers most wish they had two seasons later — did it do well, was it worth keeping — never had a home. New append-only GardenOutcomes table (lotId, season year, three-face rating, free note); the question appears ONCE, inline, right after recording a harvest in the batch story, and is skippable without a trace. The answer shows as one more story line. Rides backups/sync like every mutable table (JSON codec, LWW import, HLC clock absorb). Migration v12→v13 guarded + verified from every historical version.
This commit is contained in:
parent
92fd84590b
commit
bb5b3d4a43
20 changed files with 6030 additions and 15 deletions
|
|
@ -142,6 +142,18 @@ class ConditionChecks extends Table with SyncColumns {
|
|||
TextColumn get notes => text().nullable()();
|
||||
}
|
||||
|
||||
/// "How did it do in MY garden" — one optional, skippable answer per season
|
||||
/// (v13). Captured at the natural moment (recording a harvest), shown as one
|
||||
/// more line of the lot's story. Deliberately minimal — a coarse rating plus a
|
||||
/// free note; the note carries any nuance. Mirrors [GerminationTests]: a dated
|
||||
/// log under a Lot.
|
||||
class GardenOutcomes extends Table with SyncColumns {
|
||||
TextColumn get lotId => text()();
|
||||
IntColumn get year => integer().nullable()(); // season, e.g. 2026
|
||||
TextColumn get rating => textEnum<GardenOutcomeRating>().nullable()();
|
||||
TextColumn get notes => text().nullable()();
|
||||
}
|
||||
|
||||
/// The append-only event log on a Lot — history + provenance DAG.
|
||||
class Movements extends Table with AppendOnlyColumns {
|
||||
TextColumn get lotId => text()();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue