Prompt #138

Back to prompts
Yoga Plugin PLUGIN Dict Registration
Code Β· openai/gpt-4.1
5/5
Variables
plugin_id, plugin_display_name, trigger_signal
Tags
stack-aware,yoga,plugin,eda,tenant-isolation
Source
research-2026-05-01-stack-aware
Use count
0
Created
2026-05-01T18:30:48.776731+00:00
Updated
2026-05-01T18:30:48.776731+00:00

Content

Create a new yoga plugin using the PLUGIN dict pattern (not TOML).

Yoga plugins use Python dicts, not manifest.toml. Plugin ID format: yoga.{plugin_id}.

Provide:
```python
PLUGIN = {{
    "id": "yoga.{plugin_id}",
    "name": "{plugin_display_name}",
    "version": "1.0.0",
    "default_enabled": False,
    "signal_subscriptions": {{
        "{trigger_signal}": "handlers:on_{trigger_signal}",
    }},
    "blueprints": ["routes:bp"],
    "admin_nav": [{{"label": "{plugin_display_name}", "icon": "extension", "href": "/admin/{plugin_id}"}}],
    "db_migrations": {{"v1": "CREATE TABLE plugin_{plugin_id}_data(id INTEGER PRIMARY KEY, ...)"}},
    "settings_schema": [{{"key": "plugin.{plugin_id}.enabled", "label": "Enabled", "type": "boolean"}}],
}}
```

Include routes.py and handlers.py stubs. Explain: why `plugin._bootstrap_done` must be checked
before auto-activate to prevent tenant-isolation leakage across containers.