550c98f275
Reorganización física de crates/: - core/ (mezclaba 6 propósitos) se divide en protocol/, init/, runtime/, compat/ - shared/ (3 crates) se redistribuye en protocol/ e init/ - lapaloma (sub-módulo de ui_engine) se promueve a modules/pineal/ Renames de proyectos: - shipote → shuma (runtime de sandboxes) - nouser → akasha (explorador de Mónadas) - yahweh → nahual (motor GPUI, antes ui_engine/) - lapaloma → pineal (data-viz agnóstica) Fraccionamiento UI → core agnóstico: - vista-core (DeckState + snap, 175 LOC, 5 tests verdes) - barra-core (Task + render_html + sanitize, 90 LOC, 5 tests verdes) - vista-web y barra-web ahora son thin DOM bindings Documentación nueva: - 16 SDDs por subdirectorio (≤80 LOC c/u): protocol/init/runtime/compat + 10 módulos + apps/ - docs/STATUS.md con cifras reales por proyecto - docs/ROADMAP.md con plan a finalización (6 hitos, ~6-8 semanas) - CHANGELOG.md particionado en docs/changelog/<proyecto>.md (7 buckets) Automatización: - scripts/reorg.py — script idempotente que: git mv directorios, renombra package names, recomputa path = refs, reescribe imports rust, actualiza workspace Cargo.toml. Soporta --dry-run. - scripts/split-changelog.py — particiona CHANGELOG por componente. Validación: - cargo check --workspace pasa (124 crates + 2 nuevos cores). - 10 tests adicionales (5 en vista-core + 5 en barra-core) verdes. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
152 lines
5.3 KiB
Markdown
152 lines
5.3 KiB
Markdown
# STATUS — Estado de desarrollo del monorepo
|
||
|
||
Fecha de corte: 2026-05-19. Cifras de LOC y TODOs verificadas con `find/wc`
|
||
y `grep` sobre `src/` en cada crate (sin contar `target/` ni docs).
|
||
|
||
## Resumen ejecutivo
|
||
|
||
- **126 crates** activos en el workspace (124 originales + `vista-core` + `barra-core`).
|
||
- **~78.000 LOC** de Rust en `crates/`.
|
||
- **Build pasa** (`cargo check --workspace`) tras el reorg del 2026-05-19.
|
||
- **2 warnings** no bloqueantes (variant unused + eternal-validation).
|
||
|
||
## Por proyecto
|
||
|
||
### `protocol/` — Estable
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 6,260 | sí | 19 | ★★★★☆ |
|
||
|
||
Base del fractal. Handshake fase 3 (trust Ed25519) completo. Pendiente:
|
||
fase 4 (trust beyond peer, capabilities revocables).
|
||
|
||
### `init/` — Funcional
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| ~3,600 | parcial | ~5 | ★★★★☆ |
|
||
|
||
Bootea bare metal + QEMU + initramfs. Pendiente: cobertura tests sobre
|
||
`FractalSnapshot` restore con stale fds y validación de re-encarnación.
|
||
|
||
### `runtime/` — Funcional con deuda
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| ~3,400 | parcial | ~14 | ★★★☆☆ |
|
||
|
||
`ente-brain` concentra 11 TODOs (rule engine declarativo + observer
|
||
estadístico). `ente-bus`/`ente-cas`/`ente-wasm` estables.
|
||
|
||
### `compat/` — Cobertura mínima viable
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| ~5,000 | no (esperado) | bajo | ★★★☆☆ |
|
||
|
||
14 shims D-Bus operativos. Suficiente para GNOME/KDE/PolicyKit básicos.
|
||
Pendiente: métodos avanzados (Inhibit en logind, SetVariable en localed).
|
||
|
||
### `modules/semantic_dht/` (minga) — Casi completo, falta VFS
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 5,091 | sí | 20 | ★★★★☆ |
|
||
|
||
Parser + α-hashing 5 lenguajes + DHT funcional. **Bloqueante: `minga-vfs`
|
||
es stub de 2 LOC** — sin él no hay mount de mónadas remotas.
|
||
|
||
### `modules/nahual/` — Maduro
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 15,968 | E2E con `gpui::TestAppContext` | ~10 | ★★★★★ |
|
||
|
||
Framework backbone del monorepo. Tema persistente, MetaUi+MetaForm,
|
||
shell standard. Estable.
|
||
|
||
### `modules/pineal/` — Funcional con stubs
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| ~3,900 | sí | bajo | ★★★☆☆ |
|
||
|
||
5 charts funcionales (cartesian, financial, stream, phosphor, export).
|
||
**5 stubs (<50 LOC c/u): polar, heatmap, treemap, flow, mesh.**
|
||
|
||
### `modules/nakui/` — Maduro
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 7,063 | sí | bajo | ★★★★☆ |
|
||
|
||
ERP categórico operativo. 6 módulos ERP estándar. Event log + replay.
|
||
Pendiente: documentar el patrón de morfismos en Nickel.
|
||
|
||
### `modules/akasha/` — Funcional, falta cobertura
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 4,395 | parcial | ~5 | ★★★☆☆ |
|
||
|
||
Daemon + 2 providers de embeddings (mock + fastembed). **Falta tests
|
||
sobre `cluster.rs` (k-means naive)** y manejo de drift de embeddings.
|
||
|
||
### `modules/shuma/` — Backend completo
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 6,907 | sí | 14 | ★★★★☆ |
|
||
|
||
daemon + cli + protocol + gateway + shell. Pendiente: supervisión
|
||
avanzada (restart policies + health checks).
|
||
|
||
### `modules/gioser/` — Estable
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 2,535 | sí | 0 | ★★★★★ |
|
||
|
||
Landing WASM operativa. 4 crates agnósticos + cdylib + scripts de build.
|
||
|
||
### `modules/pluma/` — Funcional, pequeño
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 178 | no | 0 | ★★★☆☆ |
|
||
|
||
Parser + reader web. Pendiente: AST con inline elements (links, emphasis).
|
||
|
||
### `modules/vista/` — Refactorizado (2026-05-19)
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 530 (175 core + 355 web) | core: 5/5 verdes | 0 | ★★★★☆ |
|
||
|
||
`vista-core` agnóstico nuevo + `vista-web` ahora thin DOM binding.
|
||
|
||
### `modules/barra/` — Refactorizado (2026-05-19)
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 280 (90 core + 190 web) | core: 5/5 verdes | 0 | ★★★★☆ |
|
||
|
||
`barra-core` agnóstico nuevo (Task + render_html). `barra-web`
|
||
delega al core.
|
||
|
||
### `modules/cosmobiologia/` — Mayor backlog
|
||
| LOC | Tests | TODOs | Madurez |
|
||
|---|---|---|---|
|
||
| 21,502 | parcial | ~20 | ★★★☆☆ |
|
||
|
||
App más grande del monorepo. `render` y `model` agnósticos bien testeados;
|
||
**`canvas` (2,850 LOC) y `tree` (2,295 LOC) GPUI sin tests**. Roadmap
|
||
extenso documentado en memorias del proyecto.
|
||
|
||
## Renames (2026-05-19)
|
||
|
||
| Antes | Ahora | Razón |
|
||
| ------------ | -------- | ---------------------------------------- |
|
||
| shipote | shuma | nombre más limpio, sin connotación |
|
||
| nouser | akasha | concepto sánscrito (registro semántico) |
|
||
| yahweh | nahual | concepto mesoamericano (forma cambiable) |
|
||
| lapaloma | pineal | promovido fuera de `ui_engine/` |
|
||
| ui_engine | nahual | unificado con el framework GPUI |
|
||
|
||
## Reorganización física (2026-05-19)
|
||
|
||
- `core/` (mezclaba 6 propósitos) → `protocol/`, `init/`, `runtime/`, `compat/`
|
||
- `shared/` (3 crates) → distribuidos en `protocol/` e `init/`
|
||
- `lapaloma` (sub-módulo de ui_engine) → `pineal/` (top-level)
|
||
- 4 apps yahweh-* → renombradas a nahual-* (incluye file/db/text/image)
|
||
- 4 apps shipote-* → shuma-*
|
||
- 4 apps lapaloma-*-demo → pineal-*-demo
|
||
- 1 app nouser-explorer → akasha-explorer
|