Pull requests y merge
El código llega a tu rama base solo a través de un pull request y de tu política de aprobación, nunca directamente desde una sesión. El botón de puerta de la cabecera lleva cada sesión por sus pasos en orden: Create PR → Approve → Merge → Archive (⌘⇧↵ lo avanza). Cada paso se comprueba contra la política y queda auditado.
Crea el pull request
Pulsa Create PR. Chronos redacta el título y la descripción con IA a partir del diff real y de la conversación de la sesión: edítalos, regenéralos o sustitúyelos por completo antes de crear. El PR apunta a la rama de la que se cortó la sesión (cambiable en la cabecera, para los repos que fluyen por una rama develop).
- ¿Sin remoto configurado? Chronos te pide uno u ofrece un merge local (abajo).
- Una sesión multi-repo abre un PR por repositorio.
Approve
Aprobar certifica el trabajo de la sesión: requiere permiso para aprobar PRs y queda registrado con su actor. Quién puede aprobar lo decide tu organización desde el panel.
Merge, solo por política
El merge procede solo cuando se cumple todo esto:
- Checks en verde: los hooks de verificación versionados pasan.
- Las aprobaciones requeridas están.
- Quien mergea tiene permiso de merge.
Si falta algo, el merge se bloquea y Chronos lista exactamente qué bloqueos quedan. Cuando es el agente quien conduce el merge desde la conversación, el merge en sí sigue detrás de un consentimiento explícito tuyo: el agente puede prepararlo todo, pero el aterrizaje lo autoriza una persona.
Chronos también se reconcilia con tu host: si un PR se mergea o se cierra en GitHub fuera de Chronos, se detecta y el estado de la sesión lo sigue.
Conflictos
Si la rama base avanzó y la sesión ya no mergea limpia, el botón de puerta cambia a Resolve conflicts: arranca un turno en la sesión donde el agente hace rebase sobre la última base, resuelve los conflictos en su propia copia de trabajo y vuelve a verificar. Revisas el resultado como cualquier otro cambio: los conflictos nunca se resuelven a ciegas sobre tu checkout.
Merge local (sin remoto)
Para un repositorio sin remoto, Merge locally hace un squash-merge de la rama de la sesión sobre la rama base de tu checkout principal: mismas puertas, sin PR. Si tenías cambios pendientes en el checkout, se guardan y se restauran alrededor del merge.
Después del merge
Una sesión mergeada se archiva sola con su contexto intacto: la encuentras en History, la restauras para hacer preguntas de seguimiento o dejas que la retención la purgue. Su rama y su copia de trabajo se limpian.
Avanza con el teclado
⌘⇧↵ pulsa el botón de puerta: crea el PR, aprueba, mergea y archiva, siempre que la política lo permita en cada paso. Más combinaciones en Atajos de teclado.
Defensa en profundidad
Chronos aplica tu política y asume la protección de ramas de tu host como respaldo: las dos capas se refuerzan. Cada PR, aprobación y merge queda registrado con quién lo hizo y cuándo, junto a los checks que pasó.