fix(plugins): support export default { activate }, cleanup partiel et erreurs visibles

Le loader accepte désormais aussi la forme export default { activate }
en plus de l'export nommé, les subscriptions partiellement établies
sont nettoyées en cas d'échec d'activation, et une erreur de
runtime-catalog est remontée visuellement dans PluginsPanel avec un
badge Invalide/Isolé sur les plugins concernés (#116/#120).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-08-01 00:05:57 +02:00
parent 50b71f4ece
commit 46086af026
5 changed files with 144 additions and 7 deletions

View File

@ -167,7 +167,11 @@ export function PluginsPanel() {
)}
</div>
<div className="flex shrink-0 items-center gap-2">
{p.enabled ? (
{p.lifecycleState === "invalid" ? (
<Button size="sm" variant="ghost" disabled>
Isolé
</Button>
) : p.enabled ? (
<Button
size="sm"
variant="ghost"