41 Commits

Author SHA1 Message Date
JohannVelazquez 1c4e5349cc Registro #92: Azure + CI/CD (14–15-oct) — plataforma en balam-paf-staging.azurewebsites.net, pipeline de GitHub Actions por OIDC sin secretos (build verde; la publicación espera el rol Website Contributor que asigna Balam), PostgreSQL 17 B1ms con respaldos de 35 días, Log Analytics, Application Insights, Key Vault y Storage creados (≈32 USD/mes), traspaso de la BD ensayado y pendiente (red de la BD nueva, ventana tras la prueba de Pedro); pendientes para cerrar la Etapa 1. Incluye lo que estaba sin subir: #91 (primer CFDI timbrado desde la plataforma, 1–2 oct), corte de horas del 2-oct con su Excel y generador, manual de usuario, cartas de datos bancarios, reglas de permisos de Claude Code (.claude/settings.json) y start-n8n.bat 2026-10-15 22:24:18 -06:00
Johann 4f3eb99dd0 Registro #90: prefacturas en lote (Cotizaciones y bandeja → una prefactura por cotización, en serie, folios consecutivos aunque el API de BIND vaya lento) y timbrado también desde el detalle de la factura; commit local 73d1c2a del repo del cliente, sin publicar; comprobación de que el campo de servicios sí llega de Jira (10/17 categorías resuelven) 2026-10-02 08:36:23 -06:00
Johann 987454767f Registro #89: el timbrado entra a la plataforma (prefactura → CFDI por el puente, EmitCFDI sobre el mismo documento) con dry-run, palabra TIMBRAR, verificación por lectura y bloqueo de reenvío; la cadena completa queda revisada (estado incierto de los POST de escritura cerrado, consecutivo sin la serie B, uso CFDI solo del mismo cliente), probada (212 + 10 pruebas, recorrido completo en navegador) y publicada (f5b3743) para la prueba del 1-oct con Balam; guion de la prueba y capturas del recorrido 2026-09-30 22:45:22 -06:00
Johann 63af3d634d Registro #88: el puente de prefactura queda encendido en producción (sin credenciales CTO: bloqueo del control de permisos), «Servicio de Enlace» → 106 y 11 cotizaciones con estado atrasado corregidas; lo que Pedro vio a las 7:26 (totales en cero, botones sin destino, "servicios", Arturo) tenía detrás cuatro bugs reales, corregidos y probados en 597c8a2 del repo del cliente (197 + 10 pruebas, sin push ni publicación); capturas del recorrido local
Pendientes nuevos: credenciales del usuario CTO en /opt/balam/.env (decisión de Johann), push + publicación de 597c8a2, primera prefactura real desde producción con Johann, código de BIND de las 7 categorías restantes, confirmar 2467/1084/1085 con Balam, una sola sesión operando el servidor.
2026-09-30 21:29:22 -06:00
Johann bdafb06a03 Registro #87: la API key de cto entra a producción (el sync vuelve), la vista previa se valida contra el BIND real con FAC-171 y se construye en local el modal en vivo con "Aceptar", la campana y el modo automático configurable; capturas y video del recorrido 2026-09-30 01:42:32 -06:00
Johann 7e50c71791 Registro #85: el webhook de Jira FAC queda en producción (paputec) — publicación de 5145801, secreto nuevo, PUT del webhook id 1 y prueba e2e con FAC-170 detectada en 1.05 s (HMAC, verificada) y borrada; producción sigue en Bind__Mode=Write por decisión de Johann 2026-09-30 00:31:55 -06:00
Johann e88b5e1eb8 Fusión de las dos sesiones del 29-sep: el registro del webhook Jira FAC pasa de #71 a #84 (los #71–#83 son las sesiones del 21-ago al 29-sep) y PENDIENTES conserva los dos bloques 2026-09-30 00:19:37 -06:00
JohannVelazquez e5912bfc7e Registro #71, adenda: piloto del webhook Jira FAC validado (webhook id 1, FAC-169 detectado en 14.4 s con HMAC y borrado) y script de operación; pendiente mover el webhook a paputec 2026-09-30 00:01:37 -06:00
JohannVelazquez d76496f9a3 Registro #71 y plan del webhook Jira FAC → vista previa de cotización BIND: app en modo escritura, token de Jira, ADR-001 intacto (confirmación humana) y 5 fases con una sola escritura auditada en Jira 2026-09-29 18:02:03 -06:00
JohannVelazquez 9eef941053 cambios 2026-09-29 18:01:35 -06:00
Johann 68aedc7863 El Excel de avance muestra fechas REALES por tarea (primer y último día trabajado), no el calendario plan; '—' = sin iniciar
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-16 10:28:47 -06:00
Johann 69e06dfd8c Corte del 16-sep (94.58 h): +0.50 h por el Excel publicado en Google Sheets; el Sheet compartido pasa a llamarse Avance-Balam y conserva su enlace
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-16 10:24:56 -06:00
Johann d9047de6fa Corte de horas al 15-sep (94.08 h): 39.25 h del 10-ago al 15-sep reconstruidas con evidencia y Excel de avance; seis sesiones sin bitácora listadas como huecos
- Seguimiento-horas.csv: 30 filas nuevas (sesiones 'Seguimiento PAF' del 21, 24
  y 26-ago y 3, 9 y 10-sep acotadas por los informes de Read AI; bloques de
  desarrollo por commits y mtimes; comunicación con Pedro y Noé). Marcadas
  `reconstruida` salvo la sesión del 12-ago (transcript). Actividades nuevas
  E1-09, E2-02, E2-03, E3-01, E3-02. Etapa 1 32.25 h, Etapa 2 23.75 h, ajuste
  Jira 14.75 h (rebasa las 7–10 aprobadas), Etapa 3 1.50 h.
