Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

46 Post Deploy Canary Monitor

ASecurity

Vigia producao apos deploy fechar, comparando metricas e screenshots contra baseline pre-deploy. Detecta regressao silenciosa (console errors, perf drop, broken pages) nas primeiras horas/dias. Diferente de skill 43 (canary-deployment) que faz promocao gradual durante o deploy: esta skill comeca QUANDO o deploy ja fechou 100% e fica vigiando ate confirmar que esta saudavel ou escalar pra rollback. Trigger em: "monitor producao", "monitora producao", "monitora se", "watch deploy", "watch produ...

23 stars
0 votes
0 copies
0 views
Added 9/20/2026
testinggobashtestinggitsecurityperformance

Security Analysis

A100/100

Scanned 9/20/2026

Install to Claude Code

$npx -y skills add felvieira/claude-skills-fv --skill 46-post-deploy-canary-monitor --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of 46 Post Deploy Canary Monitor?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for 46 Post Deploy Canary Monitor
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/felvieira-46-post-deploy-canary-monitor/badge)](https://www.skillsdirectory.com/skills/felvieira-46-post-deploy-canary-monitor)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: post-deploy-canary-monitor
description: |
  Vigia producao apos deploy fechar, comparando metricas e screenshots contra baseline pre-deploy.
  Detecta regressao silenciosa (console errors, perf drop, broken pages) nas primeiras horas/dias.
  Diferente de skill 43 (canary-deployment) que faz promocao gradual durante o deploy: esta skill
  comeca QUANDO o deploy ja fechou 100% e fica vigiando ate confirmar que esta saudavel ou
  escalar pra rollback.
  Trigger em: "monitor producao", "monitora producao", "monitora se", "watch deploy",
  "watch production", "post-deploy check", "pos-deploy", "depois do deploy", "depois do rollout",
  "vigiar producao", "regressao silenciosa", "deploy passou mas", "verificar producao",
  "deploy stuck", "production health check", "screenshot diff", "lcp regrediu", "baseline comparativo".
allowed-tools: Read, Write, Bash, Glob
metadata:
  argument-hint: "[--url=https://prod.exemplo] [--baseline=path] [--interval=15m] [--duration=24h]"
---

# Post-Deploy Canary Monitor — Vigia Producao Sem Dormir

> **Inspiracao:** [gstack/canary](https://github.com/garrytan/gstack/tree/main/canary) (MIT, Garry Tan).
> Adaptado: foca em **pos-deploy** (depois do 100% rollout), enquanto skill 43 cobre **durante** o rollout gradual.

## Diferenca vs skill 43 (canary-deployment)

|                  | Skill 43 canary-deployment | Skill 45 post-deploy-canary-monitor (esta) |
|------------------|----------------------------|--------------------------------------------|
| Momento          | DURANTE o rollout (0% → 100%) | DEPOIS do rollout completar (100% live) |
| Decisao          | Promover ou abortar **deploy** | Manter producao ou **rollback** |
| Mecanismo        | Traffic split, feature flag, blue-green | Polling de metricas + screenshot diff |
| Termina quando   | 100% completo OU abortou | Janela de observacao expirou OK |
| Escalacao        | (proprio rollback do canary) | **Chama skill 43 (rollback) ou skill 24 (release-manager)** |

## Quando Usar

- deploy acabou de fechar 100% — primeiras 2-24h de vigilancia
- mudanca grande (migration, refactor, framework upgrade) que pode regredir silencioso
- sem observability robusta no projeto (esta skill cobre o basico)
- producao critica onde "deploy passou no canary 5%" nao garante "100% e saudavel"

## Quando NAO Usar

- voce ja tem Datadog/Sentry/NewRelic com alertas — use o sistema existente
- deploy trivial (config change, doc) sem risco
- ainda esta no rollout — use skill 43

## Governanca Global

Segue `GLOBAL.md`, `policies/verification-before-completion.md` (a verificacao **continua**
apos deploy fechar), `policies/handoffs.md` (escalacao pra skill 43), `policies/observability-trace-tags.md`.

### Gate contra constituicao

Quando `memory/constitution.md` define SLOs no eixo Performance/Reliability:
- baseline pre-deploy precisa estar capturado **antes** desta skill comecar
- threshold de abort = SLO violado + N% margem
- error budget restante deve cobrir esta janela de observacao

## Inputs

```yaml
url: https://prod.exemplo.com
baseline:
  metrics: ./baseline/metrics-pre-deploy.json
  screenshots: ./baseline/screenshots/
thresholds:
  console_errors_per_min: 0          # zero tolerancia
  lcp_regression_pct: 20              # >20% pior que baseline = abort
  cls_regression_pct: 25
  screenshot_diff_pct: 5              # >5% de pixels diferentes em paginas-chave
  status_5xx_pct: 1                   # >1% de respostas 5xx
window:
  interval: 15m
  duration: 24h
  abort_after_consecutive_failures: 2
escalation:
  on_abort: skill-43-rollback         # ou comando manual
  notify: <slack-channel | email>
```

## Protocolo

### 1. Captura baseline (pre-deploy)

Se nao houver baseline ainda, capturar **antes** do deploy:

```bash
# Metricas
curl -s "$URL/metrics" > baseline/metrics-pre-deploy.json

# Screenshots de paginas-chave (Playwright via anthropic-skills:webapp-testing)
# - homepage
# - 2-3 paginas mais traficadas
# - 1 fluxo critico (checkout, login, search)
```

### 2. Loop de vigilancia (pos-deploy)

A cada `interval` (default 15min), por ate `duration` (default 24h):

1. **Coletar metricas atuais** — mesmo endpoint do baseline
2. **Tirar screenshots atuais** — mesmas paginas
3. **Comparar** contra baseline:
   - delta de console errors (qualquer >0 = alerta imediato)
   - delta de LCP/CLS (>threshold = alerta)
   - diff de screenshot (>threshold pixels = alerta)
   - taxa de 5xx (>threshold = alerta)
4. **Registrar** em `docs/canary-runs/YYYY-MM-DD-<release>/timeline.jsonl`:

```jsonl
{"t":"15:00","status":"ok","lcp_delta":-2,"errors":0,"screenshot_diff":0.4}
{"t":"15:15","status":"ok","lcp_delta":+5,"errors":0,"screenshot_diff":0.6}
{"t":"15:30","status":"alert","lcp_delta":+22,"errors":3,"screenshot_diff":7.2,"reason":"lcp_regression+errors"}
```

5. **Decidir:**
   - tudo verde → continuar ate fim da janela → mark `healthy`
   - 1 alerta → log e continuar (false-positive comum)
   - 2 alertas consecutivos → **escalar abort**

### 3. Escalacao em abort

Ao detectar 2 falhas consecutivas:

1. Registrar evento detalhado em `docs/canary-runs/.../abort.md`
2. Notificar canal configurado (slack/email)
3. Sugerir:
   - **opcao A:** `/run-program rollback` ou skill 43 reverse
   - **opcao B:** investigar (skill 06 + skill 34) — se nao for security/perf, hotfix
   - **opcao C:** user override (false positive confirmado)

NAO faz rollback automatico **por default**. Producao = decisao humana, salvo override explicito no input.

**Checkpoint na opcao C:** "false positive confirmado" exige o humano ter olhado a evidencia especifica do alerta (screenshot diff, log de erro), nao so aceitar a sugestao pra destravar o monitoramento. Se o override for aceito sem essa confirmacao, registrar isso explicitamente no `abort.md` — silenciar um alerta real vira o proximo incidente sem trace de por que passou.

### 4. Saida saudavel

Ao final da janela sem aborts:

1. Mark release `healthy` em `docs/canary-runs/.../verdict.md`
2. Atualizar `docs/releases/<versao>.md` com link pro report
3. Sugerir promover baseline atual como novo baseline canonico

## Output canonico

```
docs/canary-runs/2026-05-27-v2.19.0/
├── input.yaml           # config usada
├── baseline/
│   ├── metrics.json
│   └── screenshots/
├── timeline.jsonl       # 1 linha por check
├── abort.md (se houve)  # detalhes do incidente
└── verdict.md           # healthy | rolled-back | aborted
```

## Handoffs

- **escalacao:** skill 43 (canary-deployment reverso) ou skill 24 (release-manager)
- **investigacao pos-abort:** skill 06 (security) + skill 34 (static-analysis) + skill debugger
- **registro pos-saudavel:** skill 24 (release-manager) atualiza changelog com badge "verified"

## Dependencias

- `anthropic-skills:webapp-testing` (Playwright) — captura screenshots
- skill 20 (observability-sre) — define o que metrificar
- skill 43 (canary-deployment) — escalacao de rollback
- skill 30 (cost-tracker) — esta skill consome recursos durante a janela

## Anti-padroes

- ❌ Rollback automatico sem decisao humana (default) — producao nao se rolla sozinha
- ❌ Janela infinita — sempre `duration` finito (24h-7d max)
- ❌ Ignorar console error porque "e so um warning" — qualquer aumento = sinal
- ❌ Sem baseline pre-deploy — comparacao impossivel
- ❌ Screenshot diff sem mascarar areas dinamicas (timestamps, randoms) — gera false positive
- ❌ Esta skill **substituir** observability profissional — ela cobre o gap, nao o ouro padrao

Attribution

felvieirafelvieira
View sourceMore from felvieira →
SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Related Skills

Screen Reader Testing

Practical guide to testing web applications with screen readers for comprehensive accessibility validation.

393431 votes

Python Testing

使用pytest、TDD方法、夹具、模拟、参数化和覆盖率要求的Python测试策略。

2456590 votes

Tdd Workflow

在编写新功能、修复错误或重构代码时使用此技能。强制执行测试驱动开发,包含单元测试、集成测试和端到端测试,覆盖率超过80%。

2456590 votes

Springboot Tdd

使用JUnit 5、Mockito、MockMvc、Testcontainers和JaCoCo进行Spring Boot的测试驱动开发。适用于添加功能、修复错误或重构时。

2456590 votes

Eval Harness

克劳德代码会话的正式评估框架,实施评估驱动开发(EDD)原则

2456590 votes
View all in testing →