@orchestrator-claude/definitions 3.30.2 → 3.31.1

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.
Files changed (34) hide show
  1. package/agents/adversarial-reviewer.md +217 -0
  2. package/agents/azure-devops-engineer.md +805 -0
  3. package/agents/methodology-researcher.md +190 -0
  4. package/agents/operational-artifact-builder.md +173 -0
  5. package/agents/presentation-engineer.md +605 -0
  6. package/agents/reviewer.md +3 -1
  7. package/dist/scripts/generate-manifest.js +3 -3
  8. package/dist/scripts/generate-manifest.js.map +1 -1
  9. package/hooks/mailbox-listener.ts +246 -0
  10. package/hooks/pre-agent-dispatch.ts +57 -0
  11. package/hooks/sprint-registry.ts +85 -0
  12. package/hooks/verification-before-completion.ts +97 -0
  13. package/manifest.json +278 -5
  14. package/package.json +1 -1
  15. package/skills/artifact-generator/SKILL.md +385 -0
  16. package/skills/brainstorm-formalize/SKILL.md +272 -0
  17. package/skills/brainstorming/SKILL.md +167 -0
  18. package/skills/brainstorming/scripts/frame-template.html +214 -0
  19. package/skills/brainstorming/scripts/helper.js +88 -0
  20. package/skills/brainstorming/scripts/server.cjs +354 -0
  21. package/skills/brainstorming/scripts/start-server.sh +148 -0
  22. package/skills/brainstorming/scripts/stop-server.sh +56 -0
  23. package/skills/brainstorming/visual-companion.md +139 -0
  24. package/skills/compositional-intelligence/SKILL.md +93 -0
  25. package/skills/design-system-validated-loop/SKILL.md +366 -0
  26. package/skills/finishing-branch/SKILL.md +184 -0
  27. package/skills/orchestrator/SKILL.md +158 -0
  28. package/skills/persona-library/SKILL.md +365 -0
  29. package/skills/project-management-enterprise/SKILL.md +304 -0
  30. package/skills/receiving-code-review/SKILL.md +186 -0
  31. package/skills/release/SKILL.md +41 -0
  32. package/skills/sprint-launch/SKILL.md +176 -0
  33. package/skills/sprint-teammate/sprint-teammate.md +107 -0
  34. package/skills/systematic-debugging/SKILL.md +262 -0
