chore(ideai): état runtime — tickets, mémoire, tâches de fond
État d'exécution accumulé (tickets créés/mis à jour hors #43, notes de mémoire, tâche de fond) capturé au moment du commit de la feature. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
52
.ideai/memory/ticket43-plugin-system-final-qa-verdict.md
Normal file
52
.ideai/memory/ticket43-plugin-system-final-qa-verdict.md
Normal file
@ -0,0 +1,52 @@
|
||||
---
|
||||
name: ticket43-plugin-system-final-qa-verdict
|
||||
description: memory note ticket43-plugin-system-final-qa-verdict
|
||||
metadata:
|
||||
type: project
|
||||
---
|
||||
---
|
||||
title: Verdict QA final du ticket #43 système de plugins
|
||||
type: reference
|
||||
description: Validation finale QA de #43 après carnet v5, corrections F4/F3/B4 et exécutions réelles backend/frontend.
|
||||
---
|
||||
|
||||
# Verdict QA final du ticket #43 système de plugins
|
||||
|
||||
Branche validée : `feature/ticket43-plugin-system`.
|
||||
|
||||
Contexte : après verdict QA orange initial, Architect a figé le carnet v5 : `customPluginLayout` top-level canonique, `gitRepository` obligatoire en F3, `${appDataDir}` obligatoire en B4, et `agentSelected`/`terminalFocused`/`layoutCellFocused` + persistance backend state layout plugin acceptés comme dette v1.
|
||||
|
||||
Résultats réels exécutés par QA :
|
||||
|
||||
```text
|
||||
cargo test -p domain -p application -p infrastructure -p backend -p app-tauri plugin --offline --no-fail-fast
|
||||
# OK
|
||||
# application plugin: 9 passed
|
||||
# domain plugin: 3 passed
|
||||
# infrastructure plugin: 5 passed
|
||||
# custom_plugin_layout_roundtrips_with_opaque_state: ok
|
||||
|
||||
cd frontend && npm run typecheck
|
||||
# exit 0
|
||||
|
||||
cd frontend && npm test -- --run
|
||||
# Test Files 104 passed (104)
|
||||
# Tests 947 passed (947)
|
||||
```
|
||||
|
||||
Contrôles ciblés confirmés :
|
||||
|
||||
- Frontend `LayoutNode` inclut `{ type: "customPluginLayout"; node: CustomPluginLayoutCell }` top-level, sans contrat `LeafCell.pluginLayout`.
|
||||
- `LayoutGrid` route `customPluginLayout` vers `PluginLayoutCellView`.
|
||||
- `onStateChange`, `onOpenPlugins`, `onChooseAnotherLayout` sont câblés in-session (`setPluginLayoutState`, navigation settings plugins, remplacement par terminal).
|
||||
- `ProjectsView` câble `gitRepository` via `GitGateway.branches(active.id)` ; `agentSelected`, `terminalFocused`, `layoutCellFocused` restent explicitement `false` en dette v1.
|
||||
- Backend application substitue `${pluginRoot}` et `${appDataDir}` dans command/args/env/cwd des specs MCP plugin, avec test `reconcile_mcp_substitutes_app_data_dir_in_plugin_server_specs`.
|
||||
|
||||
Verdict QA : VERT pour merge local du ticket #43.
|
||||
|
||||
Dette v1 assumée :
|
||||
|
||||
- `agentSelected`, `terminalFocused`, `layoutCellFocused` non câblés, figés à `false` jusqu'à un lot focus/selection dédié.
|
||||
- Persistance backend du `state` de layout plugin non implémentée ; F4 validé en in-session selon arbitrage Architect.
|
||||
|
||||
Aucun nouveau blocage détecté dans les suites demandées.
|
||||
Reference in New Issue
Block a user