# Relevo de desarrollo

La entrada vigente del checkout es `docs/prompts/continue-native.md`, con el
[flujo simplificado](execution-flow.md). Los dispatches/ownership/pendientes inferiores
son históricos; no ejecutarlos como siguiente tarea ni iniciar sus reviews otra vez.

## Subunidad autorizada: none explícito + binding Model — 2026-09-27

**Cierre técnico aprobado, finalización de artefacto única:** coordinador acepta
también terminaldda4 y herramienta7files75af tras REVIEW172e303e (focal55,
independientes16TCP/native2, opt-in/ledger/reuse/budget; sin P1/P2). Runtime/tests
actuales son los de terminaldda4, suite947/0/28 WA/compile93 owner; no refactors
posteriores. Se consolida fuente/TAR/docs coherentes una vez, tooling sólo checkout
según política del paquete; identidad y consumidores pertinentes constan en archivo.
El smoke live final será de Task separada con el runner integrado, no de este owner.
Ownership ROOT/docs/builds permanece hasta cesión explícita tras cotejo coordinador.

**Recepción/progreso posterior:** coordinador acepta offlineb609 tras review
`/tmp/opencode/exagent-none-binding-review/REVIEW.md` SHA `dfc4e158…`, sin P1/P2,
compile93/focal93/probes4. Fuente final44b9/TAR e50b permanecen inmutables. G2Luna
comunicó13/14; length_stream sigue no cualificado y no se convierte en verde:
su diagnóstico stock adicional devolvió tool_calls, no prueba el terminal original.
La reproducción TCP independiente sí demostró otra prioridad de error; coordinador
autorizó ADR8.37 y delta mínimo: finish fallido manda, partial sólo si traducción
completa válida; si no, nil. Focal74 verde, nueva review requerida para ese delta.
Se espera harness portable G2 para receta live habitual bajo autorización permanente;
verification.md ya distingue opt-in por ola/ledger/grant interno de permiso humano.

G2final recibido REPORT5b542ee1/delivery87c324c3: gpt4omini14/14 +2controlesstream,
Luna13/14 parcial, GLM/DeepSeek1texto cadauno;40admisiones/7efectos/USD2.37 reserva,
no factura. Harness portable7files integrado en test/support/openrouter_qualification,
6executables exactos/README adaptado; proof75af y verification23db (nooptin64,
offline2casos3TCP1efecto/reuse1 bytepreservado). Runtime/tests del delta terminaldda4
pasan compile93/suite947/0/28 WA; no otro runtime edit. Esperar reviewdelta/tooling
y consolidar un paquete final con recepción, sin atribuir estas cifras a e50b viejo.
La recepción de review posterior en esta cabecera sustituye aquel pendiente.

Owner permanece `task_730426cd2919`/`ctx_0c683a93c818`, sin cesión. Tras completar
admisión2a74/TAR3c180 y receipt492d, coordinador autorizó extensión genérica pequeña
para ejecución no-reasoning explícita sobre modelos capaces de razonar. ADR8.36 fue
aprobada antes del código: reasoning_mode:nil/none; callback opcional genérico
Model.continuation_binding/1 acotado4KiB; continuation3/Frame3/Abort2 explícitos,
lectores legacy sólo bindingnil, templateantes/codecrestauradodespués incluso primera
request incierta. No se falsean capabilities ni se abre reasoning continuation.

Vertical stock TCP + C7 en verificación: rojo causal3/3, focales88/22/86 verdes;
schema, historia, autoridad, caps/settings, binding4KiB/+1, cambios target/mode/caps
antesclaim, child binding, abort, J/data-only y tree2 auténtico desde writer antiguo.
Detalles/identidades/gates nuevos en `docs/archive/2026-09-27-reasoning-none-binding.md`.
Fuente317 `b609cd9d…`/manifest `213dc1b9…` congelada y entregada para copias privadas;
después sin cambios runtime/tests: compileforce93, focal final45, suite946/0/28 WA
seed37556 y snippets9/formato/ExDoc/links/plan exit0. TAR y consumidores fijos nuevos
se identifican en el registro; ninguna aceptación se infiere de su preparación.
G2 worker sólo recibirá nuevo freeze en copia privada; ninguno de los tres modelos
cheap adicionales está cualificado por leer catálogo. GLM obligatorio y DeepSeek
sin none demostrado siguen fuera del perfil mínimo. No paid tests por este owner.
R6/R7, fork/upgrade/instalación/publicación siguen fuera; nominal1.3.0/lock intactos.

## Recepción anterior: admisión final ReqLLM — 2026-09-27

**Esta cabecera prevalece sobre los checkpoints históricos inferiores.** Task
`task_730426cd2919`/`ctx_0c683a93c818`, Astra LOW confirmada por coordinador, posee
ROOT/docs/builds hasta cesión expresa; ningún owner antiguo citado abajo sigue
activo por esas notas. ORCA_CHECKPOINT/prompt de transferencia son del coordinador.
Preservar WIP, nominal1.3.0, lock stock1.24 y SQL4b89; no fork/upgrade/release.

**Recepción documental posterior al freeze, autorizada por coordinador:** review
fresca2a74 aceptada offline, REVIEW SHA `7ec91a94…`; perfil live OpenRouter
`openai/gpt-4o-mini`/OpenAIChat stock1.24 aceptado14/14,17admisiones,3efectos,0retries,
cuatro rojos stream verdes con flags conservados y length real max16 sin efectos.
No aceptación G2 universal ni multimodelo. Coord verificó fuente313 `08e55f61…`,
manifest `a8ebba24…` y TAR115 `3c180d5d…`; permanecen inmutables. Esta recepción
modifica sólo archivo de unidad, esta cabecera y roadmap§5; no reempaqueta ni
convierte prosa posterior en bytes revisados. Hashes completos/scope en el archivo.

