|
| 1 | +# Registro de Contribuciones — Zoo-Code |
| 2 | +## Dr. Armando Vaquera — Proyecto Aura |
| 3 | + |
| 4 | +**Fecha:** 2026-05-19 |
| 5 | +**Fork:** `proyectoauraorg/Zoo-Code` (origin) / `Zoo-Code-Org/Zoo-Code` (upstream) |
| 6 | +**Ruta local:** `/Users/dr.armandovaquera/Zoo-Code-contrib` |
| 7 | + |
| 8 | +--- |
| 9 | + |
| 10 | +## Resumen de Contribuciones |
| 11 | + |
| 12 | +| # | Branch | Status | Type | Description | |
| 13 | +|---|--------|--------|------|-------------| |
| 14 | +| 1 | `fix/i18n-roo-to-zoo-brand-consistency` | ✅ Listo | Bug fix (i18n) | Reemplazar referencias "Roo" obsoletas con "Zoo" en archivos de idioma | |
| 15 | +| 2 | `feat/user-agent-migration` | ✅ Listo | Mejora (branding) | Migrar User-Agent headers de Roo-Cline a Zoo-Code | |
| 16 | +| 3 | `fix/global-font-size` | ⏸️ Diferido | Mejora (UX) | Normalización global de tamaño de fuente — demasiado invasivo, sin issue | |
| 17 | + |
| 18 | +--- |
| 19 | + |
| 20 | +## PR #1: Corrección i18n — Consistencia de Marca "Roo" → "Zoo" |
| 21 | + |
| 22 | +**Branch:** `fix/i18n-roo-to-zoo-brand-consistency` |
| 23 | +**Commits:** 2 (sobre main, incluye e2e unskip de upstream) |
| 24 | +**Archivos:** 63 (57 archivos de idioma + 6 archivos e2e de upstream) |
| 25 | +**Riesgo:** Bajo — reemplazos de cadenas en archivos JSON de localización |
| 26 | + |
| 27 | +### Alcance de Cambios |
| 28 | + |
| 29 | +**Locales backend** (`src/i18n/locales/*/common.json`) — 18 archivos: |
| 30 | +- ca, de, en, es, fr, hi, id, it, ja, ko, nl, pl, pt-BR, ru, tr, vi, zh-CN, zh-TW |
| 31 | + |
| 32 | +**Locales frontend** (`webview-ui/src/i18n/locales/*/`) — 39 archivos: |
| 33 | +- `chat.json` (16 idiomas) |
| 34 | +- `settings.json` (16 idiomas) |
| 35 | +- `prompts.json` (de, ja, ko, zh-CN) |
| 36 | +- `mcp.json` (ja, ko) |
| 37 | + |
| 38 | +### Ejemplo de Reemplazos |
| 39 | + |
| 40 | +```json |
| 41 | +// Antes |
| 42 | +"welcomeTitle": "Welcome to Roo-Code" |
| 43 | +"marketplaceTitle": "Roo-Code Marketplace" |
| 44 | + |
| 45 | +// Después |
| 46 | +"welcomeTitle": "Welcome to Zoo-Code" |
| 47 | +"marketplaceTitle": "Zoo-Code Marketplace" |
| 48 | +``` |
| 49 | + |
| 50 | +### ¿Por Qué Importa? |
| 51 | +Estas son las cadenas más visibles para el usuario: pantalla de bienvenida, encabezado del marketplace, descripciones de configuración, prompts de chat y etiquetas de herramientas MCP. La migración incompleta crea una experiencia de marca híbrida confusa. |
| 52 | + |
| 53 | +--- |
| 54 | + |
| 55 | +## PR #2: Migrar User-Agent de Roo-Cline a Zoo-Code |
| 56 | + |
| 57 | +**Branch:** `feat/user-agent-migration` |
| 58 | +**Commits:** 1 |
| 59 | +**Archivos:** 7 |
| 60 | +**Riesgo:** Bajo — reemplazos de cadenas en headers de proveedores y tests |
| 61 | + |
| 62 | +### Archivos Modificados |
| 63 | + |
| 64 | +| Archivo | Cambios | |
| 65 | +|------|---------| |
| 66 | +| `src/api/providers/constants.ts` | `RooCode/` → `ZooCode/`, URL `Roo-Cline` → `Zoo-Code`, `Roo Code` → `Zoo Code` | |
| 67 | +| `src/api/providers/bedrock.ts` | `RooCode#` → `ZooCode#` en `userAgentAppId` | |
| 68 | +| `src/api/providers/openai-codex.ts` | `roo-code` → `zoo-code` en originator + User-Agent (×3 ubicaciones) | |
| 69 | +| `src/api/providers/openai-native.ts` | `Roo Code` → `Zoo Code` en header X-Title (×3 ubicaciones) | |
| 70 | +| `src/core/task/Task.ts` | `RooCode#` → `ZooCode#` en identificadores de eventos (×5 ubicaciones) | |
| 71 | +| `src/services/code-index/embedders/bedrock.ts` | `RooCode#` → `ZooCode#` en userAgentAppId | |
| 72 | +| `apps/cli/.../cancellation.test.ts` | `RooCode#say` → `ZooCode#say` en aserción de test | |
| 73 | + |
| 74 | +### ¿Por Qué Importa? |
| 75 | +Los User-Agent headers se envían a cada proveedor de API (Anthropic, OpenAI, AWS Bedrock, etc.). Identifican la aplicación cliente. Tener "Roo-Cline" en headers de producción: |
| 76 | +1. Presenta incorrectamente la aplicación ante proveedores de API |
| 77 | +2. Crea confusión en analítica/monitoreo de proveedores |
| 78 | +3. Es inconsistente con el campo `publisher` de `package.json` (`zoo-code`) |
| 79 | + |
| 80 | +--- |
| 81 | + |
| 82 | +## PR #3: Tamaño de Fuente Global (Diferido) |
| 83 | + |
| 84 | +**Estado:** ⏸️ No implementado |
| 85 | +**Razón:** Alta invasividad (76+ archivos), sin issue en GitHub, baja prioridad |
| 86 | + |
| 87 | +### Hallazgos |
| 88 | +- El contenido principal del chat (`MarkdownBlock.tsx`) ya usa `var(--vscode-font-size)` ✅ |
| 89 | +- Existen propiedades CSS personalizadas en `index.css` (`--text-xs`, `--text-sm`, etc.) |
| 90 | +- **76+ ubicaciones** en `webview-ui/src/components/` tienen valores de `fontSize` en píxeles hardcodeados |
| 91 | +- Migrar todos los estilos inline a variables CSS sería un refactor grande con riesgo de regresión visual |
| 92 | + |
| 93 | +### Recomendación |
| 94 | +Si se desea en el futuro, implementar en fases: |
| 95 | +1. Paneles de Configuración/MCP/Marketplace (menor riesgo) |
| 96 | +2. Componentes de UI de Chat (mayor visibilidad) |
| 97 | +3. Eliminar todos los tamaños de fuente hardcodeados inline |
| 98 | + |
| 99 | +--- |
| 100 | + |
| 101 | +## Estado de Sincronización con Upstream |
| 102 | + |
| 103 | +**Última sincronización:** 2026-05-19 20:08 CST |
| 104 | +**Commit local:** `7de61e6f9` — [Chore] Unskip VS Code e2e replay for use_mcp_tool (#93) |
| 105 | +**Diferencia con upstream:** 0 commits (✅ sincronizado) |
| 106 | +**Tipo de merge:** Fast-forward (sin conflictos) |
| 107 | + |
| 108 | +### Estado de Branches Locales |
| 109 | + |
| 110 | +| Branch | +Ahead / -Behind vs main | Estado | |
| 111 | +|--------|--------------------------|--------| |
| 112 | +| `feat/157-configurable-font-size` | +0/-1 | ✅ Necesita rebase | |
| 113 | +| `feat/80-mimo-models-integration` | +1/-1 | ✅ Necesita rebase | |
| 114 | +| `feat/user-agent-migration` | +1/-1 | ✅ Necesita rebase | |
| 115 | +| `feature/font-size-setting` | +2/-1 | ✅ Necesita rebase | |
| 116 | +| `fix/193-diagnostic-prefix-rename` | +1/-1 | ✅ Necesita rebase | |
| 117 | +| `fix/i18n-roo-to-zoo-brand-consistency` | +2/-0 | ✅ Listo para PR | |
| 118 | +| `fix/i18n-roo-to-zoo-operational-strings` | +0/-0 | ✅ Sincronizado | |
| 119 | +| `fix/user-agent-roo-to-zoo-migration` | +0/-1 | ✅ Necesita rebase | |
| 120 | +| `refactor/62-remove-stale-organizationMcps` | +1/-1 | ✅ Necesita rebase | |
| 121 | + |
| 122 | +### Nota sobre PR #194 de Upstream |
| 123 | + |
| 124 | +PR #194 (`doc-api-refactor`) es el PR más activo en upstream que propone: |
| 125 | +- Nueva estructura `docs/modules/` con diagramas Mermaid |
| 126 | +- Integración con `ApiDocBuilder` (Supabase/OpenAI) |
| 127 | +- 9 módulos de documentación + scripts de generación |
| 128 | +- **Estado:** Abierto, revisión solicitada a `@mfreer-aura` |
| 129 | + |
| 130 | +--- |
| 131 | + |
| 132 | +## Flujo de Trabajo Git |
| 133 | + |
| 134 | +```bash |
| 135 | +# Branches están listos localmente |
| 136 | +git branch -v |
| 137 | +# * main 7de61e6f9 [Chore] Unskip VS Code e2e replay for use_mcp_tool (#93) |
| 138 | +# fix/i18n-roo-to-zoo-brand-consistency 87f959f52 fix(i18n): replace stale 'Roo' references... |
| 139 | +# feat/user-agent-migration cce887a91 feat: migrate RooCode# identifiers to ZooCode#... |
| 140 | + |
| 141 | +# Para sincronizar con upstream: |
| 142 | +git fetch upstream |
| 143 | +git merge upstream/main # Fast-forward cuando no hay divergencia |
| 144 | + |
| 145 | +# Para push y crear PRs (requiere acceso de push a origin): |
| 146 | +git push origin fix/i18n-roo-to-zoo-brand-consistency |
| 147 | +git push origin feat/user-agent-migration |
| 148 | + |
| 149 | +# Crear PRs vía GitHub CLI: |
| 150 | +gh pr create --base main \ |
| 151 | + --head fix/i18n-roo-to-zoo-brand-consistency \ |
| 152 | + --title "fix(i18n): replace stale 'Roo' references with 'Zoo' across all locale files" \ |
| 153 | + --body "Completa la migración de marca Roo→Zoo en los 57 archivos JSON de localización..." |
| 154 | + |
| 155 | +gh pr create --base main \ |
| 156 | + --head feat/user-agent-migration \ |
| 157 | + --title "feat: migrate User-Agent and API headers from Roo-Cline to Zoo-Code" \ |
| 158 | + --body "Actualiza User-Agent headers, HTTP-Referer y X-Title en todos los proveedores..." |
| 159 | +``` |
| 160 | + |
| 161 | +--- |
| 162 | + |
| 163 | +## Comandos de Verificación |
| 164 | + |
| 165 | +```bash |
| 166 | +# Verificar que no queden "Roo" en locales |
| 167 | +grep -r '"Roo' src/i18n/locales/ webview-ui/src/i18n/locales/ --include="*.json" | grep -v node_modules |
| 168 | + |
| 169 | +# Verificar que no queden RooCode en proveedores |
| 170 | +grep -r 'RooCode\|Roo-Cline\|roo-code' src/api/ src/core/task/ src/services/ --include="*.ts" |
| 171 | + |
| 172 | +# Validar archivos JSON |
| 173 | +for f in src/i18n/locales/*/common.json; do python3 -c "import json; json.load(open('$f'))" && echo "OK: $f"; done |
| 174 | + |
| 175 | +# Verificar sincronización con upstream |
| 176 | +git fetch upstream && git log --oneline upstream/main..origin/main # Debe estar vacío |
| 177 | +``` |
| 178 | + |
| 179 | +--- |
| 180 | + |
| 181 | +## Próximos Pasos |
| 182 | + |
| 183 | +1. **Hacer push de branches** a GitHub (requiere acceso de push a origin) |
| 184 | +2. **Crear PRs** con títulos y cuerpos descriptivos |
| 185 | +3. **Monitorear CI/CD** para feedback de build/lint/test |
| 186 | +4. **Responder a revisiones de mantenedores** oportunamente |
| 187 | +5. **Sincronizar con upstream** antes de merge: `git fetch upstream && git merge upstream/main` |
| 188 | + |
| 189 | +--- |
| 190 | + |
| 191 | +*Generado por MiMo v2.5-pro — Xiaomi MiMo Team* |
| 192 | +*Orquestado para Proyecto Aura — Dr. Armando Vaquera* |
| 193 | +*2026-05-19 14:08 CST (America/Monterrey)* |
0 commit comments