Add settingsSchema (default session provider/model, enabled stages, sync reconcile-on-hooks toggle, reconcile cadence hint) aligned across manifest.json and the runtime manifest, with typed getters. Wire the consumed getters: orchestrator passes defaultProvider/defaultModelId into sessions and rejects disabled stages; hooks gate their reconcile drain on reconcileOnHooks. Add the plugin README and docs/plugins/compound-engineering.md documenting the hub, interactive sessions, work bridge, and the sync ownership model. reconcileIntervalMinutes is exposed as an operator cadence hint but not yet consumed (no host scheduler; reconcile is on-demand by design).
57 lines
2.0 KiB
JSON
57 lines
2.0 KiB
JSON
{
|
|
"id": "fusion-plugin-compound-engineering",
|
|
"name": "Compound Engineering",
|
|
"version": "0.1.0",
|
|
"description": "A dedicated dashboard surface for compound-engineering artifacts and interactive ce-* sessions.",
|
|
"author": "Fusion Team",
|
|
"fusionVersion": ">=0.1.0",
|
|
"dashboardViews": [
|
|
{
|
|
"viewId": "compound-engineering",
|
|
"label": "Compound Engineering",
|
|
"componentPath": "./dashboard-view",
|
|
"icon": "Sparkles",
|
|
"placement": "primary",
|
|
"order": 36
|
|
}
|
|
],
|
|
"settingsSchema": {
|
|
"defaultProvider": {
|
|
"type": "string",
|
|
"label": "Default Session Provider",
|
|
"description": "Model provider used for CE interactive sessions (for example anthropic). Leave blank to use the host default.",
|
|
"group": "Sessions",
|
|
"defaultValue": ""
|
|
},
|
|
"defaultModelId": {
|
|
"type": "string",
|
|
"label": "Default Session Model",
|
|
"description": "Model ID within the provider used for CE interactive sessions. Leave blank to use the host default.",
|
|
"group": "Sessions",
|
|
"defaultValue": ""
|
|
},
|
|
"enabledStages": {
|
|
"type": "array",
|
|
"itemType": "string",
|
|
"label": "Enabled Stages",
|
|
"description": "Stage IDs that may be launched from the Compound Engineering view (for example strategy, ideate, brainstorm, plan, work).",
|
|
"group": "Sessions",
|
|
"defaultValue": ["strategy", "ideate", "brainstorm", "plan", "work"]
|
|
},
|
|
"reconcileOnHooks": {
|
|
"type": "boolean",
|
|
"label": "Reconcile on Board Changes",
|
|
"description": "Run the board→pipeline reconcile sweep automatically after task move/complete hooks. Disable to only reconcile on demand.",
|
|
"group": "Sync",
|
|
"defaultValue": true
|
|
},
|
|
"reconcileIntervalMinutes": {
|
|
"type": "number",
|
|
"label": "Reconcile Cadence (minutes)",
|
|
"description": "Cadence hint for how often an on-demand refresh surface sweeps the reconciler. Not a continuous poll loop.",
|
|
"group": "Sync",
|
|
"defaultValue": 15
|
|
}
|
|
}
|
|
}
|