- Avance-Balam-2026-09-15.xlsx generado desde generar_avance_2026_09_15.py
  (parte del corte 06b; el reparto por fila aborta si no cuadra con el CSV):
  publicación provisional en paputec.mx, cotización individual y en lote,
  prefactura por API bloqueada por BIND.
- Seguimiento-horas.md: sección del corte y criterios de la reconstrucción.
- PENDIENTES.md: huecos de registro del corte (seis sesiones sin REGISTRO,
  publicación del 3-sep y lote del 7-sep sin registrar, validación de horas,
  correos de Noé del 24-ago).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-15 08:48:23 -06:00
Johann d31747df93 Registro #69: primera cotización real en BIND desde FAC-106 (folio 1026) tras 5 intentos; Type=2 y VAT como tasa, indocumentados
Sesión del 21-ago: tres intentos en vivo fallaron (uno con error explícito
que se corrigió al momento, dos con 500 genérico); se aplicó el protocolo,
se verificó por lectura que nada quedó en BIND, y con autorización de Balam
se siguió sobre el ticket de prueba. La causa fue Items[].Type (2 =
servicio, el catálogo donde BIND busca el ID) y, ya emitida, la escala de
Items[].VAT (tasa, no monto) que dejó el folio 1026 con IVA absurdo y debe
cancelarse. La segunda emisión corregida queda pendiente de confirmar.

Incluye el borrador del correo a Balam con la causa y el Excel de campos y
catálogos de BIND que fue el insumo del formulario nuevo de Jira.

Co-Authored-By: Claude Fable 5 (1M context) <noreply@anthropic.com>
2026-08-21 10:16:53 -06:00
Johann 072a3cdab2 Guion 21-ago: protocolo de reacción si la emisión falla (2 reintentos, verificación anti-duplicado, guion de cierre y pivote a las definiciones)
Co-Authored-By: Claude Fable 5 (1M context) <noreply@anthropic.com>
2026-08-20 23:52:10 -06:00
Johann cabe0fe1b5 Guion de la sesión del 21-ago: aviso previo a Pedro, coreografía ReadOnly→Write→ReadOnly con cancelación en vivo, plan B del 500 y las 8 preguntas en orden de impacto
Co-Authored-By: Claude Fable 5 (1M context) <noreply@anthropic.com>
2026-08-20 23:50:50 -06:00
Johann 82f9fa5d25 Sondeo de FAC-106 y diagnóstico del 500: el payload tenía tres defectos de escala y semántica
Preparación para la sesión del 21-ago. Todo solo lectura + dry-run.

