docs(claude): prefer workspace-level commands (analyze/test/pub get) from root

This commit is contained in:
vjrj 2026-07-10 16:16:29 +02:00
parent 5ab505bc94
commit e641f8e0fa

View file

@ -40,6 +40,12 @@ tane/
```
Dependency direction: **`app_seeds``commons_core`, never the reverse.** Boundary rules in [`docs/design/core-domain-boundary.md`](docs/design/core-domain-boundary.md).
**Prefer workspace-level commands from the repo root** — one lockfile, one `.dart_tool`, both members at once. Verified working:
- `dart pub get` (root) — resolves the whole workspace; don't `pub get` per package.
- `dart analyze` (root) — analyzes `commons_core` **and** `app_seeds` together. Use this as the default gate.
- `dart test packages/commons_core` — pure Dart, fast (~1s), the TDD workhorse.
- **Not** `dart test` for `app_seeds` — it needs `flutter test`, which is slow and has hung here; run it locally/per-package, never as a routine gate (see [testing.md](docs/design/testing.md) and the testing-gotchas memory).
## Data model (decided, `schemaVersion = 1`)
Three levels: **`Variety`** (identity/accession) → **`Lot`** (a batch you hold: `harvest_year`, quantity, `offer_status`, germination) → **`Movement`** (append-only event log = history + provenance DAG + Plantare). Plus `Species` (bundled Wikidata/GBIF catalog), `VernacularName`, `Attachment`, `ExternalLink`, `GerminationTest`, `Party`, `SeedBank`, `Offer`, `Plantare`. Every mutable row: client `UUIDv7`, `created_at`, HLC `updated_at`, `last_author`, `is_deleted` (soft delete/tombstone), `schema_row_version`. CRDT: LWW scalars, OR-Set collections, grow-only `Movement`. Full spec: [`docs/design/data-model.md`](docs/design/data-model.md).