Usuario autorizó distinguir diagnóstico de fragmento de invalidez final, conservar
sobre/schema/autoridad, rechazar pérdida explícita y demostrar positivos/negativos
antes de G2 real separado. Diseño8.35 fija la política host aprobada de ambos alias
error no nil. Rojo original por Model/TCP: empty/prefix fallan, name/full pasan;
primer verde focal41 y ampliación stream30 pasan, incluyendo C7 aprobado/reanudado,
intercalado/IDs, errores y metadata portable. Evidencia definitiva y fuente freeze
se registran en `docs/archive/2026-09-27-final-argument-admission.md`. Freeze inicial
fuente313 `2a74fe0e`, manifest `00904884` entregado para copias privadas de review/G2;
gates integrados posteriores sin cambio runtime/tests: compileforce92,
suite933/0/28 seed37556, snippets9, formato/ExDoc/links/plan exit0. Paquete corregido
y consumidores de grafo fijo tienen identidad/evidencia en ese registro.

Review independiente C7 final `/tmp/opencode/exagent-r5-review/final8b3b/REVIEW.md`
recibida y aceptación limitada coordinador: source8b3b + SQL4b89 **offline**,
no TARba17 corregido ni release. G2 anterior conserva sus rojos históricos; la
recalificación live acotada consta arriba. La atribución categórica a defecto
upstream fue corregida por investigación contractual. G5 limpio local
ba17 no cualifica esta nueva admisión. Próximos gates: freeze útil para review
fresca/G2 en copias privadas, gates integrados y nuevo TAR con SQLfix+admisión;
R6/R7 fuera de esta Task. El usuario añadió pruebas habituales de3modelos cheap;
G2 investiga opción pública reasoning-off no admitida por el perfil actual, sin
falsear capabilities. Owner retiene ROOT hasta datos/grant de coordinador; no ampliar
runtime ni declarar3modelos cualificados por esta recepción.

## Histórico: recepción externa y ROOT estable — 2026-09-27

Coordinador `msg_12a78ba009d5`: G3 aceptado en perfil PostgreSQL17.11 READ COMMITTED
y fix DELETE4b89 revalidado real; G4 comparación APIs aceptada con Langfuse como
referencia provisional (UI/end-to-end pendientes); G5 limpio local6/44/9/12 aceptado
sobre TARba17 (CI remota pendiente, propuesta4 archivos no integrada).
Evidencias/hashes/límites: `docs/archive/2026-09-27-external-gates-receipt.md`.
Tabla única roadmap§5. G2 mínimo rojo por invalidación stock de argumentos tras
fragmento vacío; anexo oficial1.25 recibido por msg_03c769f7cc13 reproduce el defecto
por APIs públicas con3TCP/0LLM y controles discriminantes. Guards/lockROOT intactos,
sin upgrade; hashes exactos en recepción27sept. Review C7
bloqueada por segundo rechazo del servicio, sin dictamen final; fallo de fixture
output/output_type no demuestra P2 de producto. No aceptación C7 ni publicación.

Task `task_137a8adffbdb`/`ctx_64cb87c3a6a5` mantiene ownership ROOT/docs/builds
hasta cesión expresa, Astra LOW. Tras fix y defaults temperature0.0 sólo recepción
documental; ningún runtime/build/TAR nuevo por este cierre. ORCA_CHECKPOINT y prompt
de orquestación siguen exclusivos del coordinador. R6/R7 no se activan por leerlo.

## Base R55: implementación y gates offline C7 verificados por owner — 2026-09-27

Task `task_b368f714cfd3`/`ctx_4950569ad27e` mantiene ownership ROOT/docs/builds
confirmado por coordinador y Astra LOW comprobado en TUI. No cesión ni cierre C7.
Frame2/scope2, descriptor host, nodos y writer/loop están integrados en el vertical
público: hijo pending+hermano confirmado; dos hijos/profundidad2, call IDs iguales,
precios ancestrales sin repricing, límites/corrupción, espera humana, competencia y
ownerdeath/reconcile por nodo. Focal inicial7 árbol/integrada81; ahora8 árbol tras
P2 independiente de evidencia huérfana, reproducido exacto3/4 y corregido4/4 owner.
Se conserva lector root1 probado con bytes reales del Frame/Writer aceptado f394.

ModelRecovery/retry inicial está implementado: reconcile_model sin Model/hook replay,
riesgo explícito host y enlace al receipt, original incierto literal, nuevos counters
y key entregada a callable/Model/HTTP stock buffered+stream. Focales nuevos11 pasan;
**compileforce91 y suite908/0/28 seed37556 exit0**. Probes reviewer exactos4/4 sobre
runtime actual pasan por owner; revisión independiente permanece bloqueada por
proveedor, no aceptada ni sustituida por estas ejecuciones. No cambios posteriores
runtime a esa suite al preparar el checkpoint documental.
El checkpoint intermedio305 a371/manifestf4e4 permanece inmutable. Después sólo
cambiaron pruebas/fixtures/documentación: VMárbol9, compuestos4, fronteras/fallos7,
Model3; **compile92 y suite921/0/28 seed37556 exit0**. Candidato TAR115 03c25214:
consumidores mínimo6/runtime106/extensible30/SQLoptin12 y procedencia117 módulos
por perfil, todos exit0 con grafo fijo copiado. No nueva resolución, SQL real o G5
limpio. El cierre de bytes/documentación/TAR final se registra en su manifest.

Decisión/delta observable en diseño8.34/R55; registro detallado en
`docs/archive/2026-09-26-r5-tree-progress.md`. Se prepara fuente útil para la MISMA
review independiente (ahora bloqueada). Matriz final de IMPLEMENTADO/VERIFICADO/
PENDIENTE REVIEW: `docs/archive/2026-09-27-c7-owner-matrix.md` (sólo checkout).
Quedan revisión integrada y gates externos declarados; no atribuir aceptación C7
a la suite o al pase de consumidores locales. Ownership sigue aquí hasta orden
expresa, sin worker_done por leer este relevo. ORCA_CHECKPOINT/prompt de orquestación
son exclusivos del coordinador; R6 no se inicia en esta Task.

## Base recibida: Server/Session parcial aceptado — 2026-09-27

**Recepción documental posterior al freeze:** coordinador `msg_95f14728b813`
acepta PARCIAL offline sourcef394, manifest6499, tras dictamen independiente
`/tmp/opencode/exagent-r5-review/correctedf394/REVIEW.md`. P2 Session5628 cerrado,
sin nuevos P1/P2 concretos en esta unidad; compile88/probes exactos3/focal36+3 no
seleccionados/witness1/adyacentes49/identidad297 independientes exit0. La suite
887/0/28 sigue evidencia owner. Esta prosa no pertenece a los bytes revisados.

