Files
brahman/crates/apps/SDD.md
T
sergio 550c98f275 refactor(monorepo): reorganización lógica + renames + SDDs + split CHANGELOG
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>
2026-05-19 14:48:34 +00:00

53 lines
1.8 KiB
Markdown

# apps/ — Binarios finales
**Propósito.** Aplicaciones ejecutables que consumen el protocolo
brahman y los módulos. Cada app es un `[[bin]]` o `cdylib` standalone.
## Mapa
### Protocol / Init
- `brahman-broker-explorer` — probe GPUI del broker (matches + sessions)
- `brahman-demo` — bootstrap reproducible: broker + producer + consumer
### Nahual (GPUI suite)
- `nahual-shell` — shell standard de explorers (sidebar+main+status)
- `nahual-file-explorer`, `nahual-database-explorer`,
`nahual-text-viewer`, `nahual-image-viewer`
### Akasha
- `akasha-explorer` — descubre el daemon `akasha-core` y lista Mónadas
### Nakui (ERP)
- `nakui-ui` — MetaUi+MetaForm con event log + replay
- `nakui-explorer` — dashboard sobre stack nahual
### Minga
- `minga-explorer` — dashboard de DHT semántico + indexer status
### Shuma (sandboxes)
- `shuma-daemon` — dueño de Workspaces (postcard sobre Unix socket)
- `shuma-cli` — CLI admin (`shipote` binario por compat)
- `shuma-gateway` — HTTP/JSON ↔ postcard
- `shuma-shell` — GUI GPUI de Workspaces
### Pineal (demos data-viz)
- `pineal-demo`, `pineal-stream-demo`, `pineal-phosphor-demo`,
`pineal-financial-demo`
### Web targets (cdylib WASM)
- `gioser-web` — landing chacana
- `cosmobiologia-web` (en modules/, no apps/) — bridge SVG
### Cosmobiología
- `cosmobiologia` — app GPUI principal (tree + canvas + panel)
- `cosmobiologia-cli` — calcula cartas headless
- `cosmobiologia-server` — server HTTP single-user con CRUD
## Convenciones
- Cada app declara su `Card` y se anuncia al Init vía `brahman-sidecar`.
- Apps que viven dentro de GPUI consumen `nahual-shell` para el chrome.
- Apps headless usan `clap` para argv.
- Tests E2E: usar `gpui::TestAppContext` para GPUI; CLI tests via
`tempfile` + `assert_cmd`.