Skip to content

fix(aidd-orchestrator): hardcodes aidd-dev, violates cross-plugin orthogonality #406

Description

@blafourcade

Rule

Cross-plugin orthogonality: plugins never reference each other by name — orchestrators included. A skill discovers a cross-plugin capability at runtime by description matching, never a hardcoded aidd-<plugin>:… address. It is not yet mechanically enforced, so violations slip through.

Violation

aidd-orchestrator/skills/00-async-dev hardcodes aidd-dev:

Should delegate by capability:

  • SKILL.md:29 + references/routing.md:36-37 — trigger regexes match /aidd-dev:02-implement, /aidd-dev:05-review.
  • SKILL.md:81check-sdlc verifies aidd-dev:00-sdlc (should be "an SDLC-capable orchestrator").
  • README.md:17 — pointer "use aidd-dev:00-sdlc".

Deployment-level (names the package to install it — harder to make capability-based):

  • SKILL.md:62, actions/setup/07-install-user-scope-plugins.md, assets/setup/workflow-template.yml:165,260 — setup installs aidd-dev@aidd-framework.

Fix options

  1. Capability-based for triggers + check-sdlc + README; leave setup/install naming the package.
  2. Full: make setup capability-driven too (needs design).
  3. Add a lefthook grep for cross-plugin literals so this can't regress.

Found during the docs rework while verifying ARCHITECTURE.md against the code.

Acceptance criteria

  • No file under plugins/aidd-orchestrator/ names another plugin by address.
  • The skill discovers an SDLC-capable orchestrator by capability, not by the string aidd-dev.
  • Uninstalling aidd-dev degrades the flow with a clear message instead of failing on a missing address.
  • The check from ci(framework): mechanically enforce cross-plugin orthogonality on PRs #250 passes on this plugin.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Fields

    Priority

    High

    Projects

    Status
    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions