feat(brahman-card-discovery): B4 — búsqueda de Cards local + DHT

- index — CardIndex: índice en memoria con filtros (by_label
  case-insensitive substring, by_kind, providing por Capability, by_id).
- registry — scan_dir: carga toda Card *.json de un directorio,
  saltando ruido y archivos rotos.
- discovery — CardDiscovery: une el índice local con la malla P2P;
  announce_all publica las Cards locales al DHT, find_remote busca
  proveedores. Modo local-only sin DHT también soportado.

Lo consumen el card-browser de nahual-shell y agorapura.
7 tests verdes. cargo check --workspace verde.

settings.local.json: defaultMode bypassPermissions (sesión desatendida).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
sergio
2026-05-20 15:23:16 +00:00
parent 27603c906d
commit 1e01dc27a5
7 changed files with 281 additions and 0 deletions
@@ -0,0 +1,19 @@
//! `brahman-card-discovery` — búsqueda de Cards local + DHT.
//!
//! - [`index`] — `CardIndex`: índice en memoria con filtros (label,
//! kind, capability, id).
//! - [`registry`] — `scan_dir`: carga Cards `*.json` de un directorio.
//! - [`discovery`] — `CardDiscovery`: une el índice local con la malla
//! P2P vía `brahman-dht`.
//!
//! Lo consume el widget card-browser de `nahual-shell` y `agorapura`.
#![forbid(unsafe_code)]
pub mod index;
pub mod registry;
pub mod discovery;
pub use discovery::CardDiscovery;
pub use index::CardIndex;
pub use registry::scan_dir;