Ir al contenido
DocuGraph

DocuGraph

Especificación Gate 0 — Viabilidad técnica MCP

GATE-0: Especificación de Gate 0 (viabilidad técnica)

Sección titulada «GATE-0: Especificación de Gate 0 (viabilidad técnica)»

Fuente de verdad de criterios: MASTER-00 §5.1. Este documento no sustituye el catálogo de producto (MCP-SPEC); fija el subconjunto implementable y evaluable antes de PoC/MVP.


Comprobar que DocuGraph puede recuperar contexto mediante MCP sin aplicación móvil ni backend cloud:

  • Servidor MCP en Kotlin (:docugraph-mcp) sobre núcleo documental (:docugraph-core).
  • Repositorio demo + gold standard definidos para EXP-01.
  • Tools: get_task_context, validate_traceability.
  • Transporte STDIO únicamente (DEC-003).
  • Un cliente MCP real y tarea demo BE-02 (identidad distinta del catálogo docs/backend/BE-02_*).

Fuera de Gate 0 Motivo
App Mobile/Desktop UI PoC / MVP / Fase D
RevenueCat, identidad, Pro entitlements MVP+
Transporte HTTP/SSE PoC/Producto; alcance Gate 0 limitado a STDIO (DEC-003/DEC-004)
Tool get_dependency_graph Catálogo; no criterio §5.1
Resources docugraph://*, prompts MCP de catálogo Opcional post-Gate 0
PostgreSQL / Ktor / :docugraph-backend POST_MVP
PoC multi-tarea y métricas de línea base completa Fase B
Afirmar H01–H14 como APOYADA/REFUTADA sin evidencia Gobernanza §0

Componente Módulo Responsabilidad Gate 0
Document Loader :docugraph-core Descubrir .md bajo workspace; leer texto
Metadata Parser :docugraph-core YAML frontmatter → nodo (META-01)
Graph Resolver :docugraph-core Grafo depends_on; recorrido upstream; orden topológico; determinismo
Bundle Builder :docugraph-core Markdown bundle + justificación de cada inclusión
Traceability Validator :docugraph-core Links rotos, frontmatter inválido, ciclos (Tarjan)
MCP Tools + STDIO :docugraph-mcp Exponer tools vía Kotlin MCP SDK 0.15.0 (DEC-004)

Regla KMP (DEC-002 / RES-00): parser, grafo y bundle sin APIs de UI ni de SO; el servidor MCP solo adapta transporte e I/O de proceso.

Contratos detallados: META-01, MCP-G0.


4. Checklist MASTER-00 §5.1 — estado de gobernanza (post EXP-01, 2026-08-11)

Sección titulada «4. Checklist MASTER-00 §5.1 — estado de gobernanza (post EXP-01, 2026-08-11)»
# Criterio de aprobación Estado documental Estado runtime
1 El cliente se conecta correctamente Spec STDIO en MCP-G0 Cumplido — 4/4 PASS con cliente MCP externo real (JetBrains Junie) vía STDIO (2026-08-11); corrida inicial con Client+ChannelTransport en memoria (DEC-005)
2 BE-02 demo devuelve el conjunto esperado Gold standard en GOLD_STANDARD_BE-02.md Cumplido — cobertura 100%, 0 omisiones críticas, 0 irrelevantes (EXP-01 Resultados)
3 Las referencias rotas se detectan validate_traceability en MCP-G0 Cumplido — LINK_BROKEN_DEPENDS y LINK_CYCLE detectados en fixtures negativos
4 La salida explica cada inclusión Bundle contract en META-01 / MCP-G0 Cumplido — sección ## Inclusion report con depth y razón por nodo
5 La ejecución es reproducible Determinismo + mismo workspace Cumplido — orden reverse-postorder determinista; verificado en pruebas automatizadas
6 No se requieren documentos ajenos a la tarea Alcance del resolver + gold Cumplido — bundle de BE-02 no incluye IRRELEVANT-01 ni fixtures negativos