Se autoriza cierre parcial de task_ec3210551bcd y cesión ROOT/docs/builds al enviar
worker_done, sin procesos propios activos. Continuar con nuevo owner Astra LOW
fresco y los8 pasos del registro, no nueva auditoría/diseño general ni R0–R4.
Review task_0ee986f3992e sigue abierta para árbol integrado. No C7 completo ni
distribución aceptados. Fuente inmutable `/tmp/opencode/exagent-r54-corrected-source.tar.gz`,
SHA256 `f394ad9964d80ad3a4b76a82f79b9eaa5c6daf27732dae41a3fc9403aa6d8048`;
manifest `/tmp/opencode/exagent-r54-corrected-manifest.json`, SHA256
`6499ccf3c6108f7dffdf7f0b4b2fe3ee812f83a6e464d6889676c9590482d378`.

### Estado documentado antes de la recepción

Task `task_ec3210551bcd`/dispatch `ctx_5963c2e6fb6e` conserva ROOT/docs/builds hasta
confirmación expresa de revalidación independiente favorable y cierre/cesión parcial.
El coordinador autorizó contexto FRESCO Astra LOW posterior para árbol/Model
uncertainty/resto C7; no nuevo R0–R4 ni otra propuesta general. No worker_done por
leer este archivo. Reviewer task_0ee986f3992e sigue la MISMA review C7, copia privada.

Estado exacto y plan ejecutable de8 puntos: `docs/archive/2026-09-26-r5-tree-progress.md`
(sólo checkout), cabecera R54. Registro conserva fuentes aceptadas, rojos y límites.
Último runtime: compileforce88, **suite887/0/28 seed37556 exit0**, Server25 focales y
Session+regresiones+probes exactos51/51. Fixture OTLP del diagnóstico independiente
task337bf integrada por autorización: barrera/fresh stats ante snapshot diagnóstico
partido, sin cambiar producción/aserciones/timeouts. Nueva suite integrada887/0/28
exit0; rojo anterior conservado sin fingir reconstrucción histórica. Snippets9/9 y
ExDoc corregido exit0; últimos checks/identidad en manifest de fuente corregida.

Implementado en esta unidad: reset_snapshot terminal, reset_required con cola,
abort linked/registered writer y barreras create_cancelled/fence_admission con
ambos órdenes de commit/ACK/restart/cotas; Session bindings/complete_turn/snapshot3,
P2 refresh corregido, reconcile_turn host con witness y leave seguro. Todo sigue
pendiente de revalidación independiente, no aceptación C7 completa.

**Siguiente implementación:** descriptor Tool/Coordination y ScopeLedger2 existen
como preparación; ExAgent.run_child y Scope.export siguen root-only. Integrar árbol
completo en Frame2/Writer/loop y restaurar autoridad/presupuesto de cada ancestro,
sin repetir padre/hermanos ni repricing; después Model uncertainty y retry explícito
con idempotencia app. Decisiones aprobadas en diseño8.34 y r5-implementation; usar
seams/oráculos concretos del registro. No levantar guards por prosa. Revisión final
integrada y distribución siguen requeridas; R6–9 no activos.

Nominal1.3.0/HEAD7f25b33/lockc20a0cb9 permanecen; Mix sólo cambia para registrar la
página R5 en ExDoc. Ninguna resolución/instalación/liveLLM/SQL/Opik/consumidor real.
ORCA_CHECKPOINT y `docs/prompts/orchestration-handoff-2026-09-26.md` son del coordinador.

## Pausa anterior: transferencia de coordinador, misma Task R5 — 2026-09-26

El usuario pidió relevo de coordinación, no cancelar implementación.
`msg_198ee90c20b0` pausa Task `task_ec3210551bcd`/dispatch `ctx_5963c2e6fb6e` en punto
seguro. Worker Astra LOW mantiene ownership ROOT/docs/builds, sin worker_done ni
cesión; ORCA_CHECKPOINT y `docs/prompts/orchestration-handoff-2026-09-26.md` son del
coordinador. Esperar reanudación de nuevo coordinador antes de ampliar o ejecutar
nuevos gates. Registro exacto: `docs/archive/2026-09-26-r5-tree-progress.md` (sólo checkout).

Delta no aceptado desde la raíz/recepción siguiente: codec Scope2 por ancestro y
seams export/import (4 focales directos), descriptor host preparatorio (loop aún no
lo consume), reset_snapshot CAS terminal Server (5 focales públicos, incluye ACK
perdido y rechazos activos/uncertain/dirty). Root-only guards intactos; Frame2,
árbol runtime, Session, Server completo y R5.6/distribución/review siguen pendientes.
Último comando runtime `r53-server-reset-focal-02` exit0. Sin build/test en background.
Ask `msg_4a05a0ba3641` sobre binding Session y bloqueo de cola hasta reset tras
deny/cancel está **diferido sin decisión técnica**; no estabilizar por leer propuesta.

## Base recibida: raíz R5 parcial aceptada; completar C7 en contexto fresco — 2026-09-26

**Recepción documental posterior al freeze, no parte de los bytes aceptados.**
Coordinador msg_90820eaf8d7d acepta la unidad raíz corregida **PARCIAL offline** y
acota el cierre de task_1d1c02dc7d4c a esa unidad. No acepta fase R5/C7 completa,
Server completo ni distribución. Se ceden ROOT/docs/builds al cerrar el dispatch;
ORCA_CHECKPOINT sigue siendo exclusivo del coordinador. Preservar todo WIP y nominal
1.3.0, sin commits/publicación ni nuevas resoluciones.

### Identidad y evidencia que se reutilizan

- Fuente291: `/tmp/opencode/exagent-r5-p2-source.tar.gz`, SHA256
  `f8b542f6f78d6d4fb59e0ac6945c658904badf14339f30b45c816b39b15cea1a`.
- Manifest: `/tmp/opencode/exagent-r5-p2-manifest.json`, SHA256
  `b62f73c5383bb0463423cc098c566de76146934dce8c1c8431f352c5fc4c9453`.
- Diff contra root6a65: `/tmp/opencode/exagent-r5-p2-from-root6a65.diff`, SHA256
  `7468738c00c9c919e405a6b0e6128c67c513225a2f95b932d5f0cf16119bc7e0`.
