feat(backend,application,frontend,domain,web-server,app-tauri): bouton Redémarrer l'agent dans la barre supérieure des cellules — #317 (QA verte)
La cellule expose un bouton Redémarrer l'agent valable pour les trois modes de présentation (headless, TUI native, CLI custom), sans jamais prendre la présentation pour vérité runtime. - Application: use case RestartCellAgentRuntime validant le binding exact cellule/runtime via les snapshots live (RestartRuntimeNotFound, ConflictAgentVisibleElsewhere, AgentNotBoundToCell) puis déléguant au scheduler self-restart existant (schedule_cell); CellAgentPresentation purement informationnelle. - Backend/app-tauri/web-server: commande restart_cell_agent sur contrat DTO identique Tauri/HTTP, stop borné par timeout typé (RestartStopTimeout), relance préservant routage TUI natif, géométrie de cellule (node/rows/cols) et conversation; évenements domaine enrichis. - Frontend: bouton dans la barre de cellule avec confirmation, overlay d'état Redémarrage…/échec (libellés par code d'erreur, Fermer/ Réessayer), gardes d'identité de cellule et de restarts externes, gateway/mock/http adapters et ports alignés. - Tests: dto_agents, workstate_actions, contrats web-server, LayoutGrid.cellControlsLayering, adapters agent/mock/http. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@ -286,6 +286,12 @@ export type AgentRestartPhase =
|
||||
| "launching"
|
||||
| "resuming";
|
||||
|
||||
export type AgentRestartFailureCode =
|
||||
| "STOP_TIMEOUT"
|
||||
| "STOP_FAILED"
|
||||
| "LAUNCH_FAILED"
|
||||
| "RESUME_FAILED";
|
||||
|
||||
export type DomainEvent =
|
||||
| { type: "projectCreated"; projectId: string }
|
||||
| { type: "pluginInstalled"; pluginId: string; version: string }
|
||||
@ -341,6 +347,7 @@ export type DomainEvent =
|
||||
agentId: string;
|
||||
restartId: string;
|
||||
phase: AgentRestartPhase;
|
||||
code: AgentRestartFailureCode;
|
||||
message: string;
|
||||
}
|
||||
| {
|
||||
|
||||
Reference in New Issue
Block a user