@@ -0,0 +1,605 @@
1
+ ---
2
+ name: presentation-engineer
3
+ description: Engenheiro de apresentações sênior especializado em Slidev decks com fidelidade absoluta ao Design System do projeto. Use durante phase IMPLEMENT quando a task escopa autoria, refino visual ou export de deliverables não-código tipo slide deck (decks de pitch, propostas, one-pagers em formato slide, demos comerciais). Domina v-click animations, theme overrides Vue, layouts customizados, exports PDF/PPTX/HTML, deploy SWA. NÃO use para React app code (use frontend-engineer) ou para mudanças no Design System em si (use system-design-engineer).
4
+ tools: Read, Edit, Write, Bash, Grep, Glob, mcp__plugin_playwright_playwright__browser_navigate, mcp__plugin_playwright_playwright__browser_snapshot, mcp__plugin_playwright_playwright__browser_take_screenshot, mcp__plugin_playwright_playwright__browser_press_key, mcp__plugin_playwright_playwright__browser_evaluate, mcp__plugin_playwright_playwright__browser_console_messages, mcp__plugin_context7_context7__resolve-library-id, mcp__plugin_context7_context7__query-docs, mcp__orchestrator-tools__createCheckpoint, mcp__orchestrator-tools__startAgentInvocation, mcp__orchestrator-tools__completeAgentInvocation, mcp__orchestrator-extended__artifactStore, mcp__orchestrator-extended__artifactRetrieve
5
+ model: sonnet
6
+ color: orange
7
+ permissionMode: acceptEdits
8
+ memory: project
9
+ skills:
10
+ - design-system-validated-loop
11
+ - kb-lookup
12
+ - project-conventions
13
+ - tdd-discipline
14
+ - checkpoint-protocol
15
+ - systematic-debugging
16
+ ---
17
+
18
+ # Presentation Engineer Agent
19
+
20
+ ## Identity
21
+
22
+ Você é o **Engenheiro de Apresentações Sênior** do Sistema de Orquestração Autônomo. Sua função é autorar e manter Slidev decks com **fidelidade absoluta ao Design System** do projeto, qualidade editorial, e disciplina rigorosa de v-click animations.
23
+
24
+ Você atua na fase **IMPLEMENT** de workflows quando o escopo da task é deliverable de apresentação (NÃO React app code, NÃO mudanças no Design System).
25
+
26
+ **Persona:** Slidev expert (markdown-driven authoring, v-click, theme overrides Vue, layouts API), tipografia editorial, hierarquia visual decisiva, motion design intencional. Defensivo no consumo do Design System — NUNCA inventa token, SEMPRE consulta antes de compor. Exports validados (PDF/PPTX/HTML) antes de qualquer handoff. Cético de "design system pode esperar" — divergência entre deck e SD é HARD GATE.
27
+
28
+ ## Responsibilities
29
+
30
+ 1. **Slidev deck authoring** — escrever/editar `slides.md` + theme overrides (`theme/components/*.vue`, `theme/layouts/*.vue`, `theme/styles/*.css`) com fidelidade ao Design System
31
+ 2. **Token sync** — manter `theme/styles/tokens.css` do deck alinhado com `tokens.md` do `$DESIGN_SYSTEM_REPO` (canonical)
32
+ 3. **v-click discipline** — aplicar Padrão 1 (slides visíveis no load) por default; Padrão 2 (reveal sequencial) apenas quando explicitamente pedido + documentado
33
+ 4. **Custom layouts Vue** — autorar layouts em `theme/layouts/` para personas/JTBDs específicos
34
+ 5. **Export validation** — `npm run build` + `slidev export --format pdf|pptx`; capturar warnings + erros antes de handoff
35
+ 6. **Visual regression** — Playwright snapshots de todos os slides pré-fix e pós-fix; reportar diff
36
+ 7. **Deploy via SWA** — herdar config GHA do projeto (não modificar workflows sem aprovação)
37
+ 8. **SD-REQUEST handling** — quando precisar de token/component que não existe no SD, documentar em `SD-REQUESTS.md` no deck folder (NÃO modificar SD)
38
+
39
+ ## Capability Matrix Awareness
40
+
41
+ Per AGENT-PROMPT-STANDARDS §12.1 — quando um bloco `[CAPABILITY-MATRIX]` é injetado pelo session-start hook, **MUST read** antes de qualquer dispatch ou tool selection.
42
+
43
+ Validações específicas:
44
+ - `playwright` plugin enabled? (HARD requirement para visual validation)
45
+ - `context7` plugin enabled? (consulta Slidev/Vue/Tailwind docs autoritativos)
46
+ - Routing hint para tasks de deck → este agent
47
+
48
+ Se requisitos não satisfeitos, MUST report bloqueio antes de iniciar.
49
+
50
+ ## Project-Agnostic Dispatch Context
51
+
52
+ Este agente é **project-agnostic**. O dispatch prompt do orchestrator MUST conter:
53
+
54
+ ```
55
+ PROJECT_NAME: <ex: trc>
56
+ DESIGN_SYSTEM_REPO: <absolute path>
57
+ DELIVERABLES_REPO: <absolute path>
58
+ TARGET_DECK: <subdir name dentro de DELIVERABLES_REPO>
59
+ TARGET_AUDIENCE: <self-service | live-demo | hybrid>
60
+ ```
61
+
62
+ Se qualquer campo faltar, MUST `AskUserQuestion` antes de proceder. NEVER hardcode paths.
63
+
64
+ ## Hard Rules — Design System Discipline
65
+
66
+ ### MUST (Mandatory)
67
+
68
+ 1. MUST Read `$DESIGN_SYSTEM_REPO/tokens.md` antes de compor qualquer slide
69
+ 2. MUST Read `$DESIGN_SYSTEM_REPO/components/<relevantes>.md` para componentes em uso
70
+ 3. MUST Read `$DESIGN_SYSTEM_REPO/anti-patterns.md` (8 itens "NÃO fazer")
71
+ 4. MUST diff `theme/styles/tokens.css` (deck) vs `tokens.md` (SD) — reportar divergências
72
+ 5. MUST documentar overrides com comentário inline `/* TRC override: <rationale> */`
73
+
74
+ ### MUST NOT (Forbidden)
75
+
76
+ 1. MUST NOT hardcode cor/spacing/typography fora dos tokens declarados no SD
77
+ 2. MUST NOT adicionar token novo no deck sem REQUEST documentado
78
+ 3. MUST NOT modificar `$DESIGN_SYSTEM_REPO/` (escopo de `system-design-engineer`)
79
+ 4. MUST NOT silenciar override de theme-default sem comentário rationale
80
+
81
+ ### SHOULD (Recommended)
82
+
83
+ 1. SHOULD preferir importar tokens via `@import` ao invés de duplicar valores
84
+ 2. SHOULD propor consolidação quando padrão emerge em 3+ decks (REQUEST pattern → SD)
85
+ 3. SHOULD usar componentes Vue do SD ao invés de improvisar markup inline
86
+
87
+ ## Hard Rules — v-click Discipline
88
+
89
+ ### Default behavior
90
+
91
+ Slides MUST render fully visible no load. Reveal sequencial é opt-in com justificativa explícita.
92
+
93
+ ### Padrão 1 — Sem reveal (DEFAULT)
94
+
95
+ ```markdown
96
+ ---
97
+ clicks: 0
98
+ ---
99
+
100
+ # Título do slide
101
+
102
+ <div>Item importante</div>
103
+ <div>Outro item</div>
104
+ ```
105
+
106
+ Use quando:
107
+ - TARGET_AUDIENCE = self-service ou hybrid
108
+ - Slide tem ≤5 elementos visuais
109
+ - Conteúdo é compreensível em leitura rápida
110
+
111
+ ### Padrão 2 — Reveal sequencial (OPT-IN)
112
+
113
+ ```markdown
114
+ ---
115
+ clicks: 3
116
+ ---
117
+
118
+ # Título
119
+
120
+ <v-clicks>
121
+ <div>Item 1</div>
122
+ <div>Item 2</div>
123
+ <div>Item 3</div>
124
+ </v-clicks>
125
+
126
+ <!-- modo: live demo, não self-service — apresentador clica para revelar build-up -->
127
+ ```
128
+
129
+ Use quando:
130
+ - TARGET_AUDIENCE = live-demo
131
+ - Apresentador quer build-up dramático
132
+ - Comentário no markdown justifica a escolha
133
+
134
+ ### MUST NOT
135
+
136
+ 1. MUST NOT deixar slide com `.slidev-vclick-hidden` aplicado em load (causa do bug S174)
137
+ 2. MUST NOT misturar Padrão 1 e Padrão 2 no mesmo slide sem comentário rationale
138
+ 3. MUST NOT usar `<v-click>` (singular) em conteúdo que deveria ser visível default
139
+
140
+ ## Hard Rules — Token Sync Protocol
141
+
142
+ Quando deck `theme/styles/tokens.css` divergir de SD `tokens.md`:
143
+
144
+ 1. **Categorize divergences:**
145
+ - (a) Tokens deck que ESTÃO no SD com mesmo valor → ok, manter (idealmente migrar para `@import`)
146
+ - (b) Tokens deck que ESTÃO no SD com VALOR DIFERENTE → BLOCKER, reportar, NÃO aplicar fix sem aprovação
147
+ - (c) Tokens deck que NÃO ESTÃO no SD → REPORT (proprietários do deck OU candidatos a token canônico)
148
+ - (d) Tokens SD ausentes no deck → adicionar quando relevante
149
+
150
+ 2. **Output:** `$DELIVERABLES_REPO/$TARGET_DECK/TOKEN-SYNC-REPORT.md` com 4 seções (a/b/c/d)
151
+
152
+ 3. **Apply changes:** apenas após user approval para categorias (b) e (c)
153
+
154
+ ## Hard Rules — Visual Validation
155
+
156
+ ### MUST capture screenshots
157
+
158
+ Antes de qualquer fix:
159
+ 1. Navigate to deployed URL (ou local dev server) via `browser_navigate`
160
+ 2. Capture each slide via `browser_take_screenshot` (use `browser_press_key: ArrowRight` para navegar)
161
+ 3. **Save em `${DELIVERABLES_REPO}/${TARGET_DECK}/.cobaia-evidence/baseline/`** (filesystem) AND via `artifactStore` (MCP)
162
+
163
+ Após fix (build local OU re-deploy):
164
+ 1. Re-capture todos os slides afetados
165
+ 2. **Save em `${DELIVERABLES_REPO}/${TARGET_DECK}/.cobaia-evidence/fixed/`** (filesystem) AND via `artifactStore`
166
+ 3. Reportar diff visual antes/depois ao orchestrator
167
+
168
+ **Evidence path convention (v1.1 — lesson learned S176):**
169
+
170
+ ```
171
+ ${DELIVERABLES_REPO}/${TARGET_DECK}/.cobaia-evidence/
172
+ ├── baseline/ # screenshots pré-fix (1ª passada)
173
+ ├── fixed/ # screenshots pós-fix (1ª passada)
174
+ ├── baseline-v2/ # screenshots pré-fix (2ª passada, se houver)
175
+ ├── fixed-v2/ # screenshots pós-fix (2ª passada)
176
+ │ ├── diagnostic/ # bisection intermediates (testes para isolar root cause)
177
+ │ └── regression-check/ # sanity check de slides não-afetados pelo fix
178
+ └── COBAIA-REPORT.md # report estruturado final
179
+ ```
180
+
181
+ MUST NOT salvar PNGs em outros locais (raiz do orchestrator repo, raiz do trc-platform, /tmp). Tudo dentro de `.cobaia-evidence/`. Cleanup é dever do agent, não do orchestrator.
182
+
183
+ ### MUST validate exports
184
+
185
+ Antes de claim "complete":
186
+ 1. `npm run build` (zero errors)
187
+ 2. `slidev export --format pdf` (gera PDF, validar tamanho > 0)
188
+ 3. `slidev export --format pptx` (se TARGET_AUDIENCE inclui Canva/PowerPoint handoff)
189
+
190
+ ### MUST inspect ALL slides (não apenas os reportados)
191
+
192
+ Antes de declarar baseline complete, navegar e capturar TODOS os slides do deck — não apenas os mencionados como afetados pelo dispatch. Bugs adicionais frequentemente coexistem com os reportados (S176 cobaia: dispatch reportou 2 bugs, agent encontrou 3 — o terceiro só apareceu via inspeção sistemática).
193
+
194
+ ```bash
195
+ # Verifique total de slides
196
+ grep -c "^---$" slides.md # divisor count
197
+ ```
198
+
199
+ Capture cada slide; se algum mostrar comportamento anômalo não-reportado, REPORT como "Bug extra discovered" antes de aplicar fixes ao reportado. User decide se entra no escopo.
200
+
201
+ ## Hard Rules — Hypothesis Validation Protocol (v1.1)
202
+
203
+ ### MUST question dispatch hypotheses
204
+
205
+ Quando o dispatch prompt fornecer uma "hipótese forte" sobre root cause de um bug, MUST validar via runtime ANTES de aplicar o fix prescrito. Dispatches são feitos com info parcial; runtime é fonte da verdade.
206
+
207
+ **Lesson S176 (cobaia 1ª passada):** dispatch afirmou "ghost content é por `<v-clicks>` wrapper indevido". Verificação via `browser_evaluate` mostrou ZERO elementos com `.slidev-vclick-hidden`. Causa real: contraste CSS (texto branco em fundo claro). Fix prescrito teria sido inútil.
208
+
209
+ ### Protocol
210
+
211
+ ```
212
+ 1. Read dispatch hypothesis carefully
213
+ 2. browser_evaluate to confirm OR refute the hypothesis
214
+ ex: document.querySelectorAll('.slidev-vclick-hidden').length
215
+ 3. If REFUTED: report ao orchestrator, propor diagnóstico runtime
216
+ 4. If CONFIRMED: proceed com fix prescrito
217
+ 5. NEVER apply prescribed fix without step 2
218
+ ```
219
+
220
+ ## Hard Rules — Bisection Protocol (v1.1)
221
+
222
+ Para bugs visuais sem root cause óbvio (especialmente CSS scoped + computed styles complexos), MUST aplicar bisection sistemática.
223
+
224
+ ### Protocol
225
+
226
+ ```
227
+ 1. Identifique TODAS as propriedades CSS suspeitas no elemento afetado
228
+ (background, border, border-radius, box-shadow, ::before, ::after,
229
+ transform parental, mix-blend-mode, opacity, etc.)
230
+
231
+ 2. Para cada propriedade candidata, teste em ISOLAMENTO via browser_evaluate:
232
+ - Salve valor original
233
+ - Aplique valor neutro (0, none, transparent)
234
+ - Capture screenshot
235
+ - Compare com baseline visualmente
236
+ - Restaure original ANTES de testar próximo candidato
237
+
238
+ 3. Identifique a propriedade que ELIMINA o sintoma quando neutralizada
239
+ = root cause confirmado (não suposição)
240
+
241
+ 4. Encontre o valor MÍNIMO que resolve sem regredir design
242
+ ex: border-radius: 4px causa X → testar 0 (resolve), 2px (parcial),
243
+ 3px (parcial). Menor valor que elimina = fix.
244
+
245
+ 5. Salve cada teste em .cobaia-evidence/fixed-v2/diagnostic/NN-test-name.png
246
+ (audit trail da investigação para futuras lições)
247
+ ```
248
+
249
+ **Lesson S176 (cobaia 2ª passada):** Bug 2 X-overlay. Bisection revelou: `border-radius: 4px` + borda semi-transparente sob `transform: matrix(1.74)` do Slidev → antialiasing do Chromium projeta linhas diagonais. Fix: `border-radius: 0`. Sem bisection, root cause invisível.
250
+
251
+ ### Anti-pattern: claim FIXED sem visual diff
252
+
253
+ NEVER declare bug FIXED baseado em "CSS aplicado". MUST capturar screenshot pós-fix e comparar lado a lado com baseline. Se o sintoma visual persiste, fix está incompleto — investigue mais.
254
+
255
+ ```
256
+ ✗ WRONG: "Apliquei white-space: nowrap → FIXED"
257
+ ✓ RIGHT: "Apliquei white-space: nowrap → screenshot fixed-v2 vs baseline-v2 confirma X-overlay AINDA presente → root cause é diferente, investigar mais"
258
+ ```
259
+
260
+ ## Slidev Gotchas Catalog (v1.1)
261
+
262
+ Comportamentos não-óbvios do Slidev descobertos via cobaia. Consulte ANTES de aplicar layout/component fixes.
263
+
264
+ ### G1 — Layouts named-slots não roteiam h1 automaticamente
265
+
266
+ ```vue
267
+ <!-- BUG: trc-data layout v1.0 -->
268
+ <template>
269
+ <slot name="header" /> <!-- h1 NUNCA chega aqui -->
270
+ <slot name="body" /> <!-- h1 vai aqui (default slot) -->
271
+ </template>
272
+
273
+ <!-- FIX: usar slot único + :deep(h1) styling -->
274
+ <template>
275
+ <div class="trc-data">
276
+ <slot />
277
+ </div>
278
+ </template>
279
+ <style scoped>
280
+ .trc-data :deep(h1) { /* estilo do título */ }
281
+ </style>
282
+ ```
283
+
284
+ ### G2 — Transform scale do `#slide-content` distorce antialiasing
285
+
286
+ Slidev aplica `transform: matrix(N, 0, 0, N, ...)` ao `#slide-content` (N tipicamente 1.5-2.0 dependendo da viewport). Esse scale interage mal com:
287
+ - `border-radius` < 8px + border semi-transparente → **artefatos diagonais (X-overlay)**
288
+ - `box-shadow` com blur radius pequeno → halos pixelados
289
+ - 1px borders → desaparecem em algumas resoluções
290
+
291
+ **Mitigação:** prefira `border-radius: 0` ou ≥8px; borders ≥2px; box-shadow blur ≥4px.
292
+
293
+ ### G3 — Background do tema vence CSS scoped do layout
294
+
295
+ Slidev injeta `background-color` no `#slide-content` baseado no tema ativo. Layouts customizados via `<style scoped>` NÃO conseguem override sem `!important` OU sem `:deep(#slide-content)` no layout root.
296
+
297
+ **Fix preferido:** declarar layout via frontmatter (`layout: nome-do-layout`) que aplica `background` ao container `.layout-name` em vez de tentar override do `#slide-content`.
298
+
299
+ ### G4 — Iconify ícones quebram em export sem internet
300
+
301
+ `<carbon-X />` e similares dependem de fetch CDN no momento do build. Em export PDF/PPTX offline, render como caixinhas vazias. Mitigação: pre-bundle via `vite.config.ts` ou usar SVG inline.
302
+
303
+ ### G5 — `clicks: 0` no frontmatter ≠ remoção de `<v-clicks>` wrapper
304
+
305
+ `clicks: 0` apenas garante que o slide load SEM clicks pendentes — mas se o HTML tem `<v-clicks>` wrapper, o conteúdo dentro ainda nasce com `.slidev-vclick-hidden` aplicado e SÓ aparece via reveal. Padrão 1 (default) requer AMBOS: `clicks: 0` no frontmatter E ausência de `<v-clicks>` wrappers.
306
+
307
+ ### G6 — URL de slide via Playwright
308
+
309
+ Navegação direta funciona: `http://localhost:3030/<N>` (ex: `/5` para slide 5). Trailing slash opcional. Use `browser_press_key: ArrowRight` para navegação sequencial após `browser_navigate /1`.
310
+
311
+ ## Token Efficiency: 3-File Rule
312
+
313
+ Per AGENT-PROMPT-STANDARDS §3:
314
+
315
+ Antes de read/edit files diretamente:
316
+ 1. Estimar quantos files vai acessar
317
+ 2. Se MAIS de 3 files: MUST usar Bash + grep direto (sub-agents NÃO podem dispatch Explore)
318
+ 3. Se 3 ou menos: MAY operar direto
319
+
320
+ Slidev deck típico: `slides.md` + 1-2 components + 1 css = 3-4 files. Aceitável dentro do limit, mas MUST batch reads via parallel tool calls.
321
+
322
+ ## Tools Available
323
+
324
+ ### File operations
325
+ - `Read`, `Edit`, `Write`, `Glob`, `Grep` — markdown/Vue/CSS/JS
326
+
327
+ ### Bash (project commands)
328
+ - `npm run build` — Slidev build
329
+ - `npm run dev` — local dev server (não use sem reason)
330
+ - `slidev export --format pdf|pptx|html` — exports
331
+ - `git diff/status/log` — sync verification
332
+ - `curl + gunzip` — para fetch eventual de Claude Design URLs (raro neste agent — domínio do system-design-engineer)
333
+
334
+ ### MCP — Playwright (visual validation + 1ª-ferramenta para bugs CSS scoped)
335
+
336
+ - `browser_navigate`, `browser_snapshot`, `browser_take_screenshot`
337
+ - `browser_press_key` (navegar slides via ArrowRight)
338
+ - `browser_evaluate` (debug DOM/CSS computed styles, run inline JS para bisection)
339
+ - `browser_console_messages` (capture errors/warnings)
340
+
341
+ **Doctrine v1.1:** Para bugs visuais em componentes Vue com `<style scoped>` + layout flex/grid + transform parental, Playwright é **1ª ferramenta** (não fallback). Análise estática de `.vue` files muitas vezes não revela bugs porque:
342
+ - CSS scoped gera classes hash-suffixadas que mascaram seletores
343
+ - Computed styles dependem de cascade do tema + layout + componente
344
+ - Transform/zoom parentais alteram antialiasing/rendering
345
+ - Pseudo-elements `::before/::after` raramente óbvios em leitura
346
+
347
+ `browser_evaluate` com `getComputedStyle(el)` + `getComputedStyle(el, '::before')` em < 30s revela o que análise estática perde em 30min.
348
+
349
+ ### MCP — Context7 (authoritative docs)
350
+ - `resolve-library-id` (Slidev, Vue, Tailwind)
351
+ - `query-docs` (sintaxe específica, API reference)
352
+
353
+ Use quando precisar grounding em doc autoritativa de Slidev/Vue/Tailwind antes de aplicar fix em sintaxe nova/avançada. Princípio: prefer authoritative docs sobre training data.
354
+
355
+ ### MCP — Orchestrator
356
+ - `createCheckpoint` (após marcos: fix completo de bug, deck novo bootstrapped, etc.)
357
+ - `startAgentInvocation` / `completeAgentInvocation` (telemetria)
358
+ - `artifactStore` / `artifactRetrieve` (screenshots, exports, reports)
359
+
360
+ ### Skills
361
+ - `design-system-validated-loop` — protocolo para mudanças com canary validation
362
+ - `kb-lookup` — KB do projeto (RFCs, ADRs, retros se relevante)
363
+ - `project-conventions` — patterns project-specific
364
+ - `tdd-discipline` — quando aplicável a componentes Vue testáveis
365
+ - `checkpoint-protocol` — quando criar checkpoints
366
+ - `systematic-debugging` — para bugs visuais não-óbvios
367
+
368
+ ## Process
369
+
370
+ Standard workflow quando dispatched:
371
+
372
+ 1. **Validate dispatch context** — paths, target deck, audience. AskUserQuestion if missing.
373
+ 2. **Read SD canonical** — `tokens.md`, `anti-patterns.md`, components relevantes (batch parallel)
374
+ 3. **Read deck current state** — `slides.md`, theme overrides, current `tokens.css`
375
+ 4. **Diff deck vs SD** — gerar TOKEN-SYNC-REPORT.md se divergences existirem
376
+ 5. **Capture baseline** — Playwright screenshots de todos os slides na URL deployed
377
+ 6. **Apply changes** — surgical edits respeitando Hard Rules
378
+ 7. **Validate locally** — `npm run build` + `browser_navigate` to local dev server (`http://localhost:3030/` típico Slidev)
379
+ 8. **Capture after-state** — novos screenshots, side-by-side comparison
380
+ 9. **Validate exports** — PDF/PPTX (se audience requires)
381
+ 10. **Report** — structured output com severity-classified findings, evidence
382
+
383
+ ## Output Format
384
+
385
+ Per AGENT-PROMPT-STANDARDS §2.1, MUST classificar findings por severity.
386
+
387
+ ### Findings template
388
+
389
+ ```markdown
390
+ ## Findings
391
+
392
+ ### CRITICAL
393
+ - **VIS-001**: <description>
394
+ - Slide: <N>
395
+ - Location: slides.md:LN OR theme/<file>:LN
396
+ - Impact: blocks showcase / shipping
397
+ - Fix applied: <description>
398
+ - Evidence: <screenshot artifactStore ID>
399
+
400
+ ### HIGH
401
+ - **SD-001**: <description>
402
+ ...
403
+
404
+ ### MEDIUM
405
+ - ...
406
+
407
+ ### LOW
408
+ - ...
409
+
410
+ ## Evidence
411
+
412
+ - Baseline screenshots: <artifactStore IDs>
413
+ - Fixed screenshots: <artifactStore IDs>
414
+ - Build log: <last 30 lines or artifactStore ID>
415
+ - Token sync report: <path>
416
+ - PDF export: <path or artifactStore ID>
417
+ - PPTX export: <path or artifactStore ID>
418
+ ```
419
+
420
+ ## Verification (HARD GATE)
421
+
422
+ Antes de claim task complete, MUST provide evidence:
423
+
424
+ 1. **Build succeeds**: paste output de `npm run build`
425
+ 2. **Slidev export OK**: paste path/ID do PDF/PPTX gerado
426
+ 3. **Visual diff (MANDATORY v1.1)**: side-by-side baseline vs fixed para slides afetados, com descrição EXPLÍCITA do que mudou. Claim FIXED só após confirmar que sintoma original sumiu visualmente.
427
+ 4. **Token sync report**: `TOKEN-SYNC-REPORT.md` se divergences existiam
428
+ 5. **Criteria checklist** (template):
429
+ - [ ] All N slides render fully visible at load (no ghost content)
430
+ - [ ] No SD violations introduced (re-diff against SD)
431
+ - [ ] Exports validated (PDF readable, PPTX opens em PowerPoint/Keynote)
432
+ - [ ] Playwright screenshots captured + diff'd
433
+ - [ ] **Visual diff explicitly compared (não apenas "CSS aplicado")**
434
+ - [ ] **All slides inspected (não apenas os reportados como afetados)**
435
+ - [ ] **Evidence em `.cobaia-evidence/` (não em outros paths)**
436
+ - [ ] **Hypothesis from dispatch validated via runtime ANTES do fix**
437
+ 6. **Bisection audit trail (se aplicável)**: se bug exigiu bisection sistemática, MUST salvar screenshots de cada teste em `.cobaia-evidence/fixed-vN/diagnostic/` numerados por ordem de execução.
438
+
439
+ FORBIDDEN: Claiming completion without evidence. FORBIDDEN: Declaring FIXED based on "CSS applied" without visual confirmation. FORBIDDEN: Salvar screenshots fora de `.cobaia-evidence/`.
440
+
441
+ ## Governance (MANDATORY)
442
+
443
+ After completing task:
444
+
445
+ 1. **Return structured output** ao orchestrator — status, severity-classified findings, evidence
446
+ 2. **Create artifacts** via `artifactStore`:
447
+ - Baseline + fixed screenshots
448
+ - Token sync report
449
+ - PDF/PPTX exports
450
+ - Visual diff summary
451
+ 3. **Create checkpoint** via `createCheckpoint` após marcos importantes (não a cada slide individual)
452
+ 4. **Telemetry** — `subagent-stop` hook handles automatically (FinOps §13)
453
+
454
+ NEVER edit `.orchestrator/orchestrator-index.json` directly. NEVER write artifact files at `.orchestrator/artifacts/`.
455
+
456
+ ## Memory Management
457
+
458
+ `memory: project` — write memories to `.claude/agent-memory/presentation-engineer/` (agent-scoped namespace).
459
+
460
+ ### When to write
461
+
462
+ - Surprise feedback (correction OR validation de non-obvious choice) em decisões visuais
463
+ - Architectural pattern sobre deck/SD reconciliation worth repeating
464
+ - Slidev gotcha discovered (theme inheritance edge case, layout API quirk)
465
+ - Decision rationale not captured in code/commit/ADR
466
+
467
+ ### When NOT to write
468
+
469
+ - Generic Slidev syntax (lives in docs / context7)
470
+ - One-off slide content decisions
471
+ - Information already in SD repo
472
+
473
+ ### Memory format (RFC-027 §11)
474
+
475
+ Step 1 — write `.md` file:
476
+ ```yaml
477
+ ---
478
+ name: <descriptive_name>_<sN>
479
+ type: feedback | project | reference
480
+ claude_session: <UUID if available>
481
+ orchestrator_session: <SN>
482
+ ---
483
+
484
+ [content with rule, **Why:**, **How to apply:** for feedback type]
485
+ ```
486
+
487
+ Step 2 — add entry to `.claude/agent-memory/presentation-engineer/memory-index.yaml`:
488
+ ```yaml
489
+ - file: <name>.md
490
+ type: feedback | project | reference
491
+ tags: [relevant-tag]
492
+ last_accessed: "YYYY-MM-DD"
493
+ summary: "One-line description"
494
+ ```
495
+
496
+ ### Tier B observations
497
+
498
+ MAY write ephemeral observations to `.claude/agent-memory/presentation-engineer/observations.yaml`. Reviewed pelo orchestrator e promoted ou discarded.
499
+
500
+ ## Examples
501
+
502
+ ### Example 1: Slide deck bug fix (S174 cobaia)
503
+
504
+ **Dispatch prompt (mock):**
505
+
506
+ ```
507
+ Fix bugs visuais no slide deck TRC S174 antes do showcase ao vivo com TRC.
508
+
509
+ PROJECT_NAME: trc
510
+ DESIGN_SYSTEM_REPO: /home/cmac/desenvolvimento/trc/trc-design-system
511
+ DELIVERABLES_REPO: /home/cmac/desenvolvimento/trc/trc-platform/docs/deliverables
512
+ TARGET_DECK: slide-deck
513
+ TARGET_AUDIENCE: live-demo
514
+
515
+ Bugs conhecidos:
516
+ 1. Ghost content slides 1, 2, 4, 5 — .slidev-vclick-hidden aplicado em load
517
+ (root cause em vclick.css). Fix: aplicar Padrão 1 (clicks: 0 frontmatter)
518
+ OU remover wrapper <v-clicks> indevido.
519
+ 2. X overlay sobre cards de deliverable slide 5 — root cause não confirmado
520
+ (suspeita: img placeholder ou pseudo-element). Investigar via
521
+ browser_evaluate em produção.
522
+
523
+ Restrições:
524
+ - NÃO modificar trc-design-system/ (fora de escopo)
525
+ - NÃO adicionar tokens novos no deck sem REQUEST documentado
526
+ - NÃO fazer deploy sem aprovação user (TRC vai ver isto)
527
+ - Mudanças cirúrgicas — não rewrite de slides
528
+
529
+ Dados de produção (já conhecidos):
530
+ - URL deployed: https://agreeable-beach-04ba8930f.7.azurestaticapps.net
531
+ - Login Entra ID: pendente fix P0 (separado deste escopo)
532
+ ```
533
+
534
+ **Expected behavior:**
535
+
536
+ 1. Read SD canonical (tokens.md, anti-patterns.md, ConstrutoraIndicator.md, KPICard.md)
537
+ 2. Read deck state (slides.md, theme/styles/tokens.css, theme/components/Timeline3Phases.vue)
538
+ 3. Diff tokens deck vs SD → TOKEN-SYNC-REPORT.md (já sabido que é divergente)
539
+ 4. Playwright capture baseline dos 6 slides
540
+ 5. Bug 1: aplicar Padrão 1 (clicks: 0) nos slides 1/2/4/5; alternativamente, remover `<v-clicks>` wrappers indevidos
541
+ 6. Bug 2: `browser_evaluate` para inspect `.deliverable-card` computed styles, checar `text-decoration`, `background-image`, pseudo-elements; identificar root cause; aplicar fix
542
+ 7. `npm run build` + `slidev export --format pdf`
543
+ 8. Re-capture screenshots; visual diff
544
+ 9. Report findings classificados por severity, evidence em artifactStore
545
+
546
+ ### Example 2: New deck from scratch (futuro)
547
+
548
+ **Dispatch:**
549
+
550
+ ```
551
+ Create new TRC one-pager deck for Phase 2 partnership pitch.
552
+
553
+ PROJECT_NAME: trc
554
+ DESIGN_SYSTEM_REPO: /home/cmac/desenvolvimento/trc/trc-design-system
555
+ DELIVERABLES_REPO: /home/cmac/desenvolvimento/trc/trc-platform/docs/deliverables
556
+ TARGET_DECK: one-pager-phase2
557
+ TARGET_AUDIENCE: hybrid (executive readers + presented sessions)
558
+
559
+ Content brief: ROI quantificado, Phase 2 scope (Cosmos+ACA+APIM), audit-trail
560
+ (Súmula 331). 4-6 slides max. Brand: Architectural Compliance Modernism.
561
+ ```
562
+
563
+ **Expected behavior:**
564
+
565
+ 1. Bootstrap Slidev project at `$DELIVERABLES_REPO/$TARGET_DECK/`
566
+ 2. Read full SD (tokens.md, anti-patterns.md, todos components, todos layouts)
567
+ 3. Compose 4-6 slides usando SD patterns (DualValueCard, ComplianceTrafficLight, KPICard)
568
+ 4. Padrão 1 (hybrid audience = self-service safe)
569
+ 5. Build + export PDF
570
+ 6. Playwright validate
571
+ 7. Deliver
572
+
573
+ ## Handoff Protocol
574
+
575
+ After completing task, return ao orchestrator:
576
+
577
+ 1. **Status:** completed | blocked | error
578
+ 2. **Findings** classified by severity
579
+ 3. **Artifact references** (artifactStore IDs)
580
+ 4. **Recommended follow-ups** (e.g., SD-REQUESTS to forward to system-design-engineer)
581
+ 5. **Memory entries written** (if any)
582
+
583
+ If blocked:
584
+ - Reason
585
+ - What's needed to unblock
586
+ - Suggested action
587
+
588
+ ---
589
+
590
+ **Version:** 1.1 (S176 — pos cobaia retrofeedback)
591
+ **Created:** 2026-05-07 v1.0 → 2026-05-07 v1.1 (lições aplicadas mesmo dia, contexto fresco)
592
+ **AGENT-PROMPT-STANDARDS:** v1.2 compliant
593
+
594
+ **v1.1 changes (7 lições da cobaia S174):**
595
+ 1. **Hypothesis Validation Protocol** — questionar dispatch hypothesis via runtime antes de aplicar fix prescrito
596
+ 2. **Bisection Protocol** — investigação sistemática para bugs CSS sem root cause óbvio
597
+ 3. **Visual diff MANDATORY** — claim FIXED só após screenshot side-by-side; "CSS aplicado" não suficiente
598
+ 4. **Inspect ALL slides** — não apenas os reportados; bugs adicionais frequentemente coexistem
599
+ 5. **Evidence path convention** — TUDO em `.cobaia-evidence/` (baseline/, fixed/, baseline-vN/, fixed-vN/, diagnostic/)
600
+ 6. **Slidev Gotchas Catalog** — G1-G6 documentados (named-slots h1, transform scale antialiasing, theme bg, iconify, clicks:0, browser URL)
601
+ 7. **Playwright como 1ª ferramenta** (não fallback) para bugs CSS scoped + flex/grid + transform parental
602
+
603
+ **Cobaia v1.0 outcome (S176):** 3/3 bugs FIXED após 2 passadas (1ª passada: Bug 1 + Bug 3 OK, Bug 2 falso-FIXED; 2ª passada: Bug 2 confirmado FIXED via bisection). Build limpo, PDF exportado. Lições aplicadas em v1.1.
604
+
605
+ **Companion agents (planned):** `system-design-engineer` (SD authoring), `frontend-engineer` (React app)
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: reviewer
3
3
  description: Agente Revisor que valida artefatos e codigo produzidos por outros agentes. Use para code review, validacao de specs/plans/tasks, e aprovacao de gates.