Alcance declarado en gobernanza (hechos de repo, actualizado 2026-08-11):

Ítem alcance §5.1 Estado
Servidor MCP Kotlin Implementado en :docugraph-mcp (Main.kt) sobre kotlin-sdk 0.15.0
Repo demo Creado en research/evidence/demo-repo/ (+ negativos en demo-repo-negatives/)
Document Loader / Metadata Parser / Graph Resolver Implementados en :docugraph-core (12 pruebas unitarias en verde)
get_task_context / validate_traceability Implementados y probados vía cliente MCP real del SDK (3 pruebas de integración en verde)
Cliente MCP real Verificado en memoria (ChannelTransport); pendiente verificación STDIO con cliente externo
Ejecución BE-02 demo Ejecutada — ver resultados en EXP-01

5. Repositorio demo y gold standard (requisitos, no resultados)

Sección titulada «5. Repositorio demo y gold standard (requisitos, no resultados)»

Debe existir un workspace separado del catálogo de producto (p. ej. research/evidence/demo-repo/ o path fijado en EXP-01) que contenga:

  1. Nodos Markdown con frontmatter válido (META-01).
  2. Una tarea objetivo con id: BE-02 solo en el demo (no confundir con BE-02 de producto).
  3. Cadena depends_on realista (historia → contrato/spec → tarea) y al menos un documento irrelevante no enlazado (para precisión).
  4. Al menos un caso de link roto y, si se prueba el validador en aislamiento, un fixture de ciclo opcional en subcarpeta de negativos.
  5. Sin dependencia de PostgreSQL ni de módulos app.

Antes de correr EXP-01, un revisor humano define (archivo bajo research/evidence/):

  • Lista de recursos obligatorios (IDs) para get_task_context("BE-02").
  • Lista de recursos opcionales/aceptables.
  • Recursos que no deben aparecer (irrelevantes conocidos).
  • Criterio de “omisión crítica”.

El gold no puede copiarse ciegamente del primer output del resolver (evitar circularidad). Se fija por lectura manual de la tarea demo.


6. Definición de done (Gate 0 implementación + evaluación)

Sección titulada «6. Definición de done (Gate 0 implementación + evaluación)»

Done de implementación (desbloquea EXP-01):

  1. Código mínimo en :docugraph-core y :docugraph-mcp según META-01 y MCP-G0.
  2. ./gradlew :docugraph-mcp:run (o equivalente) sirve STDIO.
  3. Cliente MCP real invoca ambos tools contra el demo.
  4. Fixtures demo + gold standard versionados en research/evidence/.

Done de evaluación (cierre formal Gate 0):

  1. EXP-01 ejecutado; evidencia en research/evidence/.
  2. Checklist §5.1 evaluada con veredicto CONTINUAR / AJUSTAR / REPETIR / DETENER (§15 MASTER-00).
  3. Hipótesis solo cambian de estado con evidencia (no en este documento de spec).

Prioridad Ítem
P0 META-01 + MCP-G0 + este GATE-0; parser; grafo; tools STDIO; demo+gold; cliente; EXP-01
P1 PoC 3 tareas; métricas línea base; get_dependency_graph; núcleo KMP multiplatform targets si aún JVM-only
P2 MVP Mobile, RevenueCat, Desktop UI, backend cloud

  • Veredicto pre-experimental (solo diseño/gobernanza): ver FIND-01.
  • Veredicto post-EXP-01 (2026-08-11): CONTINUAR — ver Resultados y Decisión de EXP-01, DEC-004 y DEC-005. Gate 0 formalmente APROBADO el 2026-08-11: el criterio §5.1.1 se cerró con cliente MCP externo real (JetBrains Junie, 4/4 PASS) vía STDIO.

  • Upstream: MASTER-00 §5.1, RES-00, EXP-01, META-01, MCP-G0.
  • Related catalog (no alcance runtime Gate 0 completo): MCP-SPEC.