Skip to content

Latest commit

 

History

History
92 lines (67 loc) · 3.09 KB

File metadata and controls

92 lines (67 loc) · 3.09 KB

MVP — Definición y checklist

Objetivo del MVP

Entregar Mata, un workspace de terminal nativo usable en el flujo diario:

Abrir un repo → trabajar en terminals reales → revisar diffs Git → stage/commit → cerrar y recuperar el layout básico.

Sin orquestación multi-agente, sin browser, sin IDE; los CLIs de agentes se ejecutan dentro de terminales reales mediante adapters.

Alcance incluido

  • App GPUI nativa (macOS prioritario; Linux si sale sin retrasar)
  • Open project (directorio)
  • Terminal real con libghostty-vt + PTY
  • Tabs de terminal
  • Splits básicos (horizontal y vertical)
  • Panel Files (tree)
  • Panel Git: status + diff + stage/unstage/discard + commit
  • Command palette mínima
  • Persistencia: proyectos recientes + tabs entre reinicios
  • Persistencia de layout (anchos de sidebar y dock)
  • Adapters CLI-first para agentes y referencias de sesión persistentes
  • Selector separado para reanudar sesiones por proveedor, título, ruta o ID
  • Dark theme usable
  • Documentación de build y docs de producto en /docs

Explicitamente excluido

  • ACP/MCP / multi-agent orchestration
  • Browser panes
  • Diff editable / apply hunk
  • Push/pull, merge, rebase UI
  • Scrollback persistente entre launches
  • Temas custom avanzados
  • Windows
  • Distribución firmada/notarizada completa
  • Telemetría

Checklist de aceptación

Terminal

  • Shell del usuario arranca en el cwd del proyecto
  • Input de teclado funciona (caracteres, Enter, Backspace, Ctrl+C)
  • Output con colores básicos correcto
  • Resize no corrompe la grilla de forma grave
  • Scrollback permite revisar output anterior
  • Segundo tab/split es un PTY independiente

Proyecto y layout

  • Open project funciona y aparece en la sesión actual
  • Quit + relaunch restaura proyecto y tabs (shells nuevos)
  • Sidebar muestra proyecto activo

Git

  • Status refleja cambios reales del working tree
  • Diff de un archivo modificado se puede leer
  • Stage / unstage funciona
  • Discard pide confirmación y funciona
  • Commit con mensaje actualiza status

UX mínima

  • Empty state sin proyecto
  • Palette abre proyecto / nuevo terminal
  • Palette de reanudación separado con búsqueda y scroll
  • Atajos documentados funcionan (requiere QA manual completo)
  • No crash en flujo feliz (requiere QA manual completo)

Ingeniería

  • Crates modulares según TRD
  • Commits granulares en el historial del MVP
  • cargo test en verde en módulos con tests
  • README con prerequisites (Rust, Zig, etc.)
  • AGENTS.md respetado en el proceso

Criterio de “MVP listo”

Todas las casillas de aceptación en verde sin atajos que dejen el terminal inutilizable o Git mentiroso.

Si una feature secundaria del MVP bloquea el terminal core, se recorta la secundaria; no se degrada el terminal.

Primera vertical (semana 0–1)

Única meta: Fase 1 de IMPLEMENTATION.md — un terminal libghostty-vt usable dentro de GPUI.

Nada de Git, nada de sidebar, nada de palette hasta que eso esté sólido.