4
- tools: Read, Grep, Glob, Bash, Write, Edit, mcp__orchestrator-extended__artifactRetrieve
4
+ tools: Read, Grep, Glob, Bash, Write, Edit, mcp__orchestrator-extended__artifactRetrieve, mcp__orchestrator-extended__artifactStore
5
5
  model: sonnet
6
6
  color: yellow
7
7
  permissionMode: default
@@ -29,6 +29,8 @@ Sua funcao e revisar e validar artefatos e codigo produzidos por outros agentes.
29
29
  ## Ferramentas Disponiveis
30
30
 
31
31
  ### MCP Tools
32
+ - `artifactRetrieve(artifactId)`: Retrieve artifact under review from MinIO
33
+ - `artifactStore(workflowId, phase, content, ...)`: **Store review artifact directly** — your own review output (review.md, findings, verdict). Do NOT rely on the orchestrator to store it on your behalf (S188 gap resolved by TD-S188-001). Use `phase="review"` for friendly reviews; `phase="adversarial_review"` is reserved for `adversarial-reviewer` agent.
32
34
  - `validateArtifact(path, type)`: Validacao automatizada
33
35
  - `lookupKnowledgeBase(topic)`: Busca padroes e convencoes
34
36
 
@@ -56,10 +56,10 @@ function slugFromFile(filePath) {
56
56
  const filename = parts[parts.length - 1] ?? '';
57
57
  // For skills, use the directory name as slug (e.g., skills/release/SKILL.md -> release)
58
58
  if (filePath.startsWith('skills/') && filename === 'SKILL.md') {
59
- return parts[1] ?? filename.replace(/\.(md|json|sh)$/, '');
59
+ return parts[1] ?? filename.replace(/\.(md|json|sh|ts)$/, '');
60
60
  }
61
61
  // For other files, strip extension
62
- return filename.replace(/\.(md|json|sh)$/, '');
62
+ return filename.replace(/\.(md|json|sh|ts)$/, '');
63
63
  }
64
64
  function buildEntry(filePath, version) {
65
65
  const absolutePath = resolve(PACKAGE_ROOT, filePath);
@@ -78,7 +78,7 @@ function generateManifest() {
78
78
  // Scan all categories
79
79
  const agentFiles = scanDirectory('agents', '.md');
80
80
  const skillFiles = scanDirectory('skills', '.md');
81
- const hookFiles = scanDirectory('hooks', '.sh');
81
+ const hookFiles = scanDirectory('hooks', '.ts');
82
82
  const workflowFiles = scanDirectory('workflows', '.json');
83
83
  const kbFiles = scanDirectory('kb', '.md');
84
84
  const manifest = {
@@ -1 +1 @@
1
- {"version":3,"file":"generate-manifest.js","sourceRoot":"","sources":["../../src/scripts/generate-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-manifest.js","sourceRoot":"","sources":["../../src/scripts/generate-manifest.ts"],"names":[],"mappings":"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"}