ADR-030 · Slot cochid + cesión IP gradual (reserva CIS, decisión cesión por sub-producto)¶
Fecha: 2026-05-04 Source:
/srv/projects/cis/cis-plan/DECISIONS.md(do not edit here — re-split desde la fuente)
Renumerado 2026-05-04 23:30 UTC desde ADR-026 a ADR-030 para resolver la colisión con ADR-026 (Operations permission model) del 2026-04-29. Próximo número libre tras ADR-029 (Claudia CLI worker, draft). Toda referencia previa a "ADR-026 cochid" debe interpretarse como ADR-030.
Contexto
cochid (= illanes00-datos, brand cochid.cl) es el proyecto más grande de Martín: 18 sub-repositorios, ~71 GB total en disco, ~334k LOC sumando todos los sub-repos, 13 services systemd activos en vps-dev. Audit completo en COCHID-AUDIT.md (agent-V-vpsdev-audit, 2026-05-03).
Hoy es 100% activo personal de Martín. Origen histórico: portal de datos abiertos cívicos para Chile. Sub-productos top-3 maduros (priorizados por madurez técnica + tracción + dependencias estables):
- cochid-scribe: 54k LOC, 77 commits últimos 6m, plataforma redacción académica con TipTap + Claude CLI + 19 MCP tools + Google Workspace. Producción en
scribe.illanes00.cl. Diferenciable comercialmente. - cochid-datos: 10k LOC, 18 commits 6m, portal datos cívicos (presupuesto, COFOG, INE crime, World Bank). 45 routes Next.js + 62 Vitest tests + Sprints 1-10 documentados. Es el "core" original de illanes00-datos.
- cochid-congreso: 6.5k LOC, 7 commits recientes, ETL Cámara de Diputados Chile (SOAP migrate). 6 pipelines + frontend Next.js. Live en
congreso.cochid.cl.
Sub-productos restantes (15) varían entre scaffolds tempranos (cochid-economia, cochid-api, cochid-cables, cochid-lex, cochid-docs) y proyectos medio-maduros con servicio activo (cochid-tpte, cochid-videos, cochid-elecciones, cochid-graphs, cochid-maps, cochid-kiosk, cochid-imagenes, cochid-www).
Sin un ADR canónico:
- CIS no tiene slot reservado para cochid en su infra futura (path, puerto, dominio, brand tokens). Si Martín decide ceder el producto y la reserva no existe, hay coalisión potencial de port assignment, brand naming, etc.
- No está claro qué cede a CIS (todo cochid? top-3? sub-producto a sub-producto?), ni con qué trigger ni con qué valoración (cap-table impact, contrato simbólico vs. valuation real).
- La conexión con ADR-022 (marketplace lifecycle T3+T4) está implícita pero no formalizada: cochid es candidato natural a entrar como producto público en
indieweb.clcuando se construya. Hoy no se construye especulativamente.
Alternativas consideradas
- (a) No reservar slot, decidir cesión cuando emerja el caso de negocio
- Pro: zero esfuerzo. Si cochid nunca se cede, no se gasta ciclos en infra.
-
Contra: si emerge caso (revenue inicial, partnership) y la reserva no existe, hay re-trabajo (rename ports, brand, paths). Riesgo de coalisión con servicios futuros que ocupen el slot.
-
(b) Reservar slot + ceder TODO cochid a CIS ahora
- Pro: clarifica titularidad inmediata. Maximiza valor a CIS si funding entra.
-
Contra: cesión prematura. cochid tiene 15 sub-productos no maduros que probablemente no aportan valor a CIS. Cargar 71GB de scaffolds vagos al patrimonio CIS pre-PMF es ruido.
-
(c) Reservar slot + cesión gradual por sub-producto, trigger-driven ← propuesta
- Pro: balance esfuerzo/valor. Slot reservado evita coalisión sin construir nada. Cesión per sub-producto sólo cuando trigger objetivo lo justifica permite no diluir patrimonio CIS con scaffolds. Concuerda con CONSTITUTION.md ("LIBRO SpA" como matriz idea no constituida — cochid podría ser producto LIBRO o spinoff CIS según valor estratégico).
-
Contra: requiere disciplina — cada sub-producto necesita decisión per caso. Mitigado por triggers explícitos (sección 3).
-
(d) Cochid se vuelve producto LIBRO SpA (matriz idea), no CIS
- Pro: separación clara — LIBRO holdea el portfolio idea-products, CIS holdea operativa tecnológica.
- Contra: LIBRO SpA hoy no está constituida (CONSTITUTION.md TODO #2). Postergar cesión hasta LIBRO existir bloquea oportunidades CIS si emergen antes.
Decisión: (c) + opción (d) como path alternativo según valor estratégico per sub-producto.
1. Slot CIS reservado (trazabilidad-only, NO construcción)¶
Reservas declaradas para cochid en infra CIS:
- Dominio público:
cochid.cl(DNS gestionado en Cloudflare, zone apex pendiente de transferencia desde Martín). Actualmente A record apunta a vps-dev. - Puerto interno en vps-cis:
8290(rango 8200–8299 reservado para servicios CIS, ver/srv/projects/a§3 port allocation). - Path canónico:
/srv/projects/cis/projects/cochid/(post-migración Fase 2 STRUCTURE.md). - Brand tokens:
core-style/v6/brands/cochid/ya existe (logo + tokens — output Bloque V.2 / ADR-021). Sub-productscochid-datos,cochid-congreso,cochid-lex,cochid-eleccionestambién tienen brand entries.
Política de reserva: NO se construye especulativamente. El slot existe sólo como entry en este ADR (+ brand tokens en core-style + reserva de port en /srv/projects/a). El parent slug cochid NO se crea en services.yaml hasta que un trigger active la cesión (ver §3). Sub-products YA tienen entries en services.yaml con marketplace_status='internal' por brand requirement de ADR-022 §5.
2. Marco legal de cesión¶
cochid es propiedad intelectual personal de Martín. Cualquier cesión a CIS o LIBRO requiere:
- Contrato simbólico (CLP $1): cubre la cesión legal con valor pro-forma. Modelo: contrato standard de IP transfer firmado entre Martín (cedente) y CIS / LIBRO SpA (cesionaria). Archivado en
cis-admin/documentos/legal/cochid-cesion-<sub-producto>-<fecha>.pdf. - Acuerdo cap-table: cesión NO genera dilución pre-funding (es aporte tácito founder, similar a ADR-023 §2). Cuando funding entra, el batch de sub-productos cedidos se revaloriza y se le asigna equity correspondiente al cap-table. Modelo: founder share equivalence basado en LOC + revenue contribution proyectado.
- Naming convention: la cesión convierte
cochid-<sub>(personal) encis-<sub>(CIS) olibro-<sub>(LIBRO). Path canónico cambia de/srv/projects/cochid/a/srv/projects/cis/projects/<sub>/o/srv/projects/libro/<sub>/. Brand tokens migran si nombre cambia. - Ownership de datos / users: dataset y users de cochid pre-cesión quedan bajo licencia perpetua a CIS post-cesión. Datos generados post-cesión son patrimonio CIS / LIBRO. Boundary documentado por timestamp de cesión.
3. Triggers que activan cesión per sub-producto¶
La cesión NO se ejecuta por default. Se ejecuta cuando uno de estos eventos objetivos se materializa para un sub-producto específico:
- R1 · Revenue: el sub-producto recibe primer ingreso pagado (ej. user externo paga subscription a
cochid-scribe). Cesión obligatoria para que el revenue caiga en SpA fiscalmente correcta. - R2 · Partnership: contrato con tercero (universidad, think tank, gobierno) que require ownership institucional vs personal. Cesión a CIS o LIBRO según naturaleza del contrato.
- R3 · Mandato corporativo: Martín decide proactivamente que un sub-producto es estratégico para CIS roadmap (ej.
cochid-datosintegrado aperiodismo2comodata.periodismo2.cl). - R4 · Funding round CIS / LIBRO: due diligence requiere claridad de patrimonio. Cesión del batch top-3 antes de close si Martín los considera CIS-product.
- R5 · Auditoría externa SII: si el sub-producto tiene ingresos imputados a Martín persona natural y procedimientos del producto son CIS-naturaleza, hay riesgo de objeción tributaria. Cesión + retroactivo del revenue a SpA.
Default cuando trigger ambiguo: se queda personal. La cesión es one-way (no fácil revertir post-funding round); precaución >> velocidad.
4. Top-3 prioritarios para finalización gradual (roadmap conjeturado)¶
Si Martín opta por mandato corporativo (R3) o emerge revenue (R1), el orden de cesión recomendado es:
Top-1: cochid-scribe (cesión a CIS o LIBRO según valor estratégico)¶
- Trigger natural: R1 (primer subscription paid) o R3 (Martín decide rebrand
scribe.cis.cl). - Valor: 54k LOC + producción + Authentik SSO ya integrado + Claude CLI + Google Workspace integration. Producto SaaS comercializable a investigadores académicos / think tanks / universidades.
- Acciones de finalización pre-cesión:
- Tests E2E críticos (Playwright) — el repo no tiene tests directos, riesgo regresivo en cesión.
- Documentación comercial / pricing tier candidate.
- CIS SaaS dressing: rebrand a
scribe.cis.closcribe.innovacionsantiago.cl, marketplace entry enindieweb.cl. - Path post-cesión:
/srv/projects/cis/projects/scribe/(port 82xx asignar). Brandcochid-scriberetire o migra acis-scribeen core-style.
Top-2: cochid-datos (cesión a CIS, posible merge data.periodismo2.cl)¶
- Trigger natural: R3 (mandato corporativo: integración con
periodismo2editorial line). - Valor: 10k LOC + 45 routes Next.js + 62 Vitest tests + pipelines Worldbank + INE + COFOG. Aliado natural de
periodismo2(datos cívicos editorialmente curados). - Acciones de finalización pre-cesión:
- Archivar
cochid-datos-platform(43 GB legacy versión vieja, verCOCHID-AUDIT.md§componentes #3). Decommission cuandocochid-datosreemplace 100%. - Pasar de
datos.cochid.cla dominio comercial CIS (data.periodismo2.clcandidato) o standalone CIS product. - Consolidar pipelines en
core-db-basede CIS para sharing con otros productos. - Path post-cesión:
/srv/projects/cis/projects/datos/o merge acis/projects/periodismo2/data/.
Top-3: cochid-congreso (cesión a CIS, integración data source cis-platform)¶
- Trigger natural: R3 (data source para análisis legislativo en
cis-platform+ alianza editorialperiodismo2). - Valor: 6.5k LOC + 6 ETL pipelines + frontend Next.js. Data cívica estructurada de actividad legislativa.
- Acciones de finalización pre-cesión:
- Test suite smoke en CI gov-API (Cámara SOAP es frágil — recién migrada de
.aspxa.asmx, expone risk de cambio sin warning). - Circuit breaker / fallback dataset.
- Integración como data source en
cis-platformservices tabla. - Path post-cesión:
/srv/projects/cis/projects/congreso/.
Orden recomendado: Top-1 (scribe) → Top-3 (congreso) → Top-2 (datos). Razón: scribe tiene producto vendible inmediato; congreso tiene tracción editorial cruzada; datos requiere decommission de platform legacy 43GB primero.
5. Sub-productos NO priorizados (justificación)¶
- cochid-elecciones: 12k LOC pero 1 commit total, service
activatinginestable. Pierde por madurez operativa. - cochid-tpte: 5GB GTFS embebidos = pesado de operar. Producto interesante pero menor demanda comercial.
- cochid-graphs / cochid-maps: bibliotecas auxiliares más que productos finales. Útiles internamente cuando top-3 cede.
- cochid-cables / cochid-lex / cochid-economia: scaffolds tempranos (≤1 commit, sin producto claro). Quedan personales hasta tracción.
- cochid-videos: producto generación pero menor demanda externa que scribe.
- cochid-www / cochid-api / cochid-docs / cochid-imagenes: landing + scaffold + docs + Penpot wrapper. Útiles si todo cochid se cede como ecosistema; aislados, no.
6. Conexión con ADR-022 (marketplace lifecycle)¶
Cochid (post-cesión) entra al marketplace indieweb.cl siguiendo lifecycle estándar ADR-022:
- Pre-cesión: sub-product NO aparece en marketplace. Si tiene entry en
services.yaml(cochid-datos, cochid-congreso, cochid-lex, cochid-elecciones ya tienen por brand requirement),marketplace_status='internal'enforced. - Post-cesión + R3 (mandato corporativo): promotion a
previewcon checklist ADR-022 §2 (logo, AGENT-CONTEXT.md, healthz, Authentik group<slug>-preview). - Producto público con tracción (R1 revenue >0): promotion a
betaopublicsiguiendo gates ADR-022 §3. - Cochid como T3+T4 marketplace: hoy
indieweb.cllista 9 productos (cis-www, indieweb.cl, isometrico, situacion, librospa, periodismo2, usaia, firmasydocumentos, idea.indieweb.cl, todos grandfathered). Top-3 cochid son candidatos naturales a entrar como T3 (productos cedidos) o T4 (productos comercializados externamente).
7. Caso LIBRO SpA (matriz idea, no constituida)¶
CONSTITUTION.md §1 menciona "LIBRO SpA" como matriz idea no constituida hoy. Si Martín opta por path (d), cochid es producto natural de LIBRO porque:
- Naturaleza idea-product (datos cívicos, redacción académica, análisis legislativo) coincide con thesis LIBRO (publicación + producción intelectual).
- CIS es operativa tecnológica (plataforma multi-tenant, marketplace, Authentik SSO, payments). CIS holdea infra y revenue plataforma; LIBRO holdea producto idea.
Postergación aceptable: LIBRO no constituida hoy. Si trigger emerge antes que LIBRO exista, la cesión va a CIS por default y se retrofitea a LIBRO post-incorporación (transferencia intra-grupo).
Consecuencias
- Positivo: slot CIS reservado evita coalisión de port/path/brand sin construir nada. Si trigger nunca activa, cero costo.
- Positivo: cesión gradual per sub-producto evita diluir patrimonio CIS con scaffolds inmaduros. Sólo lo que produce valor pasa al patrimonio.
- Positivo: triggers explícitos eliminan ambigüedad — cesión no "cuando alguien acuerde" sino cuando evento objetivo lo justifica.
- Positivo: contrato simbólico CLP $1 + cap-table retroactivo permite proceder sin valoración formal, mientras protege equity post-funding.
- Negativo: cochid sigue 100% en vps-dev hasta cesión. Continuity risk para sub-productos productivos (
scribe.illanes00.cl) bajo titularidad personal Martín. Aceptable mientras revenue = 0. - Riesgo · cesión sin tests: cochid-scribe tiene 0 tests directos. Cesión a CIS sin Playwright suite puede romper expectativas SLA si CIS lo comercializa.
- Riesgo · LIBRO no constituida: si funding entra antes que LIBRO exista, cesión va a CIS por default. Retrofit a LIBRO post-incorporación es transferencia intra-grupo (no gratuita necesariamente — puede generar evento tributario).
- Compatibilidad con ADR-022: post-cesión, cochid sigue lifecycle estándar marketplace. Default
internalen services.yaml. - Compatibilidad con ADR-023: cochid NO migra como artefacto vps-dev → vps-cis pre-cesión. ADR-023 §2 cesión gratuita NO aplica a cochid hasta trigger. Personal hasta entonces.
- Compatibilidad con ADR-024: post-cesión, cochid sub-products usan Authentik CIS (cutoff path activado o instancia única bajo licencia, según trigger ADR-024 status).
- Dependencia de CONSTITUTION.md: §1 LIBRO SpA es opcional. Cochid puede vivir como CIS-only si LIBRO nunca se constituye.
- Dependencia de COCHID-AUDIT.md: la priorización top-3 está basada en madurez snapshot 2026-05-03. Re-auditar cada Q si decisión de cesión está cerca.
TODOs internos
- Pre-trigger (ahora): brand tokens
cochid-scribe,cochid-tpte,cochid-wwwfaltantes encore-style/v6/brands/. Replicar antes de presentar productos cochid externamente (ya identificado enCOCHID-AUDIT.md§TODOs #5). - Pre-trigger: archivar
cochid-datos-platform(43 GB legacy). Decisión: archive, decommission, o merge. Acción humana (Martín, ≤4 h). - Pre-trigger: verificar Polymarket / Interactive Brokers realmente NO están en cochid (probable que vivan en
illanes00-finance/illanes00-investment, fuera de scope cochid). Validación humana (≤30 min). - Cuando R1 active (cochid-scribe): ejecutar plan de cesión §2 — contrato simbólico CLP $1, brand rename a
cis-scribeolibro-scribe, path migration a/srv/projects/cis/projects/scribe/, marketplace entry, cap-table entry. - Cuando R3 active (cochid-datos integration con periodismo2): pre-flight de merge — esquema de DB, route conflicts, brand decision (
data.periodismo2.clvs standalone). - Cuando R3 active (cochid-congreso integration con cis-platform): definir contract REST
/api/v1/data/congreso/...para quecis-platformconsuma data source. - **✅ Renumeración ejecutada 2026-05-04: este ADR es ADR-030 (era ADR-026 cochid). El ADR-026 canónico es Operations permission model.
- Revisión trimestral: entry en CHANNEL cada Q con check de los 5 triggers (R1-R5). Si alguno está cerca, escalar a decisión humana.
Referencias
/srv/projects/cds/cis/cis-plan/COCHID-AUDIT.md(inventario completo + top-3 priorización + dependencias externas)./srv/projects/cds/cis/cis-plan/AUDIT-VPSDEV-2026-04.md§G (cochid no es servicio CIS hoy)./srv/projects/cds/cis/cis-plan/TRANSFER-PLAN-VPSDEV-CIS.mdfila #24 (cochid sin migración hasta cesión).- ADR-022 versión 2026-05-04 (marketplace lifecycle, slot cochid §5).
- ADR-023 (política de migración illanes00 → CIS, marco para cesión gratuita).
- ADR-024 (Authentik separation, dependencia para SSO post-cesión).
- ADR-026 versión 2026-04-29 (operations permission model, FES-gated en DNS apex
cochid.cl). - ADR-021 (brand tokens convention en
core-style/v6/brands/). - CONSTITUTION.md §1 LIBRO SpA + §3 founder contribution + §4 IP.
/srv/projects/core/core-style/v6/brands/cochid/(brand tokens existentes)./srv/projects/a§3 (port allocation, rango 8200–8299 reservado CIS).