- Review fresca task_0ee986f3992e/ctx_7c85ffbff803:
  `/tmp/opencode/exagent-r5-review/fixf8b5/REVIEW.md`; compile85, probes exactos10,
  focal35, adyacentes27 e identidad291/291 exit0. Cuatro P2 de6a65 cerrados causalmente.
- Owner: compile85, suite850/0/28 seed37556, formato y links234/55 exit0.
  No TAR/consumer nuevo en esta frontera por instrucción del coordinador.
- Matriz, rojos y límites: `docs/archive/2026-09-26-r5-root-progress.md` (sólo checkout).
  Propuesta/ADR: `r5-implementation.md` y diseño8.34. Tabla única: roadmap§5.

No repetir R0–R4 ni la auditoría ReqLLM/Jido. ReqLLM stock1.24, guards y codecs
Snapshot4/omitted-v1/accounting1/continuation2/envelope1 se conservan.

### Siguiente trabajo concreto y archivos

1. Completar la integración Server ya iniciada: `lib/exagent/server.ex`, `event.ex`,
   seams `Continuation.Writer` start/base_usage/revisión y `Frame.model_from_record`.
   `test/exagent/continuation_server_test.exs` tiene dos escenarios verdes de
   pausa/cola/uso y restore; **no** acepta reset/abort, dirty/cancel/terminales ni
   todas las colas. Mantener una fila atómica y evitar RuntimeCheckpoint legacy
   sobre el envelope; no sumar otra vez el subtotal del mismo run al reanudar.
2. Implementar descriptor confiable y árbol de delegación existente en
   `coordination.ex`, `run_context.ex`, loop `lib/exagent.ex`, `execution_scope.ex`
   y `continuation/{frame,writer}.ex`. El guard root-only es temporal: no eliminarlo
   por prosa. Scope.export/restore sólo admite raíz hoy; ampliar por nodos/operaciones
   conservando autoridad ancestral, reservas/costes y outcomes de hermanos, sin
   aplanar el árbol ni repetir callable padre/efectos confirmados. R6 nuevo queda fuera.
3. Integrar Session/participantes/consulta/eventos sin confundir Session.pause de
   turnos con run paused, ni prometer transacción entre filas independientes.
4. Cerrar incertidumbre/reconciliación de modelo y retry explícito de efecto con
   idempotencia de aplicación, además de las ventanas completas A5–A7 pendientes.
   Receipts viejos sólo prueban commits pasados. Lease vencido nunca autoriza replay.
5. Gate integrado y nuevo freeze para la **misma review**, que sigue abierta:
   task_0ee986f3992e/ctx_7c85ffbff803. Fuente/build privados del reviewer; un owner
   build ROOT. Distribución TAR/consumidor fijo/docs finales al cierre integrado.

### Invariantes y riesgos que no deben perderse

- Aprobación liga digest JSON canónico (1≠1.0), args efectivos/schema/call/definición;
  refs persistidas no resuelven módulos. Plantillas/deps/codecs/modelo/policy son host.
- Model.validate_resume es preflight sin IO obligatorio sólo para C7. Native
  fingerprint excluye módulo y restaura validator; Ecto final/retries permanecen.
- Cursor, historia/batch, journal Model y outcomes son coherentes en ambos sentidos.
  resolve_call es pre-dispatch; finalize_call fija fase final una vez y conserva
  intent/status/raw_hash. Restore consume raw o final realmente confirmado, sin
  volver a ejecutar hook/efecto. Conservar los probes originales cerrados.
- Revalidar reservas históricas contra restricciones actuales sin doble débito;
  no repricing, contador inventado ni reset de saldo. UTC transcurre en espera humana;
  tiempo activo no, y ownerkill antes de checkpoint pierde reserva conservadoramente.
- J mide **token entero** EFT≤8MiB y forma parte de data_bytes. Cota C7
  2H+P+J+65536, ordinary intacta; record JSON+reserva8MiB no equivale a record EFT≤8MiB.
  ToolReturn JSON no incluye Usage contribuida: la autoridad es el ledger.
- Nueva operación/fase/copia requiere revisar reserva raw/final/cleanup, cardinalidad
  y J/JSON antes de IO; oversized conserva status/IDs y omisión, no replay.
- ACK/fence no cierra la carrera externa entre validación y API de negocio. Esa
  ventana sigue incierta; no afirmar exactly-once ni rollback. DB fixture de reinicio
  prueba bytes entre VMs, no SQL durable/G3. G2/G3/G4/G5 limpio y otros externos abiertos.

Tooling: leer environment.md; runner temporal inspeccionado
`/tmp/opencode/exagent-r4-integration-run.py`, labels nuevos, allowlist y +S8:8.
No installs, cambios globales, LLM pagado, SQL real, Opik ni consumidores reales sin
autorización. Revisar código/runners y mailbox antes de continuar.

### Contexto histórico: R4 aceptada offline

Recepción documental posterior al freeze: msg_57de32de8f89 acepta R4.1–R4.6 sobre
sourcecdd2a042/TARac544712/manifest1488bbd6. Dictamen independiente final
task_60fd56a7fead: compile80/focal33/snippets9/deltas279/TAR103 exit0, P2cleanup y
P3guías cerrados, sin P1/P2 concreto. Conservar esos artefactos inmutables; no
atribuirles esta prosa. Tras worker_done del owner R4 se cede ROOT/docs/builds para
Task R5 fresca autorizada; C7 runtime y G3 real siguen pendientes de implementar/verificar.

Owner integra sólo delta revisado; R3.4 runtime/codec intactos. Nuevos compile80,
focal121/seam3 y suite803/0/28 seed37556 pasan; formato/snippets9/ExDoc/links/plan
exit0. Freeze/consumidor/manifest y límites en `docs/archive/2026-09-26-r4-integration.md`.
Review integrada task_60fd56a7fead recibida; no repetir importación ni gates masivos.

