feat(aidd-orchestrator): route by discovered capability, not hardcoded plugin
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- typescript
- Domain
- developer-experience, tooling
Research direction
Start with docs/ARCHITECTURE.md, then inspect the orchestrator routing and check-sdlc references described in the issue and the call sites in #406. Use #406 as the acceptance fixture and review #250's CI check. Done means plans are derived from installed capabilities, shown before execution, and degrade when a plugin is removed without naming a plugin directly.
Written by the indexing model from the issue text.
Description
Problem
The orchestrator's route is hardcoded. It names aidd-dev by address in its routing regexes and its check-sdlc step, which violates the cross-plugin orthogonality rule in docs/ARCHITECTURE.md — see #406, the concrete violation.
It has no choice today: nothing lets a skill discover, at runtime, what the installed plugins can do. So the pipeline is written down instead of derived.
Scope
An orchestrator that, on every request, reads what is available and proposes a plan, instead of replaying a fixed pipeline.
Its inputs:
- The installed plugins — context, dev, pm, vcs, ui, plus stack and craftsmanship plugins (#148). It reads their skills and agents directly; no separate declaration contract.
- The project — its state, its memory, its detected stack.
- The request — what the user actually asked for.
Its output: an orchestration plan, presented, then run.
Acceptance criteria
- The orchestrator names no plugin by address. Remove the hardcoded
aidd-devand the routing regexes of #406, and nothing breaks. - Installing a new plugin changes the plan it proposes, with no code change.
- Uninstalling a plugin degrades the plan instead of breaking it.
- The plan is shown before it runs.
Related
- #406 — the violation this feature makes impossible. Its call sites are the acceptance fixture.
- #250 — the CI check that stops the next violation from landing.
- Dominant language
- TypeScript
- Stars
- 481
- Forks
- 45
- Avg merge
- 14h 36m
- Merged PRs (30d)
- 110
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from ai-driven-dev/framework
-
refactor(aidd-orchestrator): the check zone says when to stop, and reviews its axes in one round Open
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
ai-driven-dev/framework#887 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
ai-driven-dev/framework#873 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
ai-driven-dev/framework#872 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
ai-driven-dev/framework#625 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
ai-driven-dev/framework#467 · 1 comment ·
All issues in ai-driven-dev/framework
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
ontola/atomic-server#1625 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
melgarafael/DeskcommCRM#1451 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
-
bug via-triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bot:ai-assisted component:compact-js status:untriaged
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
midnightntwrk/midnight-sdk#403 ·