feat(app): show each batch's story as a composite timeline

The Movement log (history + provenance DAG) was recorded but invisible.
A new history sheet on every lot tile narrates the batch: movements,
germination tests, storage checks and how it entered the collection
(origin attached), most-recent first. Two one-tap chips record 'sown
today' / 'harvested today' — the first UI door to the sown/harvested
movement types. No schema change; one-shot reads only (no live
subscriptions in a transient sheet).
This commit is contained in:
vjrj 2026-07-18 06:25:55 +02:00
parent 11cbdf3022
commit 92fd84590b
10 changed files with 835 additions and 2 deletions

View file

@ -700,6 +700,25 @@
"promiseGave": "They'll return me seed",
"promiseReceived": "I'll return seed"
},
"history": {
"title": "Story of this batch",
"tooltip": "Story",
"sowToday": "Sown today",
"harvestToday": "Harvested today",
"sownRecorded": "Sowing noted",
"harvestRecorded": "Harvest noted",
"movementReceived": "Received",
"movementGiven": "Given away",
"movementSown": "Sown",
"movementHarvested": "Harvested",
"movementGerminationTest": "Germination test",
"movementSplit": "Split into batches",
"movementDiscarded": "Discarded",
"created": "Added to your collection",
"from": "From {origin}",
"germinationResult": "Germination test — {percent}%",
"linkedEarlier": "Comes from an earlier batch"
},
"sale": {
"title": "Sales",
"help": "Record seed you sold or bought — money, Ğ1, or any currency. A separate model from a gift or a Plantare. No commission is ever taken on seeds.",