Gate_1a7cfef26f1f autoriza task_e81726b250f6 / ctx_14cb9835a666 como owner ROOT
exclusivo. R3.4 source05a02459/TAR8775e665 aceptados por review task_d3420f865920:
cuatro P2 cerrados, compile74/probes6/focal85 independientes; suite755/0/28 y
consumidor128/0/0 son evidencia owner reutilizada. Integrar sólo delta acumulado
R4b5052dbb desde sourceb3498467 revisado por task_60fd56a7fead; preservar ADR8.32,
Snapshot4/omitted-v1/accounting1/continuation2/envelope1. Corregir prosa4224 a
reserva encoded de ADR8.33 corregida; artefactos nuevos requieren revalidación integrada.
No implementar R5/C7. G2/G3/G4/G5 limpio/G6 externo siguen abiertos.

### Contexto histórico de R3 parcial

Task task_d50e5f22ec68 / ctx_b2f9ab400a0d implementa diseño8.30/31: namespace
confiable, Store.scoped descriptor único y claves/topics codec compartido,
admisión Server por bytes input/pending/history y receta pública Phoenix/jobs.
Compile73/focal122/suite718/0/28 seed37556, formato/snippets9/9 seed0 pasan.
Freeze/consumidor/rojos/comandos: `docs/archive/2026-09-26-r3-runtime.md`.
Primero review fresca del delta; R3.1/2/3/5/6 verificadas owner, no autoaceptadas.

Coordinador autoriza cierre **PARCIAL** del dispatch: R3.4 retención salida ABIERTA.
Repro tool65536→historia68792 con max_history_bytes1024, efecto1/requests2;
el guard sólo rechaza el run siguiente. Siguiente unidad fresca después de review:
propuesta mínima core postdecode Response antes de append/tools y ToolReturn antes
de confirmar/progreso y después del hook; preservar efecto confirmado, IDs/uso y
pareado, omisión explícita+fatal sin retry. Es propuesta, no contrato implementado.
No iniciar R4/C7 automáticamente. Store atómico tendrá scope estructurado; este
delta no añade CAS ni cambia callbacks snapshot/ETS/Postgres/mix/lock/CI.

### Base recibida: R2 aceptada offline

Task task_9db4ebef2186 / ctx_364b1ec146e6 implementa diseño8.29 después del gate
stock público: native explícito con schema separado, Ecto final y retries sync/
stream contabilizados. ReqLLM profile chat_json_schema_v1 sobre chat_tools_v1,
sin strict/repair/fallback; combinación function_tools y continuación probada.
Refusal wire junto a JSON válido puede perderse y ese output aceptarse localmente;
proyección pública y guard expuesto tienen oráculos separados, documentados.
P2 preadmisión y fixture OTLP corregidos: compile71/suite707/0/28 seed37556,
consumidor80/0/0 fijo, TARf6b549f5/source7eb34210. Review task_f955b8e8ea60 /
ctx_cd5ed6947704 cierra P2 sin P1/P2 pendientes: compile71/focal32 seed92624,
contraste fixture1/3→3/3; coordinador17/17 e identidad93/253 exit0. Gate R2
aceptado: `docs/archive/2026-09-26-r2-output.md`. Task task_d50e5f22ec68 /
ctx_b2f9ab400a0d inicia R3 con ownership root exclusivo y matriz primero.
Store compartido requiere ask; R4/R5/C7 runtime y G2/G5 limpio siguen pendientes.

### Base recibida: R2 base aceptada offline

Dispatch `task_f4d76a03826d` / `ctx_61707a7c0be0` reanudado en la misma unidad por
msg_5df327664b3d tras transferencia del coordinador. Diseño8.27–28 y delta mínimo
verificados: compile71, focal98 y suite687/0/28 seed37556, formato/snippets8/8 y
ExDoc exit0. Orden exacto hooks reforzado; consumidor externo Model/tool positivo/
negativo/error pasa63/0/0 sin privados, desde TAR6e0585bc y grafo fijo copiado.
Registro completo de rojos, identidad TAR final y pendientes:
`docs/archive/2026-09-26-r2-base.md`; review task_28d681ef6334/ctx_d54b24c483f5
aceptada sin P1/P2 sobre TAR482e26a3/source1eefe618: compile71/focal54/probes6
seed82619; coordinador focal38 seed37556 exit0. Task task_9db4ebef2186 inicia
R2.3 separada con ownership exclusivo de fuentes/builds, gate stock antes de native.
R3/Store/C7 runtime no iniciados; paused es sólo ADR para R4/R5. R1 mínimo aceptado
offline se conserva debajo como evidencia histórica.

## Base recibida: R1.8 aceptada en perfil mínimo offline — 2026-09-26

Task `task_51127c5dd54e`:9 módulos duplicados retirados tras propuesta aceptada,
resolución stock/spec/custom/Test, auth por instancia/Bearer Anthropic público,
callers/docs/ejemplos/probes migrados. Compile71/focal48+36/suite680/0/28 seed37556,
snippets8/8 y consolidación14 invariantes exit0. Inventario y evidencia de artefacto:
`docs/archive/2026-09-25-r1-retirement.md`. Dictamen fresco `task_a7e85474a9ef`
recibido: TAR6a2eb6aa aceptable offline, P2 documental cerrado, sin P1/P2 concretos
pendientes; compile71 y focal6/6 independientes sobre ese artefacto. El cierre
documental26Sep conserva AST funcional y tests/config/mix/lock; nuevo TAR y gates
en el registro, sin atribuir al reviewer revisión de esos nuevos bytes.
No G2/C7/R1 completa y R2 fuera de este dispatch.
Follow-up P2: la frontera valida todas las llamadas semánticas expuestas; no puede
detectar siblings wire que stock borra sin señal. Caracterización TCP y controles
visibles/deny conservados; sólo docs/test nuevos, sin cambiar guards/runtime.

R1.5 aceptada en review fresca `task_5b79c7a35e0c`:173/173 exit0, TAR
`3c7867ad00661bd426e74e9f86a9f5440168d0bcdecfbff65c1950575fcdae42`,
sin P1/P2 concretos pendientes en su alcance; consumidor48/0/0 de grafo fijo.
Nueva Task `task_08559dbb6a28` cierra evidencia mínima R1.3/6/7 con cuatro tests,
sin modificar runtime: continuation target, tool_choice y dos escenarios TCP
delegación/Ecto/Server stream/Session/ETS/checkpoint/OTel. Compile80/suite755/0/28
seed37556 exit0; dictamen final fresco `task_990f3c2c9283` recibido, 4/4 e identidad
TARd2bfe978 confirmadas, corrección documental §5 cerrada, sin P1/P2 concretos
pendientes en el perfil mínimo. Registro y matriz:
`docs/archive/2026-09-25-r1-qualified-composition.md`.

