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>
This commit is contained in:
@@ -15,13 +15,13 @@ cosmobiologia-panel = { path = "../../modules/cosmobiologia/cosmobiologia-panel"
|
||||
cosmobiologia-store = { path = "../../modules/cosmobiologia/cosmobiologia-store" }
|
||||
cosmobiologia-theme = { path = "../../modules/cosmobiologia/cosmobiologia-theme" }
|
||||
cosmobiologia-tree = { path = "../../modules/cosmobiologia/cosmobiologia-tree" }
|
||||
brahman-sidecar = { path = "../../shared/brahman-sidecar" }
|
||||
brahman-sidecar = { path = "../../protocol/brahman-sidecar" }
|
||||
|
||||
yahweh-core = { workspace = true }
|
||||
yahweh-theme = { workspace = true }
|
||||
yahweh-widget-theme-switcher = { path = "../../modules/ui_engine/widgets/theme-switcher" }
|
||||
yahweh-widget-splitter = { workspace = true }
|
||||
yahweh-widget-container-core = { workspace = true }
|
||||
nahual-core = { workspace = true }
|
||||
nahual-theme = { workspace = true }
|
||||
nahual-widget-theme-switcher = { path = "../../modules/nahual/widgets/theme-switcher" }
|
||||
nahual-widget-splitter = { workspace = true }
|
||||
nahual-widget-container-core = { workspace = true }
|
||||
gpui = { workspace = true }
|
||||
directories = { workspace = true }
|
||||
serde_json = { workspace = true }
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
//! (fire-and-forget; si no hay Init, la app sigue standalone).
|
||||
//! 2. Abre la DB SQLite en `$XDG_DATA_HOME/cosmobiologia/charts.db`
|
||||
//! (fallback a `~/.local/share/cosmobiologia/charts.db`).
|
||||
//! 3. Levanta GPUI con [`yahweh_theme::Theme::install_default`].
|
||||
//! 3. Levanta GPUI con [`nahual_theme::Theme::install_default`].
|
||||
//! 4. Compone el shell: [`Shell`] dueño del tree (izq), canvas (centro)
|
||||
//! y panel (abajo). Cablea las suscripciones cross-widget.
|
||||
//!
|
||||
@@ -34,7 +34,7 @@ use gpui::{
|
||||
};
|
||||
|
||||
use cosmobiologia_store::Store;
|
||||
use yahweh_theme::Theme;
|
||||
use nahual_theme::Theme;
|
||||
|
||||
use crate::shell::Shell;
|
||||
|
||||
|
||||
@@ -44,11 +44,11 @@ use cosmobiologia_store::Store;
|
||||
use cosmobiologia_tree::{
|
||||
parse_city_atlas_tsv, FreeChartEntry, TahuantinsuyuTree, TreeEvent,
|
||||
};
|
||||
use yahweh_core::{LayoutDirection, NodeId};
|
||||
use yahweh_theme::Theme;
|
||||
use yahweh_widget_container_core::ChildSlot;
|
||||
use yahweh_widget_splitter::{SplitContainer, SplitEvent};
|
||||
use yahweh_widget_theme_switcher::theme_switcher;
|
||||
use nahual_core::{LayoutDirection, NodeId};
|
||||
use nahual_theme::Theme;
|
||||
use nahual_widget_container_core::ChildSlot;
|
||||
use nahual_widget_splitter::{SplitContainer, SplitEvent};
|
||||
use nahual_widget_theme_switcher::theme_switcher;
|
||||
|
||||
/// Posición del panel de control dentro del shell. `Bottom` mantiene
|
||||
/// el layout histórico (tree+canvas arriba, panel abajo); las variantes
|
||||
@@ -1671,7 +1671,7 @@ impl Shell {
|
||||
/// Click llama a `apply_dock` que reorganiza splitters y persiste.
|
||||
fn render_dock_switcher(
|
||||
&self,
|
||||
theme: &yahweh_theme::Theme,
|
||||
theme: &nahual_theme::Theme,
|
||||
cx: &mut Context<Self>,
|
||||
) -> impl IntoElement {
|
||||
let mut row = div()
|
||||
|
||||
Reference in New Issue
Block a user