FAC-106 (creado por Pedro el 20-ago, asignado a Araceli) trae el
formulario nuevo con request type "Cotización Bind". Servicio/Producto,
Cantidad, IVA y Cliente ya son campos estructurados: el hueco de
conceptos/partidas que bloqueaba B7 queda resuelto en el origen.

Diagnóstico del 500 del 12-ago, leyendo 4 cotizaciones reales de BIND:
- VATRate va como fracción (0.16), no como 16
- el VAT de partida es un MONTO, no una tasa (Price*Qty*0.16)
- cada cotización usa un PriceListID distinto y ninguno coincide con el
  único que devuelve GET /api/PriceLists; conviene omitirlo

Dry-run corregido ejecutado (operación #18); el body queda en el informe.

Tres preguntas nuevas para la sesión: Empresa origen tiene 3 valores y
hay un solo token; el combo IVA no ofrece 0% aunque hay clientes de
exportación; y "Servicio de Enlace" existe 5 veces en BIND con unidad,
unidad SAT y ChargeVAT distintos, sin mapeo definido.

Bind:Mode está en Write fuera de sesión — hay que regresarlo a ReadOnly.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-20 23:41:14 -06:00
Johann 2fb230ef11 Registro #64: capa ticket→cotización BIND construida la noche previa a la sesión (contrato Quotes_NewQuote del portal público, dry-run + candados, 73/73); script de la prueba listo para enviar a Balam
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-11 21:30:20 -06:00
Johann f28fcc58c9 Merge de la otra máquina: definiciones Jira→BIND del correo 7-ago y verificación por API del 10-ago
La entrada remota '#59' colisionaba con las #59–#61 locales; se renumeró a #62
(con nota de merge) y sus referencias en PENDIENTES se ajustaron. El briefing
de Investigacion-API-Jira toma los párrafos del 10-ago y conserva el sondeo
del 6-ago; PENDIENTES queda con la sección nueva del flujo Jira→BIND.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-11 20:46:21 -06:00
JohannVelazquez cbb29086cc Documenta las definiciones Jira→BIND y su validación por API
Consolida el disparador, los huecos de datos y el protocolo de prueba para continuar el desarrollo con decisiones trazables.
2026-08-11 20:23:55 -06:00
Johann 6d4b781486 2.º corte del 6-ago (54.83 h): wizard de emisión asistida construido en simulación (1.00 h de sesión vespertina)
El wizard de 5 pasos de la VISTA 3 quedó navegable en balam-plataforma con
datos reales de solo lectura (cotizaciones de /api/quotes y ticket FAC vivo):
selección de cotización, datos de factura con regla PPD/PUE y advertencia SAT,
IVA por regla con totales reactivos, prefactura simulada con marca de agua y
aprobación humana visual; el timbrado queda deshabilitado hasta B7 (commits
2164f6c, 90f7633 y 0600f2f en el repo del cliente). Excel de avance del 2.º
corte generado desde script (el corte matutino no se toca); la fila de
conversión cotización→factura pasa a 40% como interfaz en simulación.
2026-08-06 14:17:06 -06:00
Johann 0d5810fb33 Regla 8 ajustada: el objetivo de cierre es el piso no comprimible y un poco más; los cortes ya reportados a Erika no se recalculan 2026-08-06 01:36:28 -06:00
Johann 311b1f64e4 Reglas de captura 7 y 8: el esfuerzo de sesión incluye pensamiento, documentación y comunicación (correos/mensajes); las horas no comprimibles son el piso de toda proyección 2026-08-06 01:33:19 -06:00
Johann 547c300015 Corte de horas al 6-ago (53.83 h): sesión nocturna de la lectura Jira (1.25 h reales — sondeo customfields, bandeja+detalle con FAC en vivo, adjuntos, shell del prototipo); Excel de avance regenerado desde script. 'Cliente de la API de Jira' queda al 100%; ajuste Jira 5.50 de 7-10 h aprobadas 2026-08-06 01:27:43 -06:00
Johann 4ce5640e76 Sondeo Jira del 6-ago: customfield IDs de FAC capturados y documentados; cierra el pendiente del script de lectura. En balam-plataforma quedan construidas la bandeja de solicitudes y el detalle con datos reales (solo lectura) + shell del prototipo; token movido a propuesta/ y user-secrets 2026-08-06 01:11:03 -06:00
Johann 7f86497314 Corte de horas al 1-ago (52.58 h): captura validada del 28-jul→1-ago, Excel de avance regenerado desde script (la versión enviada a Erika queda respaldada localmente en respaldos/)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 20:41:07 -06:00
Johann 8d320edfa7 Registra la recuperación técnica del 1-ago (#61), refresca pendientes, borrador de status para Erika y script de pruebas Jira de lectura
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 20:21:02 -06:00
Johann 07e461d07f Ordena el ajuste Jira antes de las actividades propias de la Etapa 2
El bloque quedó anidado bajo la Etapa 2 en el commit anterior, pero se
pintaba DESPUÉS de las 10 actividades propias de la etapa (29 jul-12 ago)
aunque sus 3 días (27-29 jul) son cronológicamente anteriores — al leer
de arriba a abajo, la fecha retrocedía 2 semanas de golpe. Se movió el
bloque Jira a inmediatamente debajo del encabezado de Etapa 2 y antes de
sus propias actividades: la lectura ahora es monotónica (27, 28, 29, 29,
30, 31 jul... 12 ago) sin perder el anidado visual del turno anterior.

No se tocó el orden interno de Etapa 0/Etapa 1: su ligero traslape de
fechas (el desarrollo de Etapa 1 arrancó mientras se cerraba la
validación de Etapa 0) es agrupación real por etapa contractual, no un
error de orden — desintercalarlas rompería la estructura sin ganar
claridad.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-01 13:02:07 -06:00
Johann f7f7088e01 Anida el ajuste Jira→BIND dentro de la Etapa 2 (antes leía como una 5ª etapa)
Propuesta: mueve el bloque completo (antecedente, entregables, diagrama,
candados fiscal, exclusiones, dependencia) de después de la Etapa 3 a
justo después de la Etapa 2, y le baja el peso visual — de un div .etapa
de peso igual a las 4 etapas reales, a una caja .ajuste-anidado con
barra de acento, fondo crema y kicker "AJUSTE DENTRO DE LA ETAPA 2"
(h4 bajo el h3 de Etapa 2 en el markdown). La fila de la tabla de
Inversión (§4) se reordena igual, entre Etapa 2 y Etapa 3.

Excel: mismo reordenamiento (Etapa 2 → ajuste Jira → Etapa 3) con relleno
ámbar distinto del crema de una etapa contractual, para que no compita
visualmente como una etapa más.

Cambio incidental: el glifo ↳ no existe en Caladea/Carlito y Chromium
caía a un fallback de sistema (LucidaGrande-Bold) en la fila de la tabla;
se sustituyó por » en los 3 archivos y las fuentes vuelven a embeber limpio.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-01 13:02:07 -06:00
Johann 46f86ef827 Ajusta el alcance Jira→BIND: 7-10 h (antes 9-12) e inicio lunes 27-jul
Recalcula todas las cifras dependientes en la propuesta v1.3: fila Ajuste
$4,200-$6,000, total primera etapa 119-146 h / $71,400-$87,600 (antes
121-148 h / $72,600-$88,800). El bloque de la §2 y su Excel homólogo pasan
de "se ejecuta junto con las Etapas 2-3" a "inicia el lunes 27 de julio
(token PAF ya entregado)", reflejando que la conexión a la API de Jira no
depende de la definición del flujo de facturación, solo del token que
Pedro ya entregó ese día. Las 3 actividades del plan se re-fechan a
27-29/jul y sus rangos siguen sumando exacto el total de la etapa.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-01 13:02:07 -06:00
Johann 64f7146d86 Propuesta v1.3 (Jira→BIND integrado) y plan-avance con Etapas 2-3 por actividad diaria
Reemplaza el enfoque de adenda separada: la propuesta completa sube a v1.3
con la integración Jira→BIND incorporada en §1-2 (bloque de ajuste con
entregables, candados fiscales y exclusiones), §4 (fila Ajuste 9-12 h /
$5,400-$7,200; total 121-148 h / $72,600-$88,800), §7 (supuestos del token
PAF y del flujo) y anexos A/B. PDF reconstruido con fuentes embebidas
(antes dependía de fuentes de Windows) y fixes visuales: flechas en títulos
serif, tabla de inversión sin partir, label A.4 sin huérfano.

El Excel para Erika (Avance-Balam-2026-07-28.xlsx) extiende el formato del
27-jul con Etapas 2-3 y el ajuste Jira desglosados en actividades diarias
cuyos rangos suman exactamente los contractuales; se rebalancearon los
rangos de Etapa 1 (sumaban 34-42 vs 32-39 contractual) recortando las tres
actividades con horas reales muy por debajo del estimado, con asserts que
lo verifican. Verificado con 5 agentes (paridad MD↔HTML, cifras vs
bitácora/CSV, formato y calendario, cobertura de entregables, PDF visual).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 13:02:07 -06:00
Johann 67bce9d691 Prepara la Adenda 01 (integración Jira→BIND, 9–12 h) y el Excel de horas por etapa
Los dos pendientes que Erika re-preguntó el 28-jul: la adenda formaliza la
generación automática de cotizaciones desde tickets FAC ($5,400–$7,200 + IVA,
consistente con las ~10 h comunicadas el 21-jul) como solicitud de cambio
conforme a la §10 de la propuesta v1.2; el Excel resume horas por etapa
(E0 cerrada en 21.83 h, E1 en 19.75 h, E2/E3 con rangos contractuales) con
importes para facturación. PDF con el mismo diseño del paquete v1.2.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 13:02:07 -06:00
JohannVelazquez 980baf0a0a Documenta la API de Jira FAC y protege su token
Consolida los hallazgos y decisiones pendientes para continuar el desarrollo sin exponer credenciales.
2026-08-01 12:38:39 -06:00
JohannVelazquez 820b8d41c8 Valida y consolida las horas al 27-jul: 41.58 h trazables desde el CSV
Las horas quedan validadas una por una contra evidencia fechada y el Excel
deja de tener cifras escritas a mano: se generan desde Seguimiento-horas.csv
y el script aborta si el detalle no cuadra con el total.

Correcciones de fondo:
- El Excel reportaba 17 h de Etapa 1 contra 16 h en el CSV (override manual).
- Comas sin escapar en el CSV ocultaban 1.00 h del 19-jul al parseo.
- El 10-jul estaba mal etiquetado: la mayor parte fue pulido del prototipo
  (E0-05), no el entregable de cierre (E0-06). Mismo total, etiquetas reales.
- Se incorporan 3.50 h no cobradas con evidencia: diseño del plan de Etapa 1
  (2.00 h) y preparación de las sesiones del 22 y 24-jul (1.50 h).
- Ajustes a la baja de Johann en horas reconstruidas: análisis del Discovery
  1.92→1.00 h, documentación de cobranza 1.50→0.75 h, guion 0.75→0.45 h.
  Las duraciones con transcript no se tocaron. Etapa 0 vuelve al rango 18–22 h.

Presentación del avance:
- Se reporta 75 % de Etapa 1 = 6 de 8 entregables cerrados, en lugar del 82 %
  ponderado anterior, que no distinguía trabajo hecho de trabajo bloqueado.
- Capa de escritura al 40 % (diseño, ADR-001 y modelo listos; falta el
  BindWriteClient y los shapes de los POST) y Jira al 90 % (conectividad
  resuelta el 27-jul; falta qué estatus dispara qué, sujeto a la definición
  de Balam). Modelo de facturas al 85 % con horas propias: ya no aparece
  avanzado con cero horas.
- Las 7 h que acumulaba "Demostración semanal" se reparten a las filas
  técnicas que les corresponden; esa fila se queda con gestión (1.75 h).

Nuevo: Avance-Balam-2026-07-27.xlsx, versión simple para Erika, derivada del
Excel interno para que ambos no puedan contradecirse.

Bitácora #58: Erika confirma que el Excel de horas es el insumo de
FACTURACIÓN, corrige su lectura de la capa de escritura al 100 %, y vuelve a
pedir la propuesta ajustada por Jira (pendiente desde el 22-jul). La sesión
del flujo de facturación no queda agendada: Balam la revisa internamente.
2026-07-28 22:21:04 -06:00
Johann bee2d02f50 Documenta semana 24-27 jul: validación de prototipo (aprobada), API de Jira y avance de Etapa 1
- REGISTRO #55: validación del prototipo Etapa 0 (24-jul) APROBADA; único bloqueo = definir el flujo de facturación en Jira (sesión propuesta por Araceli para el martes 28)
- REGISTRO #56: sesión de API de Jira con Pedro (27-jul) — token PAF a 1 año, bandeja FAC; + seguimiento por correo del mismo día con los límites de velocidad (65k puntos/h, burst/s, por-issue) y entrega del token por Google Drive
- REGISTRO #57: hilo de WhatsApp con Erika (21-27 jul) — coordinación, envío del flujo por correo y reagenda 23→24 jul; 3 imágenes inferidas
- Transcripciones y correo en fuentes/; guion de validación en planeacion/
- Avance-Etapa1-2026-07-27 (nota + mensaje para Erika) y Excel del corte del 27-jul (núcleo verificado; capa de escritura en pausa por definición de Balam)
- Seguimiento-horas: sesiones del 24-jul (validación) y 27-jul (API Jira)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-27 08:18:08 -06:00
Johann bebca73bfe Registra la sesión del 22-jul: alta de clientes en BIND, fee bancario (despacho) y flujo Jira confirmado
Transcript renombrado con fecha, entrada #54 en el REGISTRO, minuta de la
sesión llenada, PENDIENTES al día (PUE/PPD y particularidades de envío no
se tocaron; nuevos compromisos: diagrama Jira y sesión API con Pedro) y
0.80 h confirmadas en el control de horas.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 06:52:33 -06:00
Johann c3e984944e Cierre 21-jul: B4 con sync histórico verificado y B6 aplicado; horas, bitácora y Excel de avance al día 2026-07-22 00:06:54 -06:00
JohannVelazquez e057fb9127 Etapa 1: plan de ejecución, corte de avance del 16-jul y fuentes
- Plan-Etapa1.md: plan detallado por fases/bloques (B0-B9) con horas,
  decisiones de arquitectura y lo bloqueado hasta el 22-jul
- Avance-Etapa1-2026-07-16.md + Excel de avance ordenado por fechas
  (con script generador y de ordenamiento)
- WhatsApp 16-jul: invitación al Git recibida, procedimientos de
  clientes enviados por correo, Erika pide avance de Etapa 1
- Actualiza PENDIENTES y REGISTRO
2026-07-19 20:05:01 -06:00
JohannVelazquez 3a66e5aee1 Actualiza cierre de Etapa 0 y control de horas 2026-07-16 09:44:21 -06:00
JohannVelazquez 5004269664 Bitácora 1–6 jul: kickoff, manual de marca y Discovery de facturación
- REGISTRO #22–28: kickoff (1-jul), manual de marca recibido, coordinación
  y sesión de Discovery del proceso de facturación (6-jul), envío de la
  propuesta v1.2 y seguimiento del token de BIND (solicitado por Erika).
- Cambios de reglas del 6-jul: lista blanca eliminada (recordatorios a
  todos) y cotización BIND obligatoria como inicio del flujo.
- marca/: tokens oficiales destilados del manual de imagen corporativa.
- Plan de actividades actualizado con responsables reales post-kickoff.
- Fuentes: transcripts de kickoff y Discovery, WhatsApps de Erika, manual
  de imagen corporativa (PDF).
2026-07-06 10:57:41 -06:00
JohannVelazquez 72b7602e8e Bitácora 8–30 jun: contrato firmado, plan de actividades y skill proposal-pdf
- Comunicaciones (REGISTRO #15–#21): respuesta v1.1 (10-jun), luz verde (16-jun),
  contrato (envío 25-jun, ajustes + firma 26-jun), arranque con Erika y kickoff 1-jul
- Evidencia en fuentes/ (correos 8/10/16-jun, WhatsApp Paola y Erika)
- Contratos (sin firmar y firmado) en propuesta/
- Plan de actividades Etapa 0–3 + guion del kickoff (planeacion/)
- Skill proposal-pdf instalado (.claude/skills) + Propuesta-Balam.pdf regenerada
- README/PENDIENTES al día; limpieza de archivos sueltos; .gitignore (locks de Office)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 12:42:45 -06:00