feat(B-PLUGIN-MINIAPP-WIRE): MiniApp Registry als Singleton — gemeinsame Registry für alle Plugins
Check Cross-Plugin Imports / check (push) Has been cancelled
Check Cross-Plugin Imports / check (push) Has been cancelled
B-PLUGIN-MINIAPP-WIRE: MiniAppRegistry Singleton-Pattern - get_miniapp_registry() / reset_miniapp_registry() in miniapp_registry.py - Alle 6 MiniAppRegistry() Instanziierungen durch get_miniapp_registry() ersetzt - automation/plugin.py (on_activate/on_deactivate), automation/routes.py (3x), kommunikation/plugin.py - contracts.py: get_miniapp_registry + reset_miniapp_registry exportiert - 0 verbleibende MiniAppRegistry() Instanziierungen außerhalb miniapp_registry.py Tests: 12 Tests in test_miniapp_registry.py — alle grün - Singleton, Register/List, UnregisterPlugin, Plugin-Lifecycle-Integration
This commit is contained in:
@@ -17,6 +17,8 @@ from app.plugins.builtins.contracts import get_contract_registry
|
||||
from app.plugins.builtins.kommunikation.miniapp_registry import (
|
||||
MiniAppDef,
|
||||
MiniAppRegistry,
|
||||
get_miniapp_registry,
|
||||
reset_miniapp_registry,
|
||||
)
|
||||
from app.plugins.builtins.kommunikation.models import (
|
||||
CommConversation,
|
||||
@@ -60,6 +62,8 @@ class KommunikationContract:
|
||||
# ─── mini-app registry ───
|
||||
MiniAppRegistry = MiniAppRegistry
|
||||
MiniAppDef = MiniAppDef
|
||||
get_miniapp_registry = staticmethod(get_miniapp_registry)
|
||||
reset_miniapp_registry = staticmethod(reset_miniapp_registry)
|
||||
|
||||
# ─── models (read-only for queries) ───
|
||||
CommConversation = CommConversation
|
||||
@@ -79,6 +83,8 @@ __all__ = [
|
||||
"get_participant_registry",
|
||||
"MiniAppRegistry",
|
||||
"MiniAppDef",
|
||||
"get_miniapp_registry",
|
||||
"reset_miniapp_registry",
|
||||
"parse_mentions",
|
||||
"get_conversation",
|
||||
"get_messages",
|
||||
|
||||
Reference in New Issue
Block a user