ci(framework): mechanically enforce cross-plugin orthogonality on PRs
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- git, github-actions, typescript
Direzione di ricerca
Start with docs/ARCHITECTURE.md and the existing validate.yml and Lefthook configuration to understand where checks run. Use the violations described in #406 as fixtures, then verify that one deterministic checker runs locally and in CI, reports the file, line, and owning plugin, and checks both inter-plugin addresses and skill metadata consistency.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Mechanically enforce the architecture rules a PR can silently break. Today they are self-attested at best, and #406 is the proof: aidd-orchestrator hardcodes aidd-dev, violating cross-plugin orthogonality, and nothing caught it.
Relationship to #406
- #406 fixes the violation that exists today.
- This issue stops the next one from landing.
One does not replace the other. Without this check, #406 recurs.
What to enforce
- Cross-plugin orthogonality. No plugin references another by name.
docs/ARCHITECTURE.mdstates the rule; nothing verifies it. A grep foraidd-<plugin>:outside its own plugin is a first approximation, but skill descriptions and routing regexes need a real check. - Docs match behavior. A change to a skill's actions that leaves its
descriptionandSKILL.mdrouter table stale.
Note on the original scope
This issue was written when .github/PULL_REQUEST_TEMPLATE.md carried a checklist with "Docs updated" and "No cross-plugin references introduced". That checklist is gone: the template now certifies one thing only, that a human read every line. The rules survive in docs/ARCHITECTURE.md, unenforced — which is exactly the gap this issue fills.
Acceptance criteria
- A PR introducing a hardcoded
aidd-<plugin>:address outside its own plugin fails a check. - The check names the file and line, not just the rule.
- The existing violations in #406 are the fixture: the check must catch them.
Guardrail local et CI
Un unique vérificateur d’orthogonalité est exécuté à deux niveaux :
- Pré-commit local : Lefthook l’exécute sur les fichiers modifiés et bloque le commit avec le fichier, la ligne et le plugin propriétaire.
- CI :
validate.ymlexécute les mêmes hooks sur toute l’arborescence. Elle reste l’autorité finale et bloque toute contribution ayant contourné le hook local.
Le garde-fou est un hook Git, pas un hook IA : il doit être déterministe, valable pour tous les outils et ne jamais dépendre d’un événement ou d’une configuration d’hôte IA.
Les deux niveaux vérifient les adresses inter-plugins et la cohérence entre actions, description et routeur d’un skill.
- Lingua principale
- TypeScript
- Stelle
- 481
- Fork
- 45
- Merge medio
- 19h 38m
- PR unite (30g)
- 108
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di ai-driven-dev/framework
-
refactor(aidd-orchestrator): the check zone says when to stop, and reviews its axes in one round Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
ai-driven-dev/framework#887 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
ai-driven-dev/framework#873 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
ai-driven-dev/framework#872 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
ai-driven-dev/framework#625 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
ai-driven-dev/framework#467 · 1 commento ·
Tutte le issue di ai-driven-dev/framework
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
bcgov/bc-wallet-mobile#4761 · 1 commento ·
-
external-issue to-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
-
area-deployment area-integrations triage:bot-seen
Difficoltà 2/5 Mezza giornata Idoneità per principianti 86/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
refactor
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100