Sobre el proyecto

gwz-core actúa como el motor Rust fundamental para el sistema Git Workspace Zone (GWZ), diseñado para coordinar múltiples repositorios Git ordinarios en un solo espacio de trabajo reproducible e inspeccionable. A diferencia de las herramientas de línea de comandos, este crate es una biblioteca integrable que maneja la lógica compleja de política entre repositorios y gestión de espacio de trabajo detrás de un límite de mensaje de servicio tipado. La arquitectura central es neutral en términos de transporte, lo que significa que no inicia un servidor o daemon por sí mismo. En su lugar, admite patrones de integración flexibles: los adaptadores locales pueden llamar al motor directamente en el proceso, mientras que los adaptadores remotos pueden transmitir las mismas operaciones tipadas utilizando CBOR determinista o JSON impulsado por esquema. Este diseño permite que el comportamiento del espacio de trabajo sea coherente, ya sea incrustado en una CLI, una UI, un agente o un servicio de backend. Las características clave incluyen un límite de mensaje tipado que transporta errores estructurados, metadatos de operación y eventos de streaming. El sistema gestiona artefactos de espacio de trabajo como manifiestos, bloqueos, instantáneas y marcadores a través de un límite de política unificado, manteniendo las etiquetas como referencias Git reales. Las interacciones con Git están aisladas detrás de una abstracción `GitBackend`, con la implementación predeterminada que admite repositorios locales, SSH y HTTPS. Esta separación permite que los clientes compartan el mismo modelo de operación independientemente de si el núcleo está vinculado localmente o alojado de forma remota. Los desarrolladores pueden utilizar gwz-core para crear herramientas que requieren operaciones de espacio de trabajo sin volver a implementar la lógica compleja entre repositorios. La biblioteca está diseñada para estar lista para CLI y UI, lo que permite que los clientes de nivel superior utilicen los mismos controladores directamente. La documentación cubre el modelo de producto, guías de incrustación, detalles de protocolo y un catálogo de mensajes generado.