La propuesta API/auth/gateways y el inventario se escribieron antes de retirar
código; R2 base ya avanzó sobre ese mínimo como se registra en la cabecera,
sin cerrar G2.
Mantener perfil explícito, guards, C7 pendiente y G2 no aceptado; no volver a R0
ni reabrir R1.5. Referencias y garantías migradas constan en el inventario de retirada.

### Base R1.5 recibida

Diseño8.25 y guía de migración fijan Usage.accounting1, límites strict/estimated,
ModelProfile.accounting_quality, ledger finalizado independiente de cobertura,
Server snapshot3 y OTel cualificado. Compile80/suite751/0/28 seed37556 exit0;
regresiones frescas preservan datos por dimensión, precio-only/subtotal ante nil y
details canónicos asociativos. Reviewer `task_5b79c7a35e0c` confirmó14/14 propios
según coordinador; dictamen final recibido como consta arriba. Evidencia de grafo
fijo por hash en el registro:
`docs/archive/2026-09-25-r1-qualified-accounting.md`.

### Base de inicio R1.5

La review fresca `task_dbfcf7b3c823` acepta STREAM PARCIAL offline chat_tools_v1:
123 casos propios/0 fallos,53 focales coordinador exit0 y TAR
`12e46f416f40fa4f73f3fe8dd8eca513d9061087b131ed2c29a68c8fccd62128`.
Smoke46/0/0 con grafo fijo copiado no es nuevo G5. Task `task_17bcc68fdef1`
implementa R1.5: contrato y gate vertical primero, luego límites/ledger/proyecciones;
review independiente posterior pendiente. El relato siguiente precede al dictamen.

Task acotada R1.4 integra Model.request_stream/stream_text/run_stream sobre
process_stream público stock y close, misma frontera Envelope/contexto/Response
buffered. Perfil Chat explícito únicamente; lazy, terminal válido antes de efectos,
guardian/productor enlazado/registro ACK, límites postdecode64KiB/1MiB/4096chunks,
max_tokens4096 y timeout stream nil60s/expreso≤300s. Diseño8.24 y migración detallan
defaults, retención upstream y ausencia de hard RAM predecode. Uso sigue unknown.
RunStream compartido corrige rojo203 snapshots acumulados con ACK correlacionado;
worker enlazado evita huérfano ante guardian muerto. Compile80/suite735/0/28 exit0
seed37556 tras P2 frescos de shutdown atrapado y cancel ACK/custom finalizer;
focales53/53 incluyen probes del reviewer. Distribución/docs se identifican por
artefacto en el registro; cierre de revisión fresca pendiente. El primer suite
rojo731/734 está conservado. Recuperación25Sep: mismas fuentes y lock, compile80,
suite735/0/28, focal53/53 con ambos probes anteriores y formato, todos exit0.
Logs nuevos `r14-recovery-*` en `/tmp/opencode/exagent-r11`; la revisión independiente
de recuperación corresponde a `task_dbfcf7b3c823`, todavía pendiente de dictamen.

**Review R1.2 recibida:** Astra `task_16e800274a86`, informe
`/tmp/opencode/exagent-r12-envelope-review/REVIEW.md`, acepta buffered parcial offline
del TAR51f36adc; P2 finalización tardía corregido/revalidado, sin P1/P2 concretos
restantes en ese alcance. No certifica esta integración stream nueva.

**Siguiente:** acabar gates y revisión fresca R1.4; luego R1.5 en nueva Task,
manteniendo C7/R1.8 pendientes. Registro reproducible sólo checkout:
`docs/archive/2026-09-22-r1-stream-adapter.md`. Lock c20a0cb9 y nominal intactos.

### Contexto recibido: R1.2 buffered

Dispatch acotado implementó el sobre tras gate discriminante stock real; no activó
roadmap completo. Perfil `chat_tools_v1`, extra.wire.protocol=openai_chat explícito,
schema reference-free/strict false (wire omitido), continuation2/envelope1; validación
lógica y efectiva, identidad, permiso/approval/ancestros, Ecto vacío/embed/null/retry,
historia JSON/Server/compaction/no replay. Nuevo guardian común buffered corrige
rojo real de socket superviviente a ownerkill con upstream total_timeout async_nolink.
Budget host hereda el default público y usa backend total_timeout infinity, sin
internals ni cambio global. P2 de review fresca corregido tras rojo: finalización
monotónica antes del deadline, no mero receive after0; positivo de entrega diferida.
Compile79/suite **715/0/28 seed37556**, focales30/30 iniciales y timeout10/10 tras P2,
formato/diffcheck0; lock c20a0cb9 intacto. Evidencia de errores/correcciones/comandos
y consumidor por hash en `docs/archive/2026-09-22-r1-envelope.md` (sólo checkout).

La revisión de este delta ya fue recibida, como consta arriba. En esa unidad
streaming ExAgent, métricas R1.5 y C7 no se implementaron. El gate process_stream consume una sola vista con args en múltiples
deltas; no es aceptación R1.4 ni cota RAM predecode. Otros perfiles siguen cerrados;
no se retiró transporte legacy ni se instaló/actualizó dependencia. La memoria
buffered continúa O(respuesta), sin aceptar aquí el perfil operativo stream.

### Contexto histórico del replanteo previo (no acciones vigentes)

La implementación v2 fue autorizada; esta Task sólo actualiza documentación y la
implementación se retoma en otra Task tras revisión. Leer un prompt no lo activa.
Usar `docs/prompts/continue-v2-reqllm.md` al recibir el encargo. El único tablero sigue
siendo [roadmap R0–R9](roadmap.md), con [alcance](release-scope.md) y
[aceptación](production-acceptance.md). R0/R1.1 verificadas;
**R1.2–R1.8 parciales/pendientes con criterios reabiertos**, R1 no cerrada.

**Decisión vigente (diseño8.22):** release oficial ReqLLM stock, sin fork/vendor/
patch/monkeypatch/parser wire privado ni runtime Jido. Primero gate del sobre
obligatorio `{arguments: objeto}`: hipótesis, no mitigación verificada ni permiso
de retirar guards. Validar sobre/schema lógico y efectivos tras hooks; no raw
prometido, reparación de inválidos/truncados, fallback wire ni envoltura histórica
que haga válida una llamada inválida. Subset schema/refs/raíz/strict representable
o rechazo preIO, no rewriter general preventivo. C7/claim/autoridad/no-replay intactos.

