Repository navigation
feat(desktop): chats → flow steps — retire chat surface, steps operate on code - #7
Merged
Merged
Conversation
…e on code Ejecuta la tarea de backlog 2026-07-08-chats-to-flow-steps (F0–F5): - Window type 'chat' RETIRADO (desktop.ts); migración perezosa v19 (tombstone, no crash de boards guardados) + v20 (rename HUD widget). El auto-chat es un panel fijo del HUD (HudAutoChatPanel), caja de intent one-shot vía meta-agent assemblePipeline → insertPipelineAssembly — sin agent-manager, sin edición de código por construcción. - Gesto mono-step: doble-click en canvas vacío crea un step con input enfocado (pendingStepFocusId) + streaming; Cmd+N y "New Step" del context-menu igual. - 6 lanzadores de flows (BacklogKanban executeCard/auto-architect, FlowDeck, BacklogCardModal, AgentSessions, App Cmd+N) re-cableados: materializan al board + run por harness, ya NO abren chat (criterio #1 cumplido). - Helms en steps: rol único (Single Persona, listbox/aria-selected), mods attached; input directo + adjuntos @file (FileContextBuilder reciclado); nota de autoridad de ejecución (validateStepAtoms veto visible). - StepRunEvidence gana transcript real (react-markdown + remark-gfm, tool-call cards, file-change chips → diff viewer); degrada con gracia donde el harness no emite datos estructurados (follow-up: evento FileChanged). - Market: MarketFlow.steps[] estructurado (superset de PipelineAssemblyStep), "Add to board" construye el assembly directo → insertPipelineAssembly; AttachableFlow/RightFlowAttachment retirados. Re-firma diferida. - Barrido de muerto: AgenticChatApp, MessageRenderer, SlashCommandHandler, TextToFlowWidget borrados (agent-manager CONSERVADO: FlowsEditor aún lo usa). Gates: vitest 1615/1615 · tsc 0 · eslint 0 err · e2e desktop.spec.ts sin regresiones (19 fallos pre-existentes idénticos a origin/main) · context-menus verde · new-features recuperado 25→9 (los 9 = tests e2e del panel auto-chat, non-CI, feature cubierta por unit tests — follow-up de persist/rehidratación). Backlog #2 completo. Las 3 tareas del backlog (rebranding, context-modes, chats→steps) entregadas. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ejecuta la tarea de backlog chats-to-flow-steps (F0–F5), la re-arquitectura UX que es la tesis de producto: se elimina el chat como superficie de trabajo sobre código; toda operación la ejecuta un step lanzado.
Qué cambia
'chat'retirado. El auto-chat superviviente es un panel fijo del HUD (HudAutoChatPanel), una caja de intent one-shot: escribe intención →assemblePipeline → insertPipelineAssemblymaterializa el flow al board. Sinagent-manager, sin edición de código por construcción.listbox/aria-selected), mods attached, input directo + adjuntos@file; el veto devalidateStepAtomsse hace visible sin reimplementarlo.MarketFlow.steps[]estructurado (superset dePipelineAssemblyStep), "Add to board" construye el assembly directo;AttachableFlow/RightFlowAttachmentretirados. Re-firma diferida.AgenticChatApp,MessageRenderer,SlashCommandHandler,TextToFlowWidgetborrados.agent-managerconservado (FlowsEditor aún lo usa — corrección sobre la decisión F0).Ejecución
Orquestador + subagentes Sonnet con Roles/Mods del market, en olas por contención de ficheros: A (window system,
design-engineer) → A2 (lanzadores,frontend-engineer) → B∥ (helmsdesign-engineer+a11y / transcriptfrontend-engineer/ marketbackend-engineer) → C (barrido + gates). El plan pasó 3 rondas de review que destaparon el radio real de la retirada (7 lanzadores, no 1) y un hueco de arquitectura (el auto-chat no tenía backend conversacional → se redefinió como caja de intent).Gates
desktop.spec.ts(196)context-menus.spec.tsfile-explorer)new-features.spec.tstopLayer—concepto removido del store antes de esta rama— y de chat-attach)Follow-ups (documentados, ninguno bloquea)
falseen runtime pese al default correcto del store (visible: true) — interacción de persist/rehidratación del HUD a depurar con la app corriendo. La feature está cubierta por unit tests.ProjectPickerModalquedó huérfano (solo un comentario lo referencia).MarketFlow.steps[]estructurado (buildFlowAssemblyexportada) en vez del fallback mono-step.FileChanged+ slicestepChangedFilespara encender las file-change chips.useFluxorStore, distinto del window-chat) siguen abriendo sesiones — migración fuera del alcance de esta tarea.🤖 Generated with Claude Code