feat(tahuantinsuyu): fase 26 — data plane brahman real (service socket + CLI)
1[workspace]
2resolver = "2"
3members = [
4 # ============================================================
5 # core/ — Init y compat (arje absorbido)
6 # ============================================================
7 "crates/core/brahman-card",
8 "crates/core/brahman-card-wit",
9 "crates/core/brahman-cards",
10 "crates/core/brahman-handshake",
11 "crates/core/brahman-broker",
12 "crates/core/brahman-admin",
13 "crates/shared/brahman-sidecar",
14 "crates/shared/brahman-net",
15 "crates/shared/ente-incarnate",
16 "crates/core/ente-card",
17 "crates/core/ente-bus",
18 "crates/core/ente-cas",
19 "crates/core/ente-kernel",
20 "crates/core/ente-soma",
21 "crates/core/ente-wasm",
22 "crates/core/ente-snapshot",
23 "crates/core/ente-brain",
24 "crates/core/ente-zero",
25 "crates/core/ente-echo",
26 "crates/core/ente-policy-provider",
27 "crates/core/ente-logind-compat",
28 "crates/core/ente-hostnamed-compat",
29 "crates/core/ente-timedated-compat",
30 "crates/core/ente-localed-compat",
31 "crates/core/ente-journald-compat",
32 "crates/core/ente-resolved-compat",
33 "crates/core/ente-polkit-compat",
34 "crates/core/ente-machined-compat",
35 "crates/core/ente-tmpfiles-compat",
36 "crates/core/ente-systemd1-compat",
37 "crates/core/ente-notify-compat",
38 "crates/core/ente-binfmt-compat",
39 "crates/core/ente-timer-compat",
40
41 # ============================================================
42 # modules/semantic_dht/ — DHT semántico (minga absorbido)
43 # ============================================================
44 "crates/modules/semantic_dht/minga-core",
45 "crates/modules/semantic_dht/minga-store",
46 "crates/modules/semantic_dht/minga-p2p",
47 "crates/modules/semantic_dht/minga-vfs",
48 "crates/modules/semantic_dht/minga-cli",
49
50 # ============================================================
51 # modules/ui_engine/ — Motor de widgets (yahweh libs+widgets)
52 # ============================================================
53 "crates/modules/ui_engine/libs/core",
54 "crates/modules/ui_engine/libs/theme",
55 "crates/modules/ui_engine/libs/launcher",
56 "crates/modules/ui_engine/libs/bus",
57 "crates/modules/ui_engine/libs/meta-schema",
58 "crates/modules/ui_engine/libs/meta-runtime",
59 "crates/modules/ui_engine/libs/providers/fs",
60 "crates/modules/ui_engine/libs/providers/sqlite",
61 "crates/modules/ui_engine/widgets/tree",
62 "crates/modules/ui_engine/widgets/container_core",
63 "crates/modules/ui_engine/widgets/splitter",
64 "crates/modules/ui_engine/widgets/tabs",
65 "crates/modules/ui_engine/widgets/tiled",
66 "crates/modules/ui_engine/widgets/text_input",
67 "crates/modules/ui_engine/widgets/meta-form",
68 "crates/modules/ui_engine/widgets/banner",
69 "crates/modules/ui_engine/widgets/card",
70 "crates/modules/ui_engine/widgets/stat-card",
71 "crates/modules/ui_engine/widgets/app-header",
72 "crates/modules/ui_engine/widgets/theme-switcher",
73
74 # --- lapaloma: módulo de gráficos data-viz (ver ARCHITECTURE.md fuente) ---
75 "crates/modules/ui_engine/libs/lapaloma-core",
76 "crates/modules/ui_engine/widgets/lapaloma-render",
77 "crates/modules/ui_engine/widgets/lapaloma-cartesian",
78 "crates/modules/ui_engine/widgets/lapaloma-stream",
79 "crates/modules/ui_engine/widgets/lapaloma-mesh",
80 "crates/modules/ui_engine/widgets/lapaloma-financial",
81 "crates/modules/ui_engine/widgets/lapaloma-polar",
82 "crates/modules/ui_engine/widgets/lapaloma-heatmap",
83 "crates/modules/ui_engine/widgets/lapaloma-treemap",
84 "crates/modules/ui_engine/widgets/lapaloma-flow",
85 "crates/modules/ui_engine/widgets/lapaloma-phosphor",
86 "crates/modules/ui_engine/widgets/lapaloma-export",
87 "crates/modules/ui_engine/widgets/lapaloma",
88
89 # ============================================================
90 # modules/nakui/ — ERP matemático (nakui absorbido)
91 # ============================================================
92 "crates/modules/nakui/core",
93
94 # ============================================================
95 # modules/nouser/ — explorador de Mónadas (nuevo)
96 # ============================================================
97 "crates/modules/nouser/card",
98 "crates/modules/nouser/core",
99 "crates/modules/nouser/nous",
100 "crates/modules/nouser/nous-mock",
101 "crates/modules/nouser/nous-real",
102
103 # ============================================================
104 # modules/shipote/ — runtime de espacios aislados con flujo tipado
105 # ============================================================
106 "crates/modules/shipote/shipote-card",
107 "crates/modules/shipote/shipote-protocol",
108 "crates/modules/shipote/shipote-discern",
109 "crates/modules/shipote/shipote-core",
110
111 # ============================================================
112 # modules/gioser/ — landing WASM (chacana + 4 elementos)
113 # ============================================================
114 "crates/modules/gioser/gioser-geom",
115 "crates/modules/gioser/gioser-physics",
116 "crates/modules/gioser/gioser-palette",
117 "crates/modules/gioser/gioser-shaders",
118 "crates/modules/gioser/gioser-canvas-web",
119
120 # ============================================================
121 # modules/pluma/ — markdown agnóstico + visor web elegante
122 # ============================================================
123 "crates/modules/pluma/pluma-md",
124 "crates/modules/pluma/pluma-reader-web",
125
126 # ============================================================
127 # modules/vista/ — deck horizontal swipe estilo Flutter PageView
128 # ============================================================
129 "crates/modules/vista/vista-web",
130
131 # ============================================================
132 # modules/barra/ — taskbar agnóstica estilo Windows
133 # ============================================================
134 "crates/modules/barra/barra-web",
135
136 # ============================================================
137 # modules/tahuantinsuyu/ — estudio de astrología profesional
138 # ============================================================
139 "crates/modules/tahuantinsuyu/tahuantinsuyu-card",
140 "crates/modules/tahuantinsuyu/tahuantinsuyu-model",
141 "crates/modules/tahuantinsuyu/tahuantinsuyu-store",
142 "crates/modules/tahuantinsuyu/tahuantinsuyu-engine",
143 "crates/modules/tahuantinsuyu/tahuantinsuyu-modules",
144 "crates/modules/tahuantinsuyu/tahuantinsuyu-theme",
145 "crates/modules/tahuantinsuyu/tahuantinsuyu-canvas",
146 "crates/modules/tahuantinsuyu/tahuantinsuyu-tree",
147 "crates/modules/tahuantinsuyu/tahuantinsuyu-panel",
148
149 # ============================================================
150 # apps/ — apps que consumen el protocolo (yahweh modules+shell)
151 # ============================================================
152 "crates/apps/file_explorer",
153 "crates/apps/database_explorer",
154 "crates/apps/text_viewer",
155 "crates/apps/image_viewer",
156 "crates/apps/yahweh-shell",
157 "crates/apps/nouser-explorer",
158 "crates/apps/nakui-explorer",
159 "crates/apps/nakui-ui",
160 "crates/apps/minga-explorer",
161 "crates/apps/brahman-broker-explorer",
162 "crates/apps/brahman-demo",
163 "crates/apps/shipote-daemon",
164 "crates/apps/shipote-cli",
165 "crates/apps/shipote-gateway",
166 "crates/apps/shipote-shell",
167 "crates/apps/gioser-web",
168 "crates/apps/lapaloma-demo",
169 "crates/apps/lapaloma-stream-demo",
170 "crates/apps/lapaloma-phosphor-demo",
171 "crates/apps/lapaloma-financial-demo",
172 "crates/apps/tahuantinsuyu",
173 "crates/apps/tahuantinsuyu-cli",
174]
175
176[workspace.package]
177version = "0.1.0"
178edition = "2021"
179rust-version = "1.80"
180license = "MIT OR Apache-2.0"
181authors = ["Brahman Contributors"]
182publish = false
183repository = "https://example.invalid/brahman"
184
185[workspace.dependencies]
186# === Serialización ===
187serde = { version = "1", features = ["derive"] }
188serde_json = "1"
189serde-big-array = "0.5"
190postcard = { version = "1", features = ["use-std"] }
191toml = "0.8"
192bincode = "1"
193base64 = "0.22"
194
195# === Errores ===
196thiserror = "2" # bump uniforme; arje (era 1) puede requerir ajustes menores
197anyhow = "1"
198
199# === Async ===
200tokio = { version = "1", features = ["full"] }
201tokio-util = { version = "0.7", features = ["compat"] }
202async-trait = "0.1"
203futures = "0.3"
204
205# === Observabilidad ===
206tracing = "0.1"
207tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt"] }
208
209# === Linux primitives (arje) ===
210nix = { version = "0.29", features = ["signal", "process", "sched", "mount", "fs", "socket", "net", "user"] }
211libc = "0.2"
212
213# === IDs / Hash / Crypto ===
214ulid = { version = "1", features = ["serde"] }
215uuid = { version = "1", features = ["v4"] }
216sha2 = "0.10"
217blake3 = "1.5"
218ed25519-dalek = "2"
219aes-gcm = "0.10"
220argon2 = "0.5"
221rand = "0.8"
222
223# === WASM (arje) ===
224wasmi = "0.40"
225wat = "1"
226
227# === Storage / DB ===
228sled = "0.34"
229rusqlite = { version = "0.31", features = ["bundled", "blob"] }
230
231# === P2P (minga) ===
232libp2p = { version = "0.56", features = ["tokio", "tcp", "noise", "yamux", "macros", "kad", "identify"] }
233libp2p-stream = "=0.4.0-alpha"
234libp2p-allow-block-list = "0.6"
235
236# === Code parsing (minga) ===
237tree-sitter = "0.24"
238tree-sitter-rust = "0.23"
239tree-sitter-python = "0.23"
240tree-sitter-typescript = "0.23"
241tree-sitter-javascript = "0.23"
242tree-sitter-go = "0.23"
243
244# === FS notify ===
245notify = "6.1"
246
247# === CLI / auth (minga) ===
248clap = { version = "4", features = ["derive"] }
249rpassword = "7"
250
251# === D-Bus (arje compat) ===
252zbus = { version = "4", default-features = false, features = ["tokio"] }
253
254# === Tests ===
255tempfile = "3"
256
257# === GPUI (yahweh) ===
258gpui = "0.2"
259
260# === Filesystem helpers ===
261directories = "5"
262
263# === WASM web (gioser) ===
264wasm-bindgen = "0.2"
265wasm-bindgen-futures = "0.4"
266js-sys = "0.3"
267web-sys = "0.3"
268glam = "0.30"
269
270# === Markdown (pluma) ===
271pulldown-cmark = { version = "0.12", default-features = false, features = ["html"] }
272
273# ============================================================
274# Intra-workspace deps de yahweh (referenciadas por workspace = true)
275# ============================================================
276yahweh-core = { path = "crates/modules/ui_engine/libs/core" }
277yahweh-theme = { path = "crates/modules/ui_engine/libs/theme" }
278yahweh-bus = { path = "crates/modules/ui_engine/libs/bus" }
279yahweh-provider-fs = { path = "crates/modules/ui_engine/libs/providers/fs" }
280yahweh-provider-sqlite = { path = "crates/modules/ui_engine/libs/providers/sqlite" }
281yahweh-widget-tree = { path = "crates/modules/ui_engine/widgets/tree" }
282yahweh-widget-container-core = { path = "crates/modules/ui_engine/widgets/container_core" }
283yahweh-widget-splitter = { path = "crates/modules/ui_engine/widgets/splitter" }
284yahweh-widget-tabs = { path = "crates/modules/ui_engine/widgets/tabs" }
285yahweh-widget-tiled = { path = "crates/modules/ui_engine/widgets/tiled" }
286yahweh-widget-text-input = { path = "crates/modules/ui_engine/widgets/text_input" }
287yahweh-file-explorer = { path = "crates/apps/file_explorer" }
288yahweh-database-explorer = { path = "crates/apps/database_explorer" }
289yahweh-text-viewer = { path = "crates/apps/text_viewer" }
290yahweh-image-viewer = { path = "crates/apps/image_viewer" }
291
292# ============================================================
293# Intra-workspace deps de lapaloma (módulo de gráficos)
294# ============================================================
295lapaloma-core = { path = "crates/modules/ui_engine/libs/lapaloma-core" }
296lapaloma-render = { path = "crates/modules/ui_engine/widgets/lapaloma-render" }
297lapaloma-cartesian = { path = "crates/modules/ui_engine/widgets/lapaloma-cartesian" }
298lapaloma-stream = { path = "crates/modules/ui_engine/widgets/lapaloma-stream" }
299lapaloma-mesh = { path = "crates/modules/ui_engine/widgets/lapaloma-mesh" }
300lapaloma-financial = { path = "crates/modules/ui_engine/widgets/lapaloma-financial" }
301lapaloma-polar = { path = "crates/modules/ui_engine/widgets/lapaloma-polar" }
302lapaloma-heatmap = { path = "crates/modules/ui_engine/widgets/lapaloma-heatmap" }
303lapaloma-treemap = { path = "crates/modules/ui_engine/widgets/lapaloma-treemap" }
304lapaloma-flow = { path = "crates/modules/ui_engine/widgets/lapaloma-flow" }
305lapaloma-phosphor = { path = "crates/modules/ui_engine/widgets/lapaloma-phosphor" }
306lapaloma-export = { path = "crates/modules/ui_engine/widgets/lapaloma-export" }
307lapaloma = { path = "crates/modules/ui_engine/widgets/lapaloma" }
308
309[profile.release]
310lto = "thin"
311codegen-units = 1
312strip = "symbols"
313panic = "abort"
314
315[profile.dev]
316opt-level = 0
317# `line-tables-only` mantiene stack traces con archivo:línea correctos
318# pero descarta el resto de symbols. Reduce target/ ~40% sin sacrificar
319# debugging real para nuestro flujo (no usamos gdb sobre estos crates).
320debug = "line-tables-only"
321split-debuginfo = "unpacked"
322incremental = true
323# Más codegen-units = más paralelismo + builds incrementales más chicas
324# (cada cambio re-compila menos). Default es 256 en dev pero lo
325# anclamos para evitar regresiones.
326codegen-units = 256
327
328# Override puntual para deps grandes que NO debuggeamos: gpui, ort,
329# fastembed, tokenizers, image. Subir opt-level acá hace que sus libs
330# pesen menos en target/ (símbolos descartados durante la build).
331[profile.dev.package."*"]
332opt-level = 0
333debug = "line-tables-only"
334
335[profile.dev.package.gpui]
336opt-level = 1
337debug = false
338
339[profile.dev.package.ort]
340opt-level = 1
341debug = false
342
343[profile.dev.package.fastembed]
344opt-level = 1
345debug = false
346
347[profile.dev.package.tokenizers]
348opt-level = 1
349debug = false
350
351[profile.dev.package.image]
352opt-level = 1
353debug = false