Contadores HOST exactos/admisión atómica separados de tokens/cache normalizados o
reportados y coste estimado con calidad/procedencia/availability. Ordinary execution
con límites host no bloquea sólo por falta contable; strict dependiente de datos
ausentes rechaza explícitamente. Sin heurística cero=unknown ni cero normalizado
como observado. Streaming: una vista (process_stream candidato preferido), lazy,
terminal válido antes de efectos, cleanup y límites propios postdecode medidos;
sin hard RAM predecode upstream. Mínimo Chat-compatible sin reasoning/provider-native
con tools/Ecto/stream en combinación exacta por cualificar; otras familias por
capacidad probada, paths con pérdida cerrados. G2–G6 externos permanecen.

- **HEAD/WIP y lock de la última evidencia runtime (históricos):** HEAD `7f25b336924d97baf1d4aa18898ec8db32385940`
  (main), WIP previo preservado + adapter/codec/tests/docs; nominal1.3.0,
  ReqLLM1.24.0 stock, Req0.7.4 autorizado por incompatibilidad HTTP real, Finch0.22
  y Mint1.10.1 conservados. Lock SHA256
  `c20a0cb90fb5f379d900a080290bdb6dc16c412a76234b5427753d05b39ac48b`.
- **Subunidades verificadas y evidencia:** R0 y R1.1, registros sólo checkout
  `docs/archive/2026-09-21-r0-baseline.md` y
  `docs/archive/2026-09-21-r1-1-reqllm.md`; nueva evidencia en
  `docs/archive/2026-09-21-r1-buffered.md` conserva672/0/28 y TAR61eaffda antes
  de review. Nuevo registro `docs/archive/2026-09-21-r1-streaming.md`: review
  A1/A2/A3 reproducida roja, guards18/18, compile77 y suite **678/0/28 seed37556**.
  Probe streaming7/7 es caracterización de bloqueo, NO streaming aceptado.
  Consumidor nativo nuevo **9/0/0** textual+guard/custom; TAR `70ae2852…`, fuentes
  independientes. No se revalidó toda la matriz1.18 por estos guards.
  Nuevo bloque `docs/archive/2026-09-21-r1-textual.md`: compile77/suite
  **691/0/28**, opciones/timeouts12 y un compuesto textual. Compuesto usa3 requests
  Req con adapter sintético,3 generaciones y3 spans; HTTP TCP real en timeout_test.
  TAR textual `f1f91c27…` consumidor nativo **21/0/0** con Req0.7.4/Finch0.23;
  root verificado con Finch0.22. No SDK/SQL obligatorios ni aceptación backend live.
- **Último cambio y prueba pendiente:** replanteo sólo documental2026-09-22;
  sobre/schema/strict/history/output/stream/uso todavía requieren gates nuevos.
 691/0/28, locks y TAR anteriores no son aceptación de esos contratos. Logs r14
  en `/tmp/opencode/exagent-r11/`; TAR61eaffda es pre-guards. La síntesis durable de
  investigación con versiones/permalinks está en framework-direction§9; comparación
  anterior delimitada como histórica. No volver a auditar Jido.
- **Contratos/decisiones nuevas y rutas:** diseño8.15 y migración: frontera host
  de una interacción; mínimo1.18 autorizado por dependencia obligatoria `llm_db`
  (no por warnings); startup supervisor/Finch y dotenv por defecto documentados.
  Tests y probes directas desactivan dotenv; `max_retries:0` impide retries.
  ADR8.16 corrige Mint;8.17 fija metadata/continuation portable versión1 ligada a
  provider/model/endpoint, sin structs upstream ni credenciales propias persistidas.
  ADR8.18 rebaja aceptación: tools/output y tool history ReqLLM rechazan; Anthropic
  thinking/Response continuation rechazan; profile se deriva de capacidad real.
  ADR8.19 corrige receive-default y duplicación de instrucciones;8.20 exige Req0.7.4
  porque0.6.1 falla con Finch keyword options;8.21 añade total_timeout positivo o nil
  por instancia con API pública, separado de receive/pool/run y sin rollback prometido.
- **Bloqueos externos y autorización disponible (sin secretos):** ninguno
  bloquea trabajo offline independiente; accesos providers/DB/Opik autorizados:
  ninguno. Descarga local de dependencias sí autorizada para R1.1.
  Lista única preparada y entregada al coordinador para cuando toquen sus fases:
  providers/modelos/presupuesto (R8.1/G2), Postgres sintético (R8.2/G3), Opik
  existente con destino/versión/proyecto sintético (R7.3/G4), CI remota y
  publicación (R9). Detalle en evidencia R0. R1.5: uso ausente/parcial se pierde
  en proyecciones públicas probadas; el nuevo contrato orientativo no lo reconstruye. Spike aislado
  `/tmp/opencode/exagent-r15-spike/REPORT.md` con review separada, NO adoptado.
  Review buffered completa `/tmp/opencode/exagent-r12-review/REVIEW.md` no aprobó
  tools/Anthropic completa; guards mitigan, no reparan upstream. Falta byte budget
  predecode;8.22 sustituye ese requisito por límites operativos medidos, sin relajar
  cleanup. No fork/transporte paralelo. Req0.7.4 fue autorizado y verificado;
  sólo Req cambió del lock al iniciar el bloque textual. Futuro commit Anthropic
 3536ff94 es seguimiento de release oficial, no publicado/adoptado ni fix Google.
- **Recursos propios activos o cleanup realizado:** ninguno activo; sólo tooling
  aislado preexistente reutilizado, más copia byte-verificada del Hex1.18 existente
  en `/tmp/opencode/exagent-r11/archives118`; sin instalación ni reparación global.
