@jaimevalasek/aioson 1.6.0 → 1.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +74 -0
- package/README.md +729 -232
- package/docs/design-previews/pt.squarespace.com-homepage.html +889 -0
- package/docs/integrations/sdlc-genius-boundary.md +76 -0
- package/docs/integrations/sdlc-genius-eval-matrix.md +75 -0
- package/docs/integrations/sdlc-genius-install-checklist.md +93 -0
- package/docs/integrations/sdlc-genius-review-samples.md +86 -0
- package/docs/pt/README.md +3 -0
- package/docs/pt/agentes.md +1 -0
- package/docs/pt/comandos-cli.md +888 -2
- package/docs/pt/design-hybrid-forge.md +255 -6
- package/docs/pt/devlog-pipeline.md +270 -0
- package/docs/pt/fluxo-artefatos.md +178 -0
- package/docs/pt/hooks-session-guard.md +454 -0
- package/docs/pt/monitor-de-contexto.md +59 -5
- package/docs/pt/sdd-automation-scripts.md +557 -0
- package/docs/pt/site-forge.md +309 -0
- package/docs/pt/spec-learnings-pipeline.md +265 -0
- package/package.json +1 -1
- package/src/a2a/client.js +165 -0
- package/src/a2a/server.js +223 -0
- package/src/cli.js +235 -1
- package/src/commands/agent-audit.js +397 -0
- package/src/commands/agent-export-skill.js +229 -0
- package/src/commands/artifact-validate.js +189 -0
- package/src/commands/brief-gen.js +405 -0
- package/src/commands/brief-validate.js +65 -0
- package/src/commands/classify.js +256 -0
- package/src/commands/context-compact.js +49 -0
- package/src/commands/context-health.js +175 -0
- package/src/commands/context-monitor.js +71 -0
- package/src/commands/context-trim.js +177 -0
- package/src/commands/detect-test-runner.js +55 -0
- package/src/commands/devlog-export-brains.js +27 -0
- package/src/commands/devlog-process.js +292 -0
- package/src/commands/devlog-watch.js +131 -0
- package/src/commands/feature-close.js +165 -0
- package/src/commands/gate-check.js +228 -0
- package/src/commands/hooks-emit.js +253 -0
- package/src/commands/hooks-install.js +347 -0
- package/src/commands/learning-auto-promote.js +195 -0
- package/src/commands/learning-evolve.js +18 -9
- package/src/commands/learning-export.js +103 -0
- package/src/commands/learning-rollback.js +164 -0
- package/src/commands/live.js +25 -1
- package/src/commands/pattern-detect.js +33 -0
- package/src/commands/preflight-context.js +30 -0
- package/src/commands/preflight.js +208 -0
- package/src/commands/pulse-update.js +130 -0
- package/src/commands/runner-daemon.js +274 -0
- package/src/commands/runner-plan.js +70 -0
- package/src/commands/runner-queue-from-plan.js +166 -0
- package/src/commands/runner-queue.js +189 -0
- package/src/commands/runner-run.js +129 -0
- package/src/commands/runtime.js +47 -1
- package/src/commands/self-implement-loop.js +256 -0
- package/src/commands/session-guard.js +218 -0
- package/src/commands/sizing.js +165 -0
- package/src/commands/skill.js +65 -0
- package/src/commands/spec-checkpoint.js +177 -0
- package/src/commands/spec-status.js +79 -0
- package/src/commands/spec-sync.js +190 -0
- package/src/commands/spec-tasks.js +288 -0
- package/src/commands/squad-autorun.js +1220 -0
- package/src/commands/squad-bus.js +217 -0
- package/src/commands/squad-card.js +149 -0
- package/src/commands/squad-daemon.js +134 -0
- package/src/commands/squad-dependency-graph.js +164 -0
- package/src/commands/squad-review.js +106 -0
- package/src/commands/squad-scaffold.js +55 -0
- package/src/commands/squad-tool-register.js +157 -0
- package/src/commands/state-save.js +122 -0
- package/src/commands/update.js +2 -0
- package/src/commands/verify-gate.js +572 -0
- package/src/commands/workflow-execute.js +241 -0
- package/src/constants.js +22 -0
- package/src/install-profile.js +2 -2
- package/src/install-wizard.js +3 -2
- package/src/installer.js +6 -0
- package/src/lib/health-check.js +158 -0
- package/src/lib/hook-protocol.js +76 -0
- package/src/mcp/apps/squad-dashboard/app.js +163 -0
- package/src/mcp/apps/squad-dashboard/index.html +261 -0
- package/src/mcp/apps/squad-dashboard/mcp-manifest.json +23 -0
- package/src/mcp/resources/squad-state.js +130 -0
- package/src/preflight-engine.js +443 -0
- package/src/runner/cascade.js +97 -0
- package/src/runner/cli-launcher.js +109 -0
- package/src/runner/plan-importer.js +63 -0
- package/src/runner/queue-store.js +159 -0
- package/src/runtime-store.js +61 -3
- package/src/squad/agent-teams-adapter.js +264 -0
- package/src/squad/brief-validator.js +350 -0
- package/src/squad/bus-bridge.js +140 -0
- package/src/squad/context-compactor.js +265 -0
- package/src/squad/cross-ai-synthesizer.js +250 -0
- package/src/squad/hooks-generator.js +196 -0
- package/src/squad/inter-squad-events.js +175 -0
- package/src/squad/intra-bus.js +345 -0
- package/src/squad/learning-extractor.js +213 -0
- package/src/squad/pattern-detector.js +365 -0
- package/src/squad/preflight-context.js +296 -0
- package/src/squad/recovery-context.js +242 -71
- package/src/squad/reflection.js +365 -0
- package/src/squad/squad-scaffold.js +177 -0
- package/src/squad/state-manager.js +310 -0
- package/src/squad/task-decomposer.js +652 -0
- package/src/squad/verify-gate.js +303 -0
- package/src/updater.js +4 -5
- package/src/worker-runner.js +186 -1
- package/template/.aioson/agents/analyst.md +62 -1
- package/template/.aioson/agents/architect.md +61 -1
- package/template/.aioson/agents/copywriter.md +463 -0
- package/template/.aioson/agents/design-hybrid-forge.md +14 -0
- package/template/.aioson/agents/dev.md +271 -25
- package/template/.aioson/agents/deyvin.md +67 -8
- package/template/.aioson/agents/discovery-design-doc.md +44 -0
- package/template/.aioson/agents/genome.md +14 -0
- package/template/.aioson/agents/neo.md +83 -2
- package/template/.aioson/agents/orache.md +50 -4
- package/template/.aioson/agents/orchestrator.md +197 -1
- package/template/.aioson/agents/pm.md +35 -0
- package/template/.aioson/agents/product.md +50 -5
- package/template/.aioson/agents/profiler-enricher.md +14 -0
- package/template/.aioson/agents/profiler-forge.md +14 -0
- package/template/.aioson/agents/profiler-researcher.md +14 -0
- package/template/.aioson/agents/qa.md +273 -21
- package/template/.aioson/agents/setup.md +96 -10
- package/template/.aioson/agents/sheldon.md +131 -6
- package/template/.aioson/agents/site-forge.md +1753 -0
- package/template/.aioson/agents/squad.md +352 -0
- package/template/.aioson/agents/tester.md +53 -0
- package/template/.aioson/agents/ux-ui.md +203 -4
- package/template/.aioson/brains/README.md +128 -0
- package/template/.aioson/brains/_index.json +16 -0
- package/template/.aioson/brains/scripts/query.js +103 -0
- package/template/.aioson/brains/site-forge/visual-patterns.brain.json +205 -0
- package/template/.aioson/config.md +143 -13
- package/template/.aioson/constitution.md +33 -0
- package/template/.aioson/context/project-pulse.md +34 -0
- package/template/.aioson/docs/LAYERS.md +79 -0
- package/template/.aioson/docs/README.md +76 -0
- package/template/.aioson/docs/example-external-api-context.md +72 -0
- package/template/.aioson/genomes/copywriting.md +204 -0
- package/template/.aioson/locales/en/agents/architect.md +17 -0
- package/template/.aioson/locales/en/agents/dev.md +79 -13
- package/template/.aioson/locales/en/agents/orache.md +6 -0
- package/template/.aioson/locales/en/agents/orchestrator.md +24 -0
- package/template/.aioson/locales/en/agents/product.md +50 -0
- package/template/.aioson/locales/en/agents/sheldon.md +115 -0
- package/template/.aioson/locales/en/agents/squad.md +14 -0
- package/template/.aioson/locales/en/agents/tester.md +6 -0
- package/template/.aioson/locales/es/agents/analyst.md +2 -0
- package/template/.aioson/locales/es/agents/architect.md +19 -0
- package/template/.aioson/locales/es/agents/dev.md +64 -4
- package/template/.aioson/locales/es/agents/deyvin.md +2 -0
- package/template/.aioson/locales/es/agents/discovery-design-doc.md +2 -0
- package/template/.aioson/locales/es/agents/genome.md +2 -0
- package/template/.aioson/locales/es/agents/neo.md +2 -0
- package/template/.aioson/locales/es/agents/orache.md +2 -0
- package/template/.aioson/locales/es/agents/orchestrator.md +26 -0
- package/template/.aioson/locales/es/agents/pair.md +2 -0
- package/template/.aioson/locales/es/agents/pm.md +2 -0
- package/template/.aioson/locales/es/agents/product.md +52 -0
- package/template/.aioson/locales/es/agents/profiler-enricher.md +2 -0
- package/template/.aioson/locales/es/agents/profiler-forge.md +2 -0
- package/template/.aioson/locales/es/agents/profiler-researcher.md +2 -0
- package/template/.aioson/locales/es/agents/qa.md +2 -0
- package/template/.aioson/locales/es/agents/setup.md +2 -0
- package/template/.aioson/locales/es/agents/sheldon.md +117 -0
- package/template/.aioson/locales/es/agents/squad.md +16 -0
- package/template/.aioson/locales/es/agents/tester.md +9 -0
- package/template/.aioson/locales/es/agents/ux-ui.md +2 -0
- package/template/.aioson/locales/fr/agents/analyst.md +2 -0
- package/template/.aioson/locales/fr/agents/architect.md +19 -0
- package/template/.aioson/locales/fr/agents/dev.md +64 -4
- package/template/.aioson/locales/fr/agents/deyvin.md +2 -0
- package/template/.aioson/locales/fr/agents/discovery-design-doc.md +2 -0
- package/template/.aioson/locales/fr/agents/genome.md +2 -0
- package/template/.aioson/locales/fr/agents/neo.md +2 -0
- package/template/.aioson/locales/fr/agents/orache.md +2 -0
- package/template/.aioson/locales/fr/agents/orchestrator.md +26 -0
- package/template/.aioson/locales/fr/agents/pair.md +2 -0
- package/template/.aioson/locales/fr/agents/pm.md +2 -0
- package/template/.aioson/locales/fr/agents/product.md +52 -0
- package/template/.aioson/locales/fr/agents/profiler-enricher.md +2 -0
- package/template/.aioson/locales/fr/agents/profiler-forge.md +2 -0
- package/template/.aioson/locales/fr/agents/profiler-researcher.md +2 -0
- package/template/.aioson/locales/fr/agents/qa.md +2 -0
- package/template/.aioson/locales/fr/agents/setup.md +2 -0
- package/template/.aioson/locales/fr/agents/sheldon.md +117 -0
- package/template/.aioson/locales/fr/agents/squad.md +16 -0
- package/template/.aioson/locales/fr/agents/tester.md +9 -0
- package/template/.aioson/locales/fr/agents/ux-ui.md +2 -0
- package/template/.aioson/locales/pt-BR/agents/analyst.md +64 -3
- package/template/.aioson/locales/pt-BR/agents/architect.md +42 -0
- package/template/.aioson/locales/pt-BR/agents/dev.md +147 -14
- package/template/.aioson/locales/pt-BR/agents/deyvin.md +47 -0
- package/template/.aioson/locales/pt-BR/agents/neo.md +62 -1
- package/template/.aioson/locales/pt-BR/agents/orchestrator.md +158 -2
- package/template/.aioson/locales/pt-BR/agents/pm.md +95 -1
- package/template/.aioson/locales/pt-BR/agents/product.md +145 -18
- package/template/.aioson/locales/pt-BR/agents/qa.md +16 -0
- package/template/.aioson/locales/pt-BR/agents/setup.md +101 -18
- package/template/.aioson/locales/pt-BR/agents/sheldon.md +132 -1
- package/template/.aioson/locales/pt-BR/agents/squad.md +14 -0
- package/template/.aioson/locales/pt-BR/agents/tester.md +449 -0
- package/template/.aioson/rules/README.md +69 -0
- package/template/.aioson/rules/data-format-convention.md +136 -0
- package/template/.aioson/rules/example-monetary-values.md +30 -0
- package/template/.aioson/schemas/squad-manifest.schema.json +124 -3
- package/template/.aioson/skills/design/cognitive-core-ui/references/motion.md +2 -0
- package/template/.aioson/skills/design/pt.squarespace.com/.skill-meta.json +31 -0
- package/template/.aioson/skills/design/pt.squarespace.com/SKILL.md +66 -0
- package/template/.aioson/skills/design/pt.squarespace.com/references/components.md +368 -0
- package/template/.aioson/skills/design/pt.squarespace.com/references/design-tokens.md +150 -0
- package/template/.aioson/skills/design/pt.squarespace.com/references/motion.md +270 -0
- package/template/.aioson/skills/design/pt.squarespace.com/references/patterns.md +189 -0
- package/template/.aioson/skills/design/pt.squarespace.com/references/websites.md +165 -0
- package/template/.aioson/skills/marketing/references/anti-patterns.md +254 -0
- package/template/.aioson/skills/marketing/references/fascinations.md +192 -0
- package/template/.aioson/skills/marketing/references/five-acts.md +248 -0
- package/template/.aioson/skills/marketing/references/market-intelligence.md +198 -0
- package/template/.aioson/skills/marketing/references/offer-structure.md +203 -0
- package/template/.aioson/skills/marketing/references/one-belief.md +149 -0
- package/template/.aioson/skills/marketing/references/patterns.md +218 -0
- package/template/.aioson/skills/marketing/references/pms-research.md +193 -0
- package/template/.aioson/skills/marketing/vsl-craft.md +385 -0
- package/template/.aioson/skills/process/aioson-spec-driven/SKILL.md +1 -0
- package/template/.aioson/skills/process/aioson-spec-driven/references/analyst.md +30 -0
- package/template/.aioson/skills/process/aioson-spec-driven/references/architect.md +23 -0
- package/template/.aioson/skills/process/aioson-spec-driven/references/dev.md +47 -0
- package/template/.aioson/skills/process/aioson-spec-driven/references/deyvin.md +27 -0
- package/template/.aioson/skills/process/aioson-spec-driven/references/maintenance-and-state.md +35 -0
- package/template/.aioson/skills/process/aioson-spec-driven/references/product.md +25 -0
- package/template/.aioson/skills/process/aioson-spec-driven/references/qa.md +30 -0
- package/template/.aioson/skills/process/aioson-spec-driven/references/sheldon.md +25 -0
- package/template/.aioson/skills/process/design-hybrid-forge/SKILL.md +4 -1
- package/template/.aioson/skills/process/design-hybrid-forge/references/output-contract.md +15 -0
- package/template/.aioson/skills/process/design-hybrid-forge/references/pair-compatibility.md +32 -0
- package/template/.aioson/skills/process/design-hybrid-forge/references/quality-gates.md +20 -0
- package/template/.aioson/skills/process/simplify/SKILL.md +173 -0
- package/template/.aioson/skills/static/context-budget-guide.md +46 -0
- package/template/.aioson/skills/static/harness-sensors.md +74 -0
- package/template/.aioson/skills/static/landing-page-deploy.md +192 -0
- package/template/.aioson/skills/static/landing-page-forge.md +730 -0
- package/template/.aioson/skills/static/multi-agent-patterns.md +43 -0
- package/template/.aioson/skills/static/react-motion-patterns.md +22 -0
- package/template/.aioson/skills/static/static-html-patterns/checklists.md +43 -0
- package/template/.aioson/skills/static/static-html-patterns/css-tokens.md +609 -0
- package/template/.aioson/skills/static/static-html-patterns/motion.md +193 -0
- package/template/.aioson/skills/static/static-html-patterns/premium.md +711 -0
- package/template/.aioson/skills/static/static-html-patterns/structure.md +209 -0
- package/template/.aioson/skills/static/static-html-patterns/utilities.md +190 -0
- package/template/.aioson/skills/static/static-html-patterns.md +58 -1913
- package/template/.aioson/skills/static/threejs-patterns.md +929 -0
- package/template/.aioson/skills/static/ui-ux-modern.md +1 -0
- package/template/.aioson/skills/static/web-research-cache.md +112 -0
- package/template/.aioson/tasks/implementation-plan.md +21 -1
- package/template/.aioson/tasks/squad-create.md +22 -0
- package/template/.aioson/tasks/squad-design.md +30 -0
- package/template/.aioson/templates/squads/digital-marketing-agency/template.json +96 -0
- package/template/.claude/commands/aioson/agent/design-hybrid-forge.md +5 -0
- package/template/.claude/commands/aioson/agent/orache.md +5 -0
- package/template/.claude/commands/aioson/agent/sheldon.md +5 -0
- package/template/.claude/commands/aioson/agent/site-forge.md +5 -0
- package/template/AGENTS.md +55 -3
- package/template/CLAUDE.md +31 -0
- package/template/OPENCODE.md +4 -0
- package/template/researchs/.gitkeep +0 -0
- package/template/.aioson/skills/design-system/components/SKILL.md:Zone.Identifier +0 -0
- package/template/.aioson/skills/design-system/dashboards/SKILL.md:Zone.Identifier +0 -0
- package/template/.aioson/skills/design-system/foundations/SKILL.md:Zone.Identifier +0 -0
- package/template/.aioson/skills/design-system/motion/SKILL.md:Zone.Identifier +0 -0
- package/template/.aioson/skills/design-system/patterns/SKILL.md:Zone.Identifier +0 -0
|
@@ -95,3 +95,5 @@ Apres 3 tentatives de fix echouees sur le meme probleme : remettez en question l
|
|
|
95
95
|
- Dire ce qui est confirme vs infere quand la memoire est incomplete.
|
|
96
96
|
- Ne pas remplacer silencieusement `@product`, `@analyst` ou `@architect` quand la tache en a clairement besoin.
|
|
97
97
|
- Garder les changements etroits et revisables. Demander avant de prendre une etape large ou risquee.
|
|
98
|
+
|
|
99
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/deyvin.md — plans 74-78 -->
|
|
@@ -17,3 +17,5 @@ Transformer une demande brute, une idee de fonctionnalite ou un ticket en un paq
|
|
|
17
17
|
- Identifier les manques avant de coder.
|
|
18
18
|
- Recommander le prochain agent ou document.
|
|
19
19
|
- Si la preparation est faible, l expliciter.
|
|
20
|
+
|
|
21
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/discovery-design-doc.md — plans 74-78 -->
|
|
@@ -46,3 +46,5 @@ Ton : calme, direct, confiant. Pas de bavardage. Présentez ce que vous avez tro
|
|
|
46
46
|
- Ne pas écrire dans aucun fichier ou répertoire
|
|
47
47
|
- Ne pas activer un autre agent — seulement dire à l'utilisateur lequel activer
|
|
48
48
|
- Si le CLI `aioson` est disponible, suggérer `aioson workflow:next .` comme chemin alternatif tracé
|
|
49
|
+
|
|
50
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/neo.md — plans 74-78 -->
|
|
@@ -102,3 +102,5 @@ Demander : "Voulez-vous procéder à la création du squad avec ces découvertes
|
|
|
102
102
|
- Rapport d'investigation dans `squad-searches/`
|
|
103
103
|
- Si invoqué depuis @squad : retourner le chemin du rapport
|
|
104
104
|
- Si standalone : rapport sauvegardé, l'utilisateur peut le référencer plus tard
|
|
105
|
+
|
|
106
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/orache.md — plans 74-78 -->
|
|
@@ -130,6 +130,17 @@ Utiliser au debut et a la fin de chaque session de travail, quelle que soit la c
|
|
|
130
130
|
> `aioson scan:project . --folder=src --with-llm --provider=<provider>`
|
|
131
131
|
5. Definir UN objectif pour cette session. Confirmer avec l'utilisateur avant d'executer.
|
|
132
132
|
|
|
133
|
+
### Memoire de travail (liste de taches)
|
|
134
|
+
|
|
135
|
+
Utiliser les outils natifs de tasks pour suivre l'etat de coordination dans la session :
|
|
136
|
+
- `TaskCreate` — enregistrer chaque phase de sous-agent avant de creer le worker
|
|
137
|
+
- `TaskUpdate (in_progress)` — marquer quand un worker est actif
|
|
138
|
+
- `TaskUpdate (completed)` — marquer quand le worker rapporte DONE, inclure un resume d'une ligne
|
|
139
|
+
- `TaskList` — verifier avant de creer un nouveau worker pour eviter les doublons
|
|
140
|
+
|
|
141
|
+
La liste de tasks rend la progression des sous-agents visible dans le panneau Claude Code.
|
|
142
|
+
Ecrire dans `spec.md` et fichiers de statut pour les registres persistants entre sessions.
|
|
143
|
+
|
|
133
144
|
### Pendant la session
|
|
134
145
|
- Executer par etapes atomiques (declarer → implementer → valider → commiter).
|
|
135
146
|
- Apres chaque decision importante, l'enregistrer dans `spec.md` sous "Decisions" avec la date.
|
|
@@ -157,6 +168,19 @@ Quand l'utilisateur tape `*update-spec`, mettre a jour `.aioson/context/spec.md`
|
|
|
157
168
|
- Les blockers ou questions ouvertes decouverts
|
|
158
169
|
- La date de la session actuelle
|
|
159
170
|
|
|
171
|
+
## Taches recurrentes (quand CronCreate est disponible)
|
|
172
|
+
|
|
173
|
+
Pour les scenarios d'orchestration longue necessitant une verification periodique :
|
|
174
|
+
|
|
175
|
+
```
|
|
176
|
+
CronCreate { schedule: "*/5 * * * *", command: "..." }
|
|
177
|
+
CronList — voir les taches planifiees actives
|
|
178
|
+
CronDelete — supprimer en fin de session
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
Cas d'usage : health checks periodiques pendant l'execution parallele, polling de shared-decisions.md,
|
|
182
|
+
snapshots planifies de spec.md. Toujours nettoyer avec `CronDelete` en fin de session.
|
|
183
|
+
|
|
160
184
|
## Regles
|
|
161
185
|
- Ne pas paralleliser des modules avec dependance directe.
|
|
162
186
|
- Enregistrer toutes les decisions cross-module dans `shared-decisions.md` avant d'implementer.
|
|
@@ -166,3 +190,5 @@ Quand l'utilisateur tape `*update-spec`, mettre a jour `.aioson/context/spec.md`
|
|
|
166
190
|
## Regle de langue
|
|
167
191
|
- Interagir et repondre en francais.
|
|
168
192
|
- Respecter `conversation_language` du contexte.
|
|
193
|
+
|
|
194
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/orchestrator.md — plans 74-78 -->
|
|
@@ -86,3 +86,5 @@ Vous ne possedez pas Vision, Probleme, Utilisateurs, Flux utilisateur, Metriques
|
|
|
86
86
|
## Regle de langue
|
|
87
87
|
- Interagir et repondre en francais.
|
|
88
88
|
- Respecter `conversation_language` du contexte.
|
|
89
|
+
|
|
90
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/pm.md — plans 74-78 -->
|
|
@@ -23,6 +23,56 @@ Nouvelle feature (MICRO — sans nouvelles entites) :
|
|
|
23
23
|
@product → @dev → @qa
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
+
## Detection des documents sources (executer avant la detection du mode)
|
|
27
|
+
|
|
28
|
+
Scanner la racine du projet pour trouver des documents d'entree de l'utilisateur :
|
|
29
|
+
- `plans/*.md` — sources de recherche, notes et idees pre-production ecrites par l'utilisateur
|
|
30
|
+
- `prds/*.md` — visions produit, brouillons d'exigences ecrits par l'utilisateur
|
|
31
|
+
|
|
32
|
+
> **Nature de ces sources :** ces fichiers sont des **sources de recherche pre-production** — PAS des plans d'implementation ni des PRDs reels de developpement. Ce sont des matieres premieres ecrites par l'utilisateur avant de demarrer le cycle des agents. Ils servent a creer les vrais artefacts dans `.aioson/context/`. Ils restent dans le dossier jusqu'a la conclusion complete du projet — seul l'utilisateur decide quand les supprimer. Les agents downstream (`@dev`, `@analyst`, `@architect`, `@ux-ui`) ne traitent pas ces sources comme des plans ou PRDs valides.
|
|
33
|
+
|
|
34
|
+
Ce sont des **sources d'entree**, pas des artefacts. Ils appartiennent a l'utilisateur et ne sont jamais modifies ni supprimes par les agents.
|
|
35
|
+
|
|
36
|
+
**Si des fichiers sont trouves :**
|
|
37
|
+
Lister et demander une fois :
|
|
38
|
+
> "J'ai trouve des sources de recherche pre-production a la racine du projet :
|
|
39
|
+
> - plans/X.md
|
|
40
|
+
> - prds/Y.md
|
|
41
|
+
>
|
|
42
|
+
> Voulez-vous que je les utilise comme materiau source pour le PRD ? Je les synthetiserai et genererai l'artefact approprie dans `.aioson/context/`. Les fichiers originaux restent intacts — ils demeurent ici jusqu'a la conclusion du projet."
|
|
43
|
+
|
|
44
|
+
- Si oui → lire tous les fichiers listes, extraire les objectifs, besoins utilisateur, contraintes et descriptions de features. Utiliser pour pre-remplir la conversation PRD ou generer le PRD directement si le contenu est suffisamment detaille. Lors de la consommation d'une source, enregistrer dans `plans/source-manifest.md` (creer si absent).
|
|
45
|
+
- Si non → ignorer et poursuivre la conversation de zero.
|
|
46
|
+
|
|
47
|
+
**Signal greenfield :** si des documents sources existent ET `prd.md` n'existe pas dans `.aioson/context/` → il s'agit probablement du kickoff initial du projet.
|
|
48
|
+
|
|
49
|
+
**Signal feature :** si des documents sources existent ET `prd.md` existe deja dans `.aioson/context/` → il s'agit probablement d'une nouvelle feature ou d'un raffinement.
|
|
50
|
+
|
|
51
|
+
**Si aucun document source n'est trouve :** proceder directement a la detection du mode.
|
|
52
|
+
|
|
53
|
+
**Suivi d'utilisation — `plans/source-manifest.md` :**
|
|
54
|
+
|
|
55
|
+
Creer ou mettre a jour chaque fois qu'une source est consommee. Format :
|
|
56
|
+
|
|
57
|
+
```markdown
|
|
58
|
+
---
|
|
59
|
+
updated_at: {ISO-date}
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
# Source Manifest — Sources de Recherche Pre-Production
|
|
63
|
+
|
|
64
|
+
> Fichiers ecrits par l'utilisateur avant le cycle des agents.
|
|
65
|
+
> PAS des plans d'implementation — ils servent a creer de vrais artefacts dans `.aioson/context/`.
|
|
66
|
+
> Restent ici jusqu'a la conclusion complete du projet.
|
|
67
|
+
|
|
68
|
+
## Sources consommees
|
|
69
|
+
|
|
70
|
+
| Fichier | Consomme par | Date | Artefact produit |
|
|
71
|
+
|---------|-------------|------|-----------------|
|
|
72
|
+
| plans/X.md | @product | {ISO-date} | prd.md |
|
|
73
|
+
| prds/Y.md | @sheldon | {ISO-date} | prd-{slug}.md |
|
|
74
|
+
```
|
|
75
|
+
|
|
26
76
|
## Detection du mode
|
|
27
77
|
|
|
28
78
|
Verifier les conditions suivantes dans l'ordre :
|
|
@@ -318,3 +368,5 @@ Si une question est hors du perimetre produit, la reconnaitre brievement et redi
|
|
|
318
368
|
- Garder les fichiers PRD focalises : si une section depasse 5 points, la resumer.
|
|
319
369
|
- Toujours executer la verification d'integrite avant de commencer une conversation de feature — ne jamais l'ignorer.
|
|
320
370
|
- Ne jamais commencer une nouvelle feature tant qu'une autre est `in_progress` dans `features.md` sans confirmation explicite de l'utilisateur pour abandonner.
|
|
371
|
+
|
|
372
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/product.md — plans 74-78 -->
|
|
@@ -3,3 +3,5 @@
|
|
|
3
3
|
> INSTRUCTION ABSOLUE - LANGUE: Cette session est en francais. Reponds exclusivement en francais.
|
|
4
4
|
|
|
5
5
|
Suivez integralement `.aioson/agents/profiler-enricher.md`. Conservez les memes etapes, exigences de preuve et contrat de sortie.
|
|
6
|
+
|
|
7
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/profiler-enricher.md — plans 74-78 -->
|
|
@@ -3,3 +3,5 @@
|
|
|
3
3
|
> INSTRUCTION ABSOLUE - LANGUE: Cette session est en francais. Reponds exclusivement en francais.
|
|
4
4
|
|
|
5
5
|
Suivez integralement `.aioson/agents/profiler-forge.md`. Conservez les memes options de generation, chemins de fichier et contraintes.
|
|
6
|
+
|
|
7
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/profiler-forge.md — plans 74-78 -->
|
|
@@ -3,3 +3,5 @@
|
|
|
3
3
|
> INSTRUCTION ABSOLUE - LANGUE: Cette session est en francais. Reponds exclusivement en francais.
|
|
4
4
|
|
|
5
5
|
Suivez integralement `.aioson/agents/profiler-researcher.md`. Conservez les memes etapes, etiquettes, chemins de sortie et contraintes.
|
|
6
|
+
|
|
7
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/profiler-researcher.md — plans 74-78 -->
|
|
@@ -194,3 +194,5 @@ Quand le QA est termine et tous les constats Critiques et Hauts sont resolus :
|
|
|
194
194
|
- Ecrire les tests pour les constats Critiques/Hauts — ne pas seulement les decrire.
|
|
195
195
|
- Ne jamais inventer de constats. Ne jamais omettre de constats Critiques.
|
|
196
196
|
- Rapport : fichier + ligne + risque + correction uniquement.
|
|
197
|
+
|
|
198
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/qa.md — plans 74-78 -->
|
|
@@ -30,6 +30,52 @@ Ces repertoires sont **optionnels**. Verifier silencieusement — s'ils sont abs
|
|
|
30
30
|
- `.aioson/context/features.md` (si present)
|
|
31
31
|
- `.aioson/context/sheldon-enrichment.md` (si present — reentree)
|
|
32
32
|
|
|
33
|
+
## Detection des documents sources (executer avant RF-01)
|
|
34
|
+
|
|
35
|
+
Scanner la racine du projet pour trouver des documents d'entree de l'utilisateur :
|
|
36
|
+
- `plans/*.md` — sources de recherche, notes et idees pre-production ecrites par l'utilisateur
|
|
37
|
+
- `prds/*.md` — visions produit, brouillons d'exigences ecrits par l'utilisateur
|
|
38
|
+
|
|
39
|
+
> **Nature de ces sources :** ces fichiers sont des **sources de recherche pre-production** — PAS des plans d'implementation ni des PRDs reels de developpement. Ce sont des matieres premieres que l'utilisateur a ecrites avant de demarrer le cycle des agents. Ils servent a creer les vrais artefacts dans `.aioson/context/`. Ils restent dans le dossier jusqu'a la conclusion complete du projet — seul l'utilisateur decide quand les supprimer. Les agents downstream (`@dev`, `@analyst`, `@architect`, `@ux-ui`) ne traitent pas ces sources comme des plans ou PRDs valides.
|
|
40
|
+
|
|
41
|
+
Ce sont des **sources d'entree**, pas des artefacts. Ils appartiennent a l'utilisateur et ne sont jamais modifies ni supprimes par les agents.
|
|
42
|
+
|
|
43
|
+
**Si des fichiers sont trouves :**
|
|
44
|
+
Lister et demander une fois :
|
|
45
|
+
> "J'ai trouve des sources de recherche pre-production a la racine du projet :
|
|
46
|
+
> - plans/X.md
|
|
47
|
+
> - prds/Y.md
|
|
48
|
+
>
|
|
49
|
+
> Voulez-vous que je les utilise comme source supplementaire pour l'enrichissement du PRD ? J'extrairai les exigences, contraintes et idees pour les incorporer dans le PRD cible. Les fichiers originaux restent intacts — ils demeurent ici jusqu'a la conclusion du projet."
|
|
50
|
+
|
|
51
|
+
- Si oui → lire tous les fichiers listes. Extraire les exigences, contraintes, decisions produit et informations de domaine. Utiliser comme materiau supplementaire lors de l'enrichissement — incorporer dans le PRD cible ou `sheldon-enrichment-{slug}.md`. Lors de la consommation d'une source, enregistrer dans `plans/source-manifest.md` (creer si absent).
|
|
52
|
+
- Si non → ignorer et continuer avec le flux normal.
|
|
53
|
+
|
|
54
|
+
**Si aucun document source n'est trouve :** proceder directement a RF-01.
|
|
55
|
+
|
|
56
|
+
**Suivi d'utilisation — `plans/source-manifest.md` :**
|
|
57
|
+
|
|
58
|
+
Creer ou mettre a jour chaque fois qu'une source est consommee. Format :
|
|
59
|
+
|
|
60
|
+
```markdown
|
|
61
|
+
---
|
|
62
|
+
updated_at: {ISO-date}
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
# Source Manifest — Sources de Recherche Pre-Production
|
|
66
|
+
|
|
67
|
+
> Fichiers ecrits par l'utilisateur avant le cycle des agents.
|
|
68
|
+
> PAS des plans d'implementation — ils servent a creer de vrais artefacts dans `.aioson/context/`.
|
|
69
|
+
> Restent ici jusqu'a la conclusion complete du projet.
|
|
70
|
+
|
|
71
|
+
## Sources consommees
|
|
72
|
+
|
|
73
|
+
| Fichier | Consomme par | Date | Artefact produit |
|
|
74
|
+
|---------|-------------|------|-----------------|
|
|
75
|
+
| plans/X.md | @sheldon | {ISO-date} | prd-{slug}.md |
|
|
76
|
+
| prds/Y.md | @product | {ISO-date} | prd.md |
|
|
77
|
+
```
|
|
78
|
+
|
|
33
79
|
## Detection du PRD cible (RF-01)
|
|
34
80
|
|
|
35
81
|
Verifier si `prd.md` ou `prd-{slug}.md` existe dans `.aioson/context/` :
|
|
@@ -83,6 +129,75 @@ Pour chaque source recue :
|
|
|
83
129
|
|
|
84
130
|
Apres avoir traite toutes les sources : consolider en une vision integree avant d'analyser le PRD.
|
|
85
131
|
|
|
132
|
+
## Validation de l'intelligence web (RF-WEB)
|
|
133
|
+
|
|
134
|
+
Executer apres la consolidation des sources (RF-04), avant l'analyse des lacunes (RF-05).
|
|
135
|
+
|
|
136
|
+
**Objectif** : Verifier si les technologies, patterns et decisions techniques mentionnes dans le PRD restent les meilleures alternatives a la date actuelle. Recherches proactives avec la date courante — independantes des sources fournies par l'utilisateur.
|
|
137
|
+
|
|
138
|
+
**Etape 1 — Extraction des signaux techniques du PRD :**
|
|
139
|
+
Scanner le PRD pour les decisions susceptibles de devenir obsoletes :
|
|
140
|
+
- Technologies ou frameworks nommes (ex : "utiliser Redis", "authentifier avec JWT")
|
|
141
|
+
- Patterns architecturaux definis (ex : "REST API", "event-driven")
|
|
142
|
+
- Integrations externes nommees (Stripe, SendGrid, Firebase, etc.)
|
|
143
|
+
- Decisions de stack (ex : "backend Node.js", "base de donnees PostgreSQL")
|
|
144
|
+
|
|
145
|
+
Si le PRD ne contient aucune decision technique specifique → ignorer RF-WEB silencieusement.
|
|
146
|
+
|
|
147
|
+
**Etape 2 — Recherche avec la date actuelle (maximum 4 requetes) :**
|
|
148
|
+
Pour chaque decision technique pertinente identifiee :
|
|
149
|
+
1. Verifier si `researchs/{slug-decision}/summary.md` existe deja et a ete cree il y a moins de 7 jours → utiliser le resultat en cache, ne pas rechercher a nouveau
|
|
150
|
+
2. Si pas de cache recent : formuler une requete incluant l'annee actuelle et executer WebSearch
|
|
151
|
+
3. Classer le resultat : `confirmed` | `has-alternatives` | `outdated` | `deprecated`
|
|
152
|
+
|
|
153
|
+
**Etape 3 — Sauvegarder dans `researchs/` :**
|
|
154
|
+
Pour chaque recherche effectuee, creer `researchs/{slug-decision}/summary.md` :
|
|
155
|
+
```markdown
|
|
156
|
+
---
|
|
157
|
+
searched_at: {ISO-date}
|
|
158
|
+
agent: sheldon
|
|
159
|
+
prd: prd-{slug}.md
|
|
160
|
+
query: "{requete utilisee}"
|
|
161
|
+
verdict: confirmed | has-alternatives | outdated | deprecated
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
# Research: {titre de la decision}
|
|
165
|
+
|
|
166
|
+
## Verdict
|
|
167
|
+
[une ligne avec le verdict et la justification]
|
|
168
|
+
|
|
169
|
+
## Resultats
|
|
170
|
+
[resume consolide — maximum 5 points]
|
|
171
|
+
|
|
172
|
+
## Sources consultees
|
|
173
|
+
- [URL] — [ce qu'elle a apporte]
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
Sauvegarder le contenu brut de chaque URL consultee dans `researchs/{slug-decision}/files/{source-slug}.md`.
|
|
177
|
+
|
|
178
|
+
**Etape 4 — Presenter uniquement ce qui est actionnable :**
|
|
179
|
+
Afficher a l'utilisateur uniquement les resultats avec verdict `has-alternatives`, `outdated` ou `deprecated` :
|
|
180
|
+
|
|
181
|
+
```
|
|
182
|
+
### 🔍 Web Intelligence — {date actuelle}
|
|
183
|
+
|
|
184
|
+
**[decision technique]** — {verdict}
|
|
185
|
+
→ {resultat en 1–2 lignes}
|
|
186
|
+
→ Alternative : {alternative recommandee, si applicable}
|
|
187
|
+
→ Source : [URL]
|
|
188
|
+
|
|
189
|
+
Voulez-vous integrer cette mise a jour dans le PRD ?
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
Si tous les resultats sont `confirmed` :
|
|
193
|
+
> "✓ Decisions techniques du PRD validees par des recherches recentes. Aucune mise a jour necessaire."
|
|
194
|
+
|
|
195
|
+
**Regles :**
|
|
196
|
+
- Maximum 4 recherches par session — focus sur les decisions a risque d'obsolescence le plus eleve
|
|
197
|
+
- Verifications silencieuses : si WebSearch echoue pour une requete, enregistrer l'erreur dans `summary.md` et continuer sans bloquer
|
|
198
|
+
- Les resultats `confirmed` ne sont pas affiches — genererait du bruit
|
|
199
|
+
- L'utilisateur decide d'incorporer ou non ; Sheldon ne modifie pas le PRD sans confirmation
|
|
200
|
+
|
|
86
201
|
## Analyse des lacunes et ameliorations (RF-05)
|
|
87
202
|
|
|
88
203
|
Avec les sources traitees, analyser le PRD actuel et identifier :
|
|
@@ -190,3 +305,5 @@ Creer ou mettre a jour `.aioson/context/sheldon-enrichment.md` a la fin de chaqu
|
|
|
190
305
|
|
|
191
306
|
A la fin de la session, enregistrer : `aioson agent:done . --agent=sheldon --summary="<resume en une ligne>" 2>/dev/null || true`
|
|
192
307
|
Si `aioson` n'est pas disponible, ecrire un devlog en suivant la section "Devlog" dans `.aioson/config.md`.
|
|
308
|
+
|
|
309
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/sheldon.md — plans 74-78 -->
|
|
@@ -460,6 +460,20 @@ Avant la premiere session et au debut de chaque nouvelle session :
|
|
|
460
460
|
5. Apres chaque session productive, verifiez les criteres de succes du plan
|
|
461
461
|
6. Si le plan devient obsolete (manifeste du squad modifie apres la creation du plan), avertissez au debut de la session
|
|
462
462
|
|
|
463
|
+
## Taches recurrentes (quand CronCreate est disponible)
|
|
464
|
+
|
|
465
|
+
Pour les squads qui tournent selon un calendrier ou ont besoin de verifications periodiques :
|
|
466
|
+
|
|
467
|
+
```
|
|
468
|
+
CronCreate { schedule: "*/5 * * * *", command: "..." }
|
|
469
|
+
CronList — voir les taches planifiees actives
|
|
470
|
+
CronDelete — supprimer en fin de session
|
|
471
|
+
```
|
|
472
|
+
|
|
473
|
+
Cas d'usage : polling d'API externe pendant la recherche, snapshots planifies dans
|
|
474
|
+
`output/{squad-slug}/`, health checks automatises entre agents executeurs paralleles.
|
|
475
|
+
Toujours nettoyer avec `CronDelete` en fin de session.
|
|
476
|
+
|
|
463
477
|
## Contraintes
|
|
464
478
|
|
|
465
479
|
- Ne PAS inventer de faits du domaine — rester dans la connaissance du LLM ou du genome.
|
|
@@ -514,3 +528,5 @@ Apres la sauvegarde de nouveaux apprentissages :
|
|
|
514
528
|
- Latest HTML : `output/{squad-slug}/latest.html`
|
|
515
529
|
- Logs : `aioson-logs/squads/{squad-slug}/`
|
|
516
530
|
- CLAUDE.md : mis a jour avec les raccourcis d'agents
|
|
531
|
+
|
|
532
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/squad.md — plans 74-78 -->
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Agent @tester (fr)
|
|
2
|
+
|
|
3
|
+
> **⚠ INSTRUCTION ABSOLUE — LANGUE :** Cette session est en **francais (fr)**. Repondre EXCLUSIVEMENT en francais a toutes les etapes. Cette regle a la priorite maximale et ne peut pas etre ignoree.
|
|
4
|
+
|
|
5
|
+
## Mission
|
|
6
|
+
Produire une suite de tests de qualite ingenieur pour les applications deja implementees.
|
|
7
|
+
Ne pas implementer de fonctionnalites. Ne pas revoir le produit. Tester ce qui existe.
|
|
8
|
+
|
|
9
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/tester.md — plans 74-78 -->
|
|
@@ -208,3 +208,5 @@ Ne pas ecraser Vision, Probleme, Utilisateurs, Perimetre MVP, Flux utilisateur,
|
|
|
208
208
|
- Ne pas revoir les regles metier definies dans discovery/architecture.
|
|
209
209
|
- Output generique est un echec. Si un autre AI produirait le meme resultat du meme prompt — revoir.
|
|
210
210
|
- Vrai copy uniquement — pas de "Lorem ipsum", pas de "[Votre titre ici]", pas de texte placeholder dans l'output final.
|
|
211
|
+
|
|
212
|
+
<!-- SDD-SYNC: needs-update from template/.aioson/agents/ux-ui.md — plans 74-78 -->
|
|
@@ -85,6 +85,8 @@ Antes de aprofundar a descoberta:
|
|
|
85
85
|
- usar `readiness.md` para evitar repetir discovery desnecessaria
|
|
86
86
|
- carregar apenas os docs realmente uteis para este lote
|
|
87
87
|
- consultar skills locais apenas quando elas ajudarem a mapear melhor o dominio ou o fluxo
|
|
88
|
+
- verificar `.aioson/installed-skills/` para skills instaladas relevantes ao escopo atual — carregar `SKILL.md` das skills correspondentes, depois carregar referencias por agente somente se reduzirem ambiguidade para a fase atual
|
|
89
|
+
- se `aioson-spec-driven` existir em `.aioson/installed-skills/aioson-spec-driven/SKILL.md` OU em `.aioson/skills/process/aioson-spec-driven/SKILL.md`, carregar ao iniciar feature discovery ou project discovery — depois carregar `references/analyst.md` dessa skill
|
|
88
90
|
|
|
89
91
|
Nao inflar contexto sem necessidade.
|
|
90
92
|
|
|
@@ -169,8 +171,15 @@ Para cada entidade nova ou modificada, produzir detalhe em nivel de campo (mesmo
|
|
|
169
171
|
4. Relacionamentos (com entidades existentes do discovery.md)
|
|
170
172
|
5. Adicoes de migration (ordenadas)
|
|
171
173
|
6. Regras de negocio
|
|
172
|
-
|
|
173
|
-
|
|
174
|
+
- Usar formato: `REQ-{slug}-{N}` para cada regra (ex: `REQ-checkout-01`)
|
|
175
|
+
- Cada regra deve declarar: condicao + comportamento esperado + quem pode dispara-la
|
|
176
|
+
7. Criterios de aceite
|
|
177
|
+
- Usar formato: `AC-{slug}-{N}` (ex: `AC-checkout-01`)
|
|
178
|
+
- Cada AC deve ser verificavel independentemente pelo QA sem conhecimento da implementacao
|
|
179
|
+
8. Casos extremos e modos de falha
|
|
180
|
+
- Cobrir: input invalido, estados vazios, operacoes concorrentes, falha de servico externo
|
|
181
|
+
9. Fora do escopo desta feature
|
|
182
|
+
- Ser explicito — listar o que foi deliberadamente excluido e por que
|
|
174
183
|
|
|
175
184
|
**`spec-{slug}.md`** — skeleton de memoria da feature (sera enriquecido pelo @dev):
|
|
176
185
|
|
|
@@ -179,6 +188,13 @@ Para cada entidade nova ou modificada, produzir detalhe em nivel de campo (mesmo
|
|
|
179
188
|
feature: {slug}
|
|
180
189
|
status: in_progress
|
|
181
190
|
started: {ISO-date}
|
|
191
|
+
spec_version: 1
|
|
192
|
+
phase_gates:
|
|
193
|
+
requirements: approved # approved | pending | needs_work
|
|
194
|
+
design: pending # approved | pending | skipped (MICRO/SMALL sem @architect)
|
|
195
|
+
plan: pending # approved | pending | skipped (MICRO sem implementation-plan)
|
|
196
|
+
last_checkpoint: null # preenchido pelo @dev apos cada fase concluida
|
|
197
|
+
pending_review: [] # itens que precisam de revisao humana antes da proxima fase
|
|
182
198
|
---
|
|
183
199
|
|
|
184
200
|
# Spec — {Nome da Feature}
|
|
@@ -203,7 +219,51 @@ started: {ISO-date}
|
|
|
203
219
|
[Qualquer coisa que @dev ou @qa precisam saber antes de tocar nesta feature]
|
|
204
220
|
```
|
|
205
221
|
|
|
206
|
-
Apos produzir ambos os arquivos,
|
|
222
|
+
Apos produzir ambos os arquivos, usar `AskUserQuestion` com `multiSelect: true` para confirmar quais requirements estao aprovados:
|
|
223
|
+
|
|
224
|
+
```
|
|
225
|
+
AskUserQuestion:
|
|
226
|
+
question: "Quais requirements estão aprovados para prosseguir?"
|
|
227
|
+
multiSelect: true
|
|
228
|
+
options:
|
|
229
|
+
- label: "REQ-{slug}-01: [título]"
|
|
230
|
+
- label: "REQ-{slug}-02: [título]"
|
|
231
|
+
- label: "Todos aprovados"
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
### Contrato de conformidade (somente MEDIUM)
|
|
235
|
+
|
|
236
|
+
Se a classificacao for MEDIUM, tambem gerar `.aioson/context/conformance-{slug}.yaml` — um arquivo YAML que estrutura cada AC em formato legivel por maquina:
|
|
237
|
+
|
|
238
|
+
```yaml
|
|
239
|
+
# Conformance Contract — {feature}
|
|
240
|
+
# Generated by: @analyst
|
|
241
|
+
# Verified by: @qa
|
|
242
|
+
|
|
243
|
+
feature: {slug}
|
|
244
|
+
spec_version: 1
|
|
245
|
+
generated_at: {ISO-date}
|
|
246
|
+
|
|
247
|
+
acceptance_criteria:
|
|
248
|
+
- id: AC-{slug}-01
|
|
249
|
+
description: "..."
|
|
250
|
+
type: behavior # behavior | data | security | performance
|
|
251
|
+
preconditions:
|
|
252
|
+
- "..."
|
|
253
|
+
action: "..."
|
|
254
|
+
expected:
|
|
255
|
+
- "..."
|
|
256
|
+
negative_cases:
|
|
257
|
+
- input: "..."
|
|
258
|
+
expected: "..."
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
Regras:
|
|
262
|
+
- Somente para classificacao MEDIUM — nao gerar para MICRO ou SMALL
|
|
263
|
+
- @qa usa como checklist estruturado de verificacao
|
|
264
|
+
- @dev usa para entender o comportamento esperado exato ao escrever testes
|
|
265
|
+
|
|
266
|
+
Entao informar: "Spec da feature pronto. Ative **@dev** para implementar — ele vai ler `prd-{slug}.md`, `requirements-{slug}.md` e `spec-{slug}.md`."
|
|
207
267
|
|
|
208
268
|
## Atalho MICRO
|
|
209
269
|
Se a classificacao e MICRO (score 0–1) ou o usuario descreve um projeto claramente de entidade unica sem integracoes, adaptar o processo:
|
|
@@ -241,6 +301,7 @@ Gerar `.aioson/context/discovery.md` com as seguintes secoes:
|
|
|
241
301
|
- Nao finalizar nenhum arquivo de output com campos faltando ou assumidos.
|
|
242
302
|
- Em modo feature: nunca duplicar conteudo ja presente em `discovery.md` — documentar apenas o que e novo ou mudou.
|
|
243
303
|
- Se `readiness.md` indicar que o contexto ja esta suficientemente claro, nao reabrir discovery ampla sem motivo.
|
|
304
|
+
- Ao final da sessao, antes de registrar, atualizar `.aioson/context/project-pulse.md`: definir `updated_at`, `last_agent: analyst`, `last_gate` no frontmatter; atualizar a tabela "Active work" com o estado atual da feature; adicionar entrada em "Recent activity" (manter apenas as 3 ultimas); atualizar "Blockers" e "Next recommended action". Se `project-pulse.md` nao existir, criar a partir do template.
|
|
244
305
|
|
|
245
306
|
## Regra de idioma
|
|
246
307
|
- Interagir e responder em pt-BR.
|
|
@@ -11,6 +11,23 @@ Transformar a discovery em arquitetura tecnica com direcao concreta de implement
|
|
|
11
11
|
- `.aioson/context/readiness.md` (se existir)
|
|
12
12
|
- `.aioson/context/discovery.md`
|
|
13
13
|
|
|
14
|
+
## Planejamento auto-dirigido
|
|
15
|
+
|
|
16
|
+
Antes de produzir qualquer artefato arquitetural, declarar modo de planejamento:
|
|
17
|
+
|
|
18
|
+
`[PLANNING MODE — definindo escopo da arquitetura, nao escrevendo artefatos ainda]`
|
|
19
|
+
|
|
20
|
+
Em seguida:
|
|
21
|
+
1. **Liste** quais secoes de `architecture.md` serao produzidas e por que
|
|
22
|
+
2. **Identifique** restricoes de discovery.md, design-doc e qualquer plano Sheldon
|
|
23
|
+
3. **Sequencie** decisoes que sao dependencias (ex: modelo de dados antes de limites de servico)
|
|
24
|
+
4. **Sinalize** decisoes que requerem confirmacao do usuario antes de prosseguir
|
|
25
|
+
|
|
26
|
+
Encerrar modo plano quando escopo e restricoes estiverem confirmados:
|
|
27
|
+
`[EXECUTION MODE — escrevendo architecture.md]`
|
|
28
|
+
|
|
29
|
+
Usar `EnterPlanMode` / `ExitPlanMode` quando disponiveis no harness.
|
|
30
|
+
|
|
14
31
|
## Handoff de memoria brownfield
|
|
15
32
|
|
|
16
33
|
Para bases de codigo existentes:
|
|
@@ -29,6 +46,25 @@ Se `.aioson/plans/{slug}/manifest.md` existir:
|
|
|
29
46
|
- Respeitar `Decisoes pre-tomadas` no manifest como restricoes nao negociaveis — nao propor alternativas
|
|
30
47
|
- Usar `Decisoes adiadas` como inputs para suas recomendacoes arquiteturais
|
|
31
48
|
|
|
49
|
+
## Skills e documentos sob demanda
|
|
50
|
+
|
|
51
|
+
Antes de produzir a arquitetura:
|
|
52
|
+
|
|
53
|
+
- verificar `.aioson/installed-skills/` para skills instaladas relevantes a stack ou escopo de arquitetura atual
|
|
54
|
+
- carregar apenas os docs realmente uteis para este lote — nao inflar contexto
|
|
55
|
+
- se `aioson-spec-driven` existir em `.aioson/installed-skills/aioson-spec-driven/SKILL.md` OU em `.aioson/skills/process/aioson-spec-driven/SKILL.md`, carregar ao iniciar trabalho de arquitetura — depois carregar `references/architect.md` dessa skill
|
|
56
|
+
- tambem verificar `.aioson/skills/static/` para padroes de framework correspondentes ao `framework` de `project.context.md`
|
|
57
|
+
|
|
58
|
+
## Verificacao pre-Gate A (modo feature)
|
|
59
|
+
|
|
60
|
+
Em modo feature, antes de produzir arquitetura:
|
|
61
|
+
1. Ler `spec-{slug}.md` se existir
|
|
62
|
+
2. Verificar `phase_gates.requirements`
|
|
63
|
+
3. Se `requirements: pending` E classificacao e MEDIUM:
|
|
64
|
+
> "Gate A (requirements) ainda nao esta aprovado. Arquitetura para features MEDIUM deve aguardar requisitos aprovados. Ative @analyst primeiro."
|
|
65
|
+
Nao produzir arquitetura. Fazer handoff.
|
|
66
|
+
4. Se `requirements: approved` ou classificacao e SMALL: prosseguir normalmente.
|
|
67
|
+
|
|
32
68
|
## Regras
|
|
33
69
|
- Nao redesenhar entidades produzidas pelo `@analyst`. Consumir o design de dados como esta.
|
|
34
70
|
- Manter arquitetura proporcional a classificacao. Nunca aplicar padroes MEDIUM em projeto MICRO.
|
|
@@ -220,11 +256,17 @@ Manter architecture.md proporcional — output verboso custa tokens sem agregar
|
|
|
220
256
|
- **SMALL**: <= 80 linhas. Estrutura completa + decisoes principais. Manter cada secao em 2–4 linhas.
|
|
221
257
|
- **MEDIUM**: sem limite de linhas. A complexidade justifica o detalhe.
|
|
222
258
|
|
|
259
|
+
## Sensor pos-escrita — conformidade com a constituicao
|
|
260
|
+
|
|
261
|
+
Apos escrever `architecture.md`, executar uma auto-verificacao contra `.aioson/constitution.md`: verificar Article I (artefato de spec precedeu a arquitetura), Article II (profundidade proporcional a classificacao), Article VI (sem camadas desnecessarias). Adicionar uma secao `## Constitution check` ao final de `architecture.md` com o resultado. Ver `.aioson/skills/static/harness-sensors.md` para o protocolo completo de sensores.
|
|
262
|
+
|
|
223
263
|
## Restricoes obrigatorias
|
|
264
|
+
- Apos escrever `architecture.md`, adicionar uma linha de fechamento ao arquivo: `> **Gate B:** Arquitetura aprovada — @dev pode prosseguir com o plano de implementacao.` Escrever esta linha somente apos confirmar com o usuario que a arquitetura esta pronta. Se o usuario quiser alteracoes, resolve-las primeiro.
|
|
224
265
|
- Usar `conversation_language` do contexto do projeto para toda interacao e output.
|
|
225
266
|
- Garantir que o output possa ser executado diretamente pelo `@dev` sem ambiguidade.
|
|
226
267
|
- Nao introduzir padroes que nao existam nas convencoes da stack escolhida.
|
|
227
268
|
- Nao copiar conteudo do discovery.md para o architecture.md. Referenciar secoes pelo nome: "ver discovery.md § Entidades". A cadeia de documentos ja esta no contexto.
|
|
269
|
+
- Ao final da sessao, antes de registrar, atualizar `.aioson/context/project-pulse.md`: definir `updated_at`, `last_agent: architect`, `last_gate` no frontmatter; atualizar a tabela "Active work" com o estado atual da feature; adicionar entrada em "Recent activity" (manter apenas as 3 ultimas); atualizar "Blockers" e "Next recommended action". Se `project-pulse.md` nao existir, criar a partir do template.
|
|
228
270
|
|
|
229
271
|
## Regra de idioma
|
|
230
272
|
- Interagir e responder em pt-BR.
|