docs: rename Tanemaki → Tane in design docs and notes

Product-name mentions → Tane; backup-file extension .tanemaki → .tane;
website tanemaki.app → tane.comunes.org. Etymology-bearing docs
(README, VISION, PLAN, CLAUDE, intros) handled separately.
This commit is contained in:
vjrj 2026-07-12 13:09:12 +02:00
parent a534c14983
commit 1e2c66a982
16 changed files with 51 additions and 51 deletions

View file

@ -1,4 +1,4 @@
# Tanemaki — Usabilidad y generalización (nota de diseño)
# Tane — Usabilidad y generalización (nota de diseño)
*Documento de reflexión. Lengua: español (discusión). Afecta a la estructura del primer commit de código, por eso conviene decidirlo ahora.*
@ -56,17 +56,17 @@ Prior art que lo confirma: el software de "Library of Things" (Lend Engine, myTu
### La reconciliación: generaliza el MOTOR, no el PRODUCTO
Usabilidad y reutilización apuntan **a la misma respuesta**. Tanemaki (semillas) y la futura app de cosas son **productos separados, simples, monotema**, cada uno con su nombre y su cara; por debajo comparten un **motor común** que resuelve una sola vez la fontanería P2P/confianza/préstamo. Generalizas donde nadie lo ve (el engine), no donde todo el mundo lo sufre (el producto).
Usabilidad y reutilización apuntan **a la misma respuesta**. Tane (semillas) y la futura app de cosas son **productos separados, simples, monotema**, cada uno con su nombre y su cara; por debajo comparten un **motor común** que resuelve una sola vez la fontanería P2P/confianza/préstamo. Generalizas donde nadie lo ve (el engine), no donde todo el mundo lo sufre (el producto).
### ¿Ahora o después? "Diseña para generalizar, implementa uno"
- **Construye solo Tanemaki ahora.** No hagas la plataforma genérica de forma especulativa (riesgo de abstracción prematura: te sale la abstracción equivocada).
- **Construye solo Tane ahora.** No hagas la plataforma genérica de forma especulativa (riesgo de abstracción prematura: te sale la abstracción equivocada).
- **Pero estructura el repo desde el primer commit como workspace** con un paquete `core/` + `app_seeds/`, respetando una **costura de dominio limpia**. Extraer más adelante la app de cosas es barato si la costura se respeta; retrofitear un motor genérico dentro de un monolito es caro.
- **En `core` va solo lo obviamente compartido** (identidad, sync, `Offer`, `Party`, confianza, `Pledge`/registro de préstamo). Lo específico de semillas (`Species`, germinación, cosecha) se queda en el dominio de semillas. Se sube más a `core` solo cuando la segunda app revele la forma real compartida (regla del tres — pero el núcleo P2P/confianza/pagaré es conocido-compartido de antemano, así que extraerlo ya está justificado).
### Cómo generalizan las entidades (mapa)
| Genérico (`core`) | Semillas (Tanemaki) | Cosas (futura) |
| Genérico (`core`) | Semillas (Tane) | Cosas (futura) |
|---|---|---|
| `Item` / holding | `Variety` + `Lot` | herramienta / objeto |
| `Offer` (+ tipo **`lend`**: devolver *el mismo* objeto) | gift/exchange/sale/wanted | lend/gift/sale/wanted |
@ -78,7 +78,7 @@ Nota: el `Plantare` es el caso semillas de un concepto genérico **`Pledge`** (p
### Nombres
- **Tanemaki** = el producto de semillas.
- **Tane** = el producto de semillas.
- El **núcleo** conviene que tenga nombre neutro. Tu organización **Comunes** encaja de libro ("motor del procomún"): p.ej. paquete `commons_core` o similar. La app de cosas tendrá su propio nombre cuando llegue.
### Consecuencia técnica inmediata (por eso se decide ahora)
@ -86,14 +86,14 @@ Nota: el `Plantare` es el caso semillas de un concepto genérico **`Pledge`** (p
El **primer commit de código** no es "una app Flutter", sino un **workspace** (pub workspaces / melos) con:
```
tanemaki/ (repo)
tane/ (repo)
packages/
commons_core/ ← identidad, sync, Offer, Party, Pledge, confianza, discovery
apps/
app_seeds/ ← Tanemaki: Species, germinación, cosecha, UI de semillas, i18n
app_seeds/ ← Tane: Species, germinación, cosecha, UI de semillas, i18n
```
Drift: tablas de `core` + tablas de dominio de semillas, con las migraciones versionadas (§5 del modelo) por paquete. Así, el día que exista `app_things`, reusa `commons_core` sin tocar Tanemaki.
Drift: tablas de `core` + tablas de dominio de semillas, con las migraciones versionadas (§5 del modelo) por paquete. Así, el día que exista `app_things`, reusa `commons_core` sin tocar Tane.
---