- **Siguiente ID, archivos y verificación:** R1.2 gate sobre con ReqLLM real y
  transporte sintético; revisar Model/Tool/Schema/OutputSchema/codec/historia y
  tests ReqLLM ya existentes. Prompt checkout-only `docs/prompts/continue-v2-reqllm.md`
  contiene oráculos cero/una ejecución, guards, stop y continuidad. Después de
  focales pertinentes y revisión fresca, continuar R1 restante y R0–R9 desde el
  tablero; no reiniciar R1.1/R0 ni imponer espera por todas las familias. Al integrar,
  `EXAGENT_OFFLINE=1 MIX_ENV=test mix test --warnings-as-errors --seed 37556`
  con el prefijo de [entorno](environment.md).
- **Estado real:** implementación/aceptación parcial, nunca R1 completa.

Readiness100ms: diagnóstico autorizado preservó el rojo y midió mensaje155ms,
server waiting/cola0; sólo la barrera readiness pasó a1000ms, cancelación/DOWN
intactos. Suite final678 pasa sin instrumentación, no se ocultan los rojos.

La siguiente implementación debe leer las fronteras ReqLLM de
[dirección](framework-direction.md) y R1, no añadir solamente la dependencia.
R4/R5 separan snapshots, continuación y efectos inciertos. R8 requiere providers,
Postgres/backend y consumidores reales; R9 separa candidata y publicación autorizada.

## Última unidad: auditoría de testing — 2026-09-10

**Cerrada por el usuario. Retomar el desarrollo, no otra oleada de auditoría.**
Se acuerda probar ExAgent y su integración; el mantenimiento/testing interno de
Req, gproc y demás dependencias pertenece a sus mantenedores. Sus warnings quedan
anotados con menor prioridad y no bloquean por sí solos el desarrollo. Conservar
las regresiones de frontera cuando exista impacto real sobre una garantía nuestra.
La guía [verificación](verification.md) recoge este criterio y los gates habituales.

El usuario activó `docs/prompts/testing-audit.md`. Inventario readonly completo,
mejoras y dos revisiones frescas: [síntesis y backlog](testing-audit.md), con
655correctos/28excluidos en1.20/29 y1.17/27 y24contratos runtime del TAR. Strict
permanece rojo en los cuatro grafos por Req0.6.1/Mix1.20; exporter añade gproc/OTP29.
La CI está configurada y su driver probado localmente; no se ejecutó GitHub remoto.

Base de aquella sesión:69c2747, nominal1.3.0, inicialmente limpio. Sus mejoras
quedaron como WIP y posteriormente se integraron en7f25b33. El registro de autoridad, ownership,
provenance y recursos está en `docs/archive/2026-09-testing-audit.md`. Recuperar
Orca sólo si se solicita orquestación; no reutilizar handles cerrados de ese registro.
Prioridades concretas en [roadmap](roadmap.md), separando diagnósticos de paquete,
gaps P2 y aceptación externa autorizada.

## Contexto anterior

El usuario pidió recapitular el cierre nocturno y ordenar la documentación antes
de continuar con la elección de backend y la mejora del paquete. La documentación
vigente vive bajo `docs/`; los relevos nocturnos y sus órdenes quedaron archivados.
No volver a ejecutar N01–N18 por leer el archivo antiguo.

El usuario confirmó después que tiene algunas instancias de Opik y pidió resetear
contexto antes de continuar. Quedaron preparados dos prompts independientes, sin
lanzar Runs ni workers por esa preparación:

- `docs/prompts/backend-evaluation.md`: evaluación desde Opik existente; destino,
  versiones, histórico y acceso todavía por concretar.
- `docs/prompts/testing-audit.md`: auditoría de valor, duplicidad, falsos verdes y
  cobertura importante; implementar únicamente mejoras de tests justificadas.

Aquellos mandatos históricos usaban Orca Tasks/Dispatch/workers con
`openai/gpt-6-astra`. El nuevo mandato v2 es independiente del harness; el prompt
anterior de backend está archivado. Mantener ownership de archivos/builds si se
autoriza trabajo paralelo, sin reactivar esas órdenes por leer este contexto.

La reorganización está verificada: suite nativa619/28 seed348677, snippets7/7,
120 enlaces locales, ExDoc, formato y paquete24/24 runtime. El warning strict de
gproc/OTP29 y el Hex compartido pendiente siguen explícitos en [estado](../status.md).

## Base que debe preservarse

- Framework general y extensible; consumidores motivan mejoras, no reglas de dominio.
- Preservar WIP/untracked actuales; recuperar Git antes de actuar y no reconstruir
  c08125b o69c2747 como si fueran el checkout vigente.
- Contratos de la major en diseño/migración. Nominal1.3.0 no significa que el
  checkout pueda publicarse como patch1.x.
- Sin commit, bump, push, publicación, despliegue, reinicio, cambio global o
  modificación de consumidores sin petición expresa. Inferencia de workers no
  autoriza tests LLM pagados, DB real ni nuevos servicios.
- El Hex compartido está pendiente de reparación autorizada. Usar el
  [entorno aislado](environment.md) y comprobar destinos efectivos antes de bootstrap.

## Orca, si se solicita otra orquestación

Cargar la skill de orquestación y descubrir autoridad/Run/mail/flota de nuevo.
El Run nocturno `run_4315531152c9`, generación1, terminó16 Dispatches; sus15
workers están cerrados. No reutilizar handles del archivo ni suplantar el caller.
Los IDs son contexto histórico, no autoridad para una tarea nueva.

## Siguiente resultado útil

R1 conserva aceptación parcial y guards; las rutas textuales anteriores son
evidencia histórica. Ejecutar el gate R1.2 del sobre del nuevo relevo, después
integrar uso orientativo, streaming acotado y perfiles según8.22; R1.8 retira
duplicación en la major, sin backend legacy general permanente. Avanzar R2–R9.
R7 mantiene [backend](backend-evaluation.md) para Opik; R8 conserva aceptación
externa y presupuesto autorizados. Un gate bloqueado no paraliza trabajo independiente.
Las regresiones acompañan los cambios de ExAgent; los warnings upstream no son
una limpieza previa obligatoria.

Al llegar a R9 con su candidata identificada y el alcance terminado,
usar `docs/prompts/testing-review-final.md`: revisar lo cambiado desde esta auditoría,
los contratos nuevos, la instalación real del paquete y el valor/frecuencia de los
probes. La nota está diferida; no reactiva `docs/prompts/testing-audit.md`, no exige
un contador mayor de tests ni autoriza publicar o acceder a sistemas externos.
