basquetWi + New ticket
movilba MOVILBA-569

bwi: adoptar el comando audit estructurado y el rename wi->bwi en la documentacion de flujo

Done normal amaudit-mba-l-ca

bwi shipped two changes on 2026-09-23: the CLI is renamed wi -> bwi (wi.sh now refuses every operation), and a structured 'bwi audit <id> <pass|fail> --scope --evidence [--report]' subcommand exists that appends a verdict without touching status. Two legs. LEG 1 (audit-mba-l-ca): exercise the command for real on an item it genuinely audited, on BOTH outcomes, and report back what the stored event looks like - specifically the actor attribution, since the design consultation established that the server derives actorAgent from a SHARED X-BWI-Key on lezama and resolves every writer to wi-cli-venus. A verdict that looks authenticated and is not is the whole risk. Also force the negative path: an invalid outcome and a missing --evidence must be REFUSED, because a validator never seen to reject is a green line, not a validator. LEG 2 (coder03): update the workflow documentation - lane memory and any repo/agent doc that still tells an agent to run 'wi'.

Sub-tickets

No sub-tickets.
+ Add sub-ticket

Activity

  • coder03-mba-l-cc created · 3w ago
  • audit-mba-l-ca progress · 3w ago
    audit-mba-l-ca | 2026-09-23 23:04:35 ART LEG 1 REPORT — bwi audit acceptance, rejection, status, and attribution. POSITIVE REAL HISTORICAL VERDICTS: - MOVILBA-552: bwi audit pass stored event 2026-09-24T02:03:23.372Z. Scope says the underlying audit was performed 2026-09-23 before this command existed. Evidence records focused 35 assertions exit 0, targeted ESLint exit 0, git diff --check exit 0, and browser navigation unexercised. actorAgent read back VERBATIM: audit-mba-l-ca. Item status remained done. - MOVILBA-564: bwi audit fail stored event 2026-09-24T02:03:28.989Z. Scope says the first-round audit was performed 2026-09-23 before this command existed. Evidence records the false unqualified App reads the view as-is claim at lines 115-116 and required motor-only narrowing. actorAgent read back VERBATIM: audit-mba-l-ca. Item status remained done. NEGATIVE VALIDATOR CONTROLS: - Invalid outcome passed: exit 1; stderr exactly: audit outcome must be pass or fail - Missing --evidence: exit 1; stderr exactly: audit requires both --scope and --evidence - Missing --scope: exit 1; stderr exactly: audit requires both --scope and --evidence - bwi events MOVILBA-569 --full showed only its created event before this report, so none of the three rejected commands stored an event. ATTRIBUTION CHANGE: - The old wi behavior is not inherited. Current /home/rob/.local/bin/bwi requires AGENT_NAME for mutations and sends X-BWI-Agent: AGENT_NAME alongside X-BWI-Key; current AGENT_NAME is audit-mba-l-ca. Both audited rows stored actorAgent=audit-mba-l-ca. This fixes missing attribution for this run. However, source inspection shows the identity is client-asserted through an environment-derived header while the HTTP key remains shared; this test establishes correct propagation, not tamper-resistant identity or server-side binding of one key to one agent.
  • coder03-mba-l-cc progress · 3w ago
    coder03-mba-l-cc | 2026-09-23 23:07 ART LEG 2 DONE - documentacion de flujo actualizada. Shipeado en 7d299b6a (v5.6.45), solo CLAUDE.md. REPO: CLAUDE.md seccion basquetWi - rename wi->bwi, el comando bwi audit con sus dos flags obligatorios y que no toca status, el control negativo visto rechazar, y el parrafo de atribucion con su limite. MEMORIA DEL CARRIL (no versionada): reference_bwi reescrito entero - la version anterior afirmaba backend sqlite local con BASQUET_WI_DB, que esta vencido: bwi --help declara HTTP contra bwi.pensanta.com/api sobre Postgres. Se agregaron las trampas de forma medidas y el resultado del control negativo. feedback_el_carril_escribe_el_reporte_en_bwi_y_el_dm_es_solo_la_referencia - el paso 4 nombra bwi audit en vez de un wi event a mano, y el parrafo de atribucion pasa a historico con el arreglo arriba. MEMORY.md - reference_bwi no estaba indexado. RETIRO UNA AFIRMACION MIA: venia diciendo que ningun escritor de bwi desde lezama era distinguible en actorAgent. Ya no es cierto. Leido de las dos puntas el mismo dia: los dos eventos audited de este test leen actorAgent audit-mba-l-ca, y este item, creado por mi, lee createdByAgent coder03-mba-l-cc. LO QUE SOBREVIVE DEL HALLAZGO, y es la parte que se pierde primero: la identidad la afirma el cliente por variable de entorno y la clave HTTP sigue compartida. Lo demostrado es propagacion correcta, no identidad resistente. actorAgent sirve para leer un historial de buena fe y NO como prueba de que audit aprobo algo, asi que la firma en el cuerpo del evento se mantiene. NO EJERCITADO: nadie intento suplantar a otro agente seteando AGENT_NAME. La manipulabilidad esta leida del fuente por audit, no medida. PENDIENTE FUERA DE MI ALCANCE: ~/.claude/llmmsg-protocol.md:19 todavia instruye wi status / wi close. Es un symlink adentro de sh.git, repo STRICT de otro carril. El rename es de flota y lo tiene que corregir su duenio.
  • coder03-mba-l-cc completed · 3w ago
    Las dos legs cerradas. Comando probado en aceptacion y en rechazo por audit-mba-l-ca, documentacion de flujo actualizada y shipeada en 7d299b6a. Queda una linea vencida fuera de mi alcance: llmmsg-protocol.md:19 en sh.git.
task
3w ago by coder03-mba-l-cc
3w ago
2026-09-24 02:07