mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-04-05 00:33:27 +08:00
fix: harden unicode safety checks
This commit is contained in:
@@ -22,7 +22,7 @@
|
||||
|
||||
<div align="center">
|
||||
|
||||
**🌐 Idioma / Language / 语言**
|
||||
**Idioma / Language / 语言**
|
||||
|
||||
[**English**](../../README.md) | [简体中文](../../README.zh-CN.md) | [繁體中文](../zh-TW/README.md) | [日本語](../ja-JP/README.md) | [한국어](../ko-KR/README.md) | [Português (BR)](README.md)
|
||||
|
||||
@@ -104,7 +104,7 @@ Este repositório contém apenas o código. Os guias explicam tudo.
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Início Rápido
|
||||
## Início Rápido
|
||||
|
||||
Comece em menos de 2 minutos:
|
||||
|
||||
@@ -120,7 +120,7 @@ Comece em menos de 2 minutos:
|
||||
|
||||
### Passo 2: Instalar as Regras (Obrigatório)
|
||||
|
||||
> ⚠️ **Importante:** Plugins do Claude Code não podem distribuir `rules` automaticamente. Instale-as manualmente:
|
||||
> WARNING: **Importante:** Plugins do Claude Code não podem distribuir `rules` automaticamente. Instale-as manualmente:
|
||||
|
||||
```bash
|
||||
# Clone o repositório primeiro
|
||||
@@ -161,11 +161,11 @@ npx ecc-install typescript
|
||||
/plugin list everything-claude-code@everything-claude-code
|
||||
```
|
||||
|
||||
✨ **Pronto!** Você agora tem acesso a 28 agentes, 116 skills e 59 comandos.
|
||||
**Pronto!** Você agora tem acesso a 28 agentes, 116 skills e 59 comandos.
|
||||
|
||||
---
|
||||
|
||||
## 🌐 Suporte Multiplataforma
|
||||
## Suporte Multiplataforma
|
||||
|
||||
Este plugin agora suporta totalmente **Windows, macOS e Linux**, com integração estreita em principais IDEs (Cursor, OpenCode, Antigravity) e harnesses CLI. Todos os hooks e scripts foram reescritos em Node.js para máxima compatibilidade.
|
||||
|
||||
@@ -212,7 +212,7 @@ export ECC_DISABLED_HOOKS="pre:bash:tmux-reminder,post:edit:typecheck"
|
||||
|
||||
---
|
||||
|
||||
## 📦 O Que Está Incluído
|
||||
## O Que Está Incluído
|
||||
|
||||
```
|
||||
everything-claude-code/
|
||||
@@ -230,7 +230,7 @@ everything-claude-code/
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Ferramentas do Ecossistema
|
||||
## Ferramentas do Ecossistema
|
||||
|
||||
### Criador de Skills
|
||||
|
||||
@@ -269,7 +269,7 @@ npx ecc-agentshield scan --opus --stream
|
||||
npx ecc-agentshield init
|
||||
```
|
||||
|
||||
### 🧠 Aprendizado Contínuo v2
|
||||
### Aprendizado Contínuo v2
|
||||
|
||||
O sistema de aprendizado baseado em instincts aprende automaticamente seus padrões:
|
||||
|
||||
@@ -282,7 +282,7 @@ O sistema de aprendizado baseado em instincts aprende automaticamente seus padr
|
||||
|
||||
---
|
||||
|
||||
## 📋 Requisitos
|
||||
## Requisitos
|
||||
|
||||
### Versão do Claude Code CLI
|
||||
|
||||
@@ -295,7 +295,7 @@ claude --version
|
||||
|
||||
---
|
||||
|
||||
## 📥 Instalação
|
||||
## Instalação
|
||||
|
||||
### Opção 1: Instalar como Plugin (Recomendado)
|
||||
|
||||
@@ -343,7 +343,7 @@ Ou adicione diretamente ao seu `~/.claude/settings.json`:
|
||||
|
||||
---
|
||||
|
||||
### 🔧 Opção 2: Instalação Manual
|
||||
### Opção 2: Instalação Manual
|
||||
|
||||
```bash
|
||||
# Clonar o repositório
|
||||
@@ -365,7 +365,7 @@ cp -r everything-claude-code/.agents/skills/* ~/.claude/skills/
|
||||
|
||||
---
|
||||
|
||||
## 🎯 Conceitos-Chave
|
||||
## Conceitos-Chave
|
||||
|
||||
### Agentes
|
||||
|
||||
@@ -395,7 +395,7 @@ Regras são diretrizes sempre seguidas, organizadas em `common/` (agnóstico à
|
||||
|
||||
---
|
||||
|
||||
## 🗺️ Qual Agente Devo Usar?
|
||||
## Qual Agente Devo Usar?
|
||||
|
||||
| Quero... | Use este comando | Agente usado |
|
||||
|----------|-----------------|--------------|
|
||||
@@ -437,7 +437,7 @@ Regras são diretrizes sempre seguidas, organizadas em `common/` (agnóstico à
|
||||
|
||||
---
|
||||
|
||||
## ❓ FAQ
|
||||
## FAQ
|
||||
|
||||
<details>
|
||||
<summary><b>Como verificar quais agentes/comandos estão instalados?</b></summary>
|
||||
@@ -476,7 +476,7 @@ Veja [CONTRIBUTING.md](CONTRIBUTING.md). Em resumo:
|
||||
|
||||
---
|
||||
|
||||
## 🧪 Executando Testes
|
||||
## Executando Testes
|
||||
|
||||
```bash
|
||||
# Executar todos os testes
|
||||
@@ -490,7 +490,7 @@ node tests/hooks/hooks.test.js
|
||||
|
||||
---
|
||||
|
||||
## 🤝 Contribuindo
|
||||
## Contribuindo
|
||||
|
||||
**Contribuições são bem-vindas e incentivadas.**
|
||||
|
||||
@@ -504,6 +504,6 @@ Por favor contribua! Veja [CONTRIBUTING.md](CONTRIBUTING.md) para diretrizes.
|
||||
|
||||
---
|
||||
|
||||
## 📄 Licença
|
||||
## Licença
|
||||
|
||||
MIT — consulte o [arquivo LICENSE](../../LICENSE) para detalhes.
|
||||
|
||||
@@ -91,7 +91,7 @@ Se você encontrar uma vulnerabilidade CRÍTICA:
|
||||
|
||||
**IMEDIATAMENTE:** Incidentes de produção, CVEs de dependências, relatórios de segurança do usuário, antes de grandes lançamentos.
|
||||
|
||||
## Métricas de sucesso
|
||||
## Métricas de sucesso
|
||||
|
||||
- Nenhum problema CRÍTICO encontrado
|
||||
- Todos os problemas de ALTA prioridade foram resolvidos
|
||||
|
||||
@@ -9,7 +9,7 @@ Revisão completa de segurança e qualidade das mudanças não commitadas:
|
||||
**Problemas de Segurança (CRITICAL):**
|
||||
- Credenciais, chaves de API ou tokens hardcoded
|
||||
- Vulnerabilidades de SQL injection
|
||||
- Vulnerabilidades de XSS
|
||||
- Vulnerabilidades de XSS
|
||||
- Falta de validação de entrada
|
||||
- Dependências inseguras
|
||||
- Riscos de path traversal
|
||||
|
||||
@@ -182,7 +182,7 @@ Artifacts generated:
|
||||
╔══════════════════════════════════════════════════════════════╗
|
||||
║ E2E Test Results ║
|
||||
╠══════════════════════════════════════════════════════════════╣
|
||||
║ Status: ✅ ALL TESTS PASSED ║
|
||||
║ Status: PASS: ALL TESTS PASSED ║
|
||||
║ Total: 3 tests ║
|
||||
║ Passed: 3 (100%) ║
|
||||
║ Failed: 0 ║
|
||||
@@ -191,15 +191,15 @@ Artifacts generated:
|
||||
╚══════════════════════════════════════════════════════════════╝
|
||||
|
||||
Artifacts:
|
||||
📸 Screenshots: 2 files
|
||||
📹 Videos: 0 files (only on failure)
|
||||
🔍 Traces: 0 files (only on failure)
|
||||
📊 HTML Report: playwright-report/index.html
|
||||
Screenshots: 2 files
|
||||
Videos: 0 files (only on failure)
|
||||
Traces: 0 files (only on failure)
|
||||
HTML Report: playwright-report/index.html
|
||||
|
||||
View report: npx playwright show-report
|
||||
```
|
||||
|
||||
✅ E2E test suite ready for CI/CD integration!
|
||||
PASS: E2E test suite ready for CI/CD integration!
|
||||
```
|
||||
|
||||
## Artefatos de Teste
|
||||
@@ -235,7 +235,7 @@ open artifacts/search-results.png
|
||||
Se um teste falhar de forma intermitente:
|
||||
|
||||
```
|
||||
⚠️ FLAKY TEST DETECTED: tests/e2e/markets/trade.spec.ts
|
||||
WARNING: FLAKY TEST DETECTED: tests/e2e/markets/trade.spec.ts
|
||||
|
||||
Test passed 7/10 runs (70% pass rate)
|
||||
|
||||
@@ -254,10 +254,10 @@ Quarantine recommendation: Mark as test.fixme() until fixed
|
||||
## Configuração de Navegador
|
||||
|
||||
Os testes rodam em múltiplos navegadores por padrão:
|
||||
- ✅ Chromium (Desktop Chrome)
|
||||
- ✅ Firefox (Desktop)
|
||||
- ✅ WebKit (Desktop Safari)
|
||||
- ✅ Mobile Chrome (optional)
|
||||
- PASS: Chromium (Desktop Chrome)
|
||||
- PASS: Firefox (Desktop)
|
||||
- PASS: WebKit (Desktop Safari)
|
||||
- PASS: Mobile Chrome (optional)
|
||||
|
||||
Configure em `playwright.config.ts` para ajustar navegadores.
|
||||
|
||||
@@ -285,7 +285,7 @@ Adicione ao seu pipeline de CI:
|
||||
|
||||
Para PMX, priorize estes testes E2E:
|
||||
|
||||
**🔴 CRITICAL (Must Always Pass):**
|
||||
**CRITICAL (Must Always Pass):**
|
||||
1. User can connect wallet
|
||||
2. User can browse markets
|
||||
3. User can search markets (semantic search)
|
||||
@@ -294,7 +294,7 @@ Para PMX, priorize estes testes E2E:
|
||||
6. Market resolves correctly
|
||||
7. User can withdraw funds
|
||||
|
||||
**🟡 IMPORTANT:**
|
||||
**IMPORTANT:**
|
||||
1. Market creation flow
|
||||
2. User profile updates
|
||||
3. Real-time price updates
|
||||
@@ -305,20 +305,20 @@ Para PMX, priorize estes testes E2E:
|
||||
## Boas Práticas
|
||||
|
||||
**DO:**
|
||||
- ✅ Use Page Object Model para manutenção
|
||||
- ✅ Use atributos data-testid para seletores
|
||||
- ✅ Aguarde respostas de API, não timeouts arbitrários
|
||||
- ✅ Teste jornadas críticas de usuário end-to-end
|
||||
- ✅ Rode testes antes de mergear em main
|
||||
- ✅ Revise artefatos quando testes falharem
|
||||
- PASS: Use Page Object Model para manutenção
|
||||
- PASS: Use atributos data-testid para seletores
|
||||
- PASS: Aguarde respostas de API, não timeouts arbitrários
|
||||
- PASS: Teste jornadas críticas de usuário end-to-end
|
||||
- PASS: Rode testes antes de mergear em main
|
||||
- PASS: Revise artefatos quando testes falharem
|
||||
|
||||
**DON'T:**
|
||||
- ❌ Use seletores frágeis (classes CSS podem mudar)
|
||||
- ❌ Teste detalhes de implementação
|
||||
- ❌ Rode testes contra produção
|
||||
- ❌ Ignore testes flaky
|
||||
- ❌ Pule revisão de artefatos em falhas
|
||||
- ❌ Teste todo edge case com E2E (use testes unitários)
|
||||
- FAIL: Use seletores frágeis (classes CSS podem mudar)
|
||||
- FAIL: Teste detalhes de implementação
|
||||
- FAIL: Rode testes contra produção
|
||||
- FAIL: Ignore testes flaky
|
||||
- FAIL: Pule revisão de artefatos em falhas
|
||||
- FAIL: Teste todo edge case com E2E (use testes unitários)
|
||||
|
||||
## Notas Importantes
|
||||
|
||||
|
||||
@@ -140,7 +140,7 @@ ok project/internal/handler 0.023s
|
||||
| Files modified | 2 |
|
||||
| Remaining issues | 0 |
|
||||
|
||||
Build Status: ✅ SUCCESS
|
||||
Build Status: PASS: SUCCESS
|
||||
```
|
||||
|
||||
## Erros Comuns Corrigidos
|
||||
|
||||
@@ -124,16 +124,16 @@ return fmt.Errorf("get user %s: %w", userID, err)
|
||||
- HIGH: 1
|
||||
- MEDIUM: 0
|
||||
|
||||
Recommendation: ❌ Block merge until CRITICAL issue is fixed
|
||||
Recommendation: FAIL: Block merge until CRITICAL issue is fixed
|
||||
```
|
||||
|
||||
## Critérios de Aprovação
|
||||
|
||||
| Status | Condição |
|
||||
|--------|----------|
|
||||
| ✅ Aprovado | Sem problemas CRÍTICO ou ALTO |
|
||||
| ⚠️ Aviso | Apenas problemas MÉDIOS (merge com cautela) |
|
||||
| ❌ Bloqueado | Problemas CRÍTICO ou ALTO encontrados |
|
||||
| PASS: Aprovado | Sem problemas CRÍTICO ou ALTO |
|
||||
| WARNING: Aviso | Apenas problemas MÉDIOS (merge com cautela) |
|
||||
| FAIL: Bloqueado | Problemas CRÍTICO ou ALTO encontrados |
|
||||
## Integração com Outros Comandos
|
||||
|
||||
- Use `/go-test` primeiro para garantir que os testes passam
|
||||
|
||||
@@ -69,7 +69,7 @@ Deleted: 12 unused functions
|
||||
Skipped: 2 items (tests failed)
|
||||
Saved: ~450 lines removed
|
||||
──────────────────────────────
|
||||
All tests passing ✅
|
||||
All tests passing PASS:
|
||||
```
|
||||
|
||||
## Regras
|
||||
|
||||
@@ -133,7 +133,7 @@ FAIL lib/liquidity.test.ts
|
||||
1 test failed, 0 passed
|
||||
```
|
||||
|
||||
✅ Os testes falharam conforme o esperado. Pronto para implementação.
|
||||
PASS: Os testes falharam conforme o esperado. Pronto para implementação.
|
||||
|
||||
## Etapa 4: Implementar o código mínimo (VERDE)
|
||||
|
||||
@@ -179,7 +179,7 @@ PASS lib/liquidity.test.ts
|
||||
3 tests passed
|
||||
```
|
||||
|
||||
✅ Todos os testes passando
|
||||
PASS: Todos os testes passando
|
||||
|
||||
## Etapa 6: Refatorar (MELHORAR)
|
||||
|
||||
@@ -236,7 +236,7 @@ PASS lib/liquidity.test.ts
|
||||
3 tests passed
|
||||
```
|
||||
|
||||
✅ Refatoração concluída, testes ainda passando!
|
||||
PASS: Refatoração concluída, testes ainda passando!
|
||||
|
||||
## Etapa 8: Verificar a cobertura
|
||||
|
||||
@@ -247,29 +247,29 @@ File | % Stmts | % Branch | % Funcs | % Lines
|
||||
---------------|---------|----------|---------|--------
|
||||
liquidity.ts | 100 | 100 | 100 | 100
|
||||
|
||||
Coverage: 100% ✅ (Target: 80%)
|
||||
Coverage: 100% PASS: (Target: 80%)
|
||||
```
|
||||
|
||||
✅ TDD sessão completa!
|
||||
PASS: TDD sessão completa!
|
||||
```
|
||||
|
||||
## Boas Práticas de TDD
|
||||
|
||||
**Fazer:**
|
||||
- ✅ Escreva o teste PRIMEIRO, antes da implementação
|
||||
- ✅ Rode testes e confirme que FALHAM antes de implementar
|
||||
- ✅ Escreva código mínimo para fazer passar
|
||||
- ✅ Refatore só depois que os testes estiverem verdes
|
||||
- ✅ Adicione casos de borda e cenários de erro
|
||||
- ✅ Mire 80%+ de cobertura (100% para código crítico)
|
||||
- PASS: Escreva o teste PRIMEIRO, antes da implementação
|
||||
- PASS: Rode testes e confirme que FALHAM antes de implementar
|
||||
- PASS: Escreva código mínimo para fazer passar
|
||||
- PASS: Refatore só depois que os testes estiverem verdes
|
||||
- PASS: Adicione casos de borda e cenários de erro
|
||||
- PASS: Mire 80%+ de cobertura (100% para código crítico)
|
||||
|
||||
**Não fazer:**
|
||||
- ❌ Escrever implementação antes de testes
|
||||
- ❌ Pular execução de testes após cada mudança
|
||||
- ❌ Escrever código demais de uma vez
|
||||
- ❌ Ignorar testes falhando
|
||||
- ❌ Testar detalhes de implementação (teste comportamento)
|
||||
- ❌ Fazer mock de tudo (prefira testes de integração)
|
||||
- FAIL: Escrever implementação antes de testes
|
||||
- FAIL: Pular execução de testes após cada mudança
|
||||
- FAIL: Escrever código demais de uma vez
|
||||
- FAIL: Ignorar testes falhando
|
||||
- FAIL: Testar detalhes de implementação (teste comportamento)
|
||||
- FAIL: Fazer mock de tudo (prefira testes de integração)
|
||||
|
||||
## Tipos de Teste a Incluir
|
||||
|
||||
|
||||
@@ -57,7 +57,7 @@ File Before After
|
||||
src/services/auth.ts 45% 88%
|
||||
src/utils/validation.ts 32% 82%
|
||||
──────────────────────────────
|
||||
Overall: 67% 84% ✅
|
||||
Overall: 67% 84% PASS:
|
||||
```
|
||||
|
||||
## Áreas de Foco
|
||||
|
||||
Reference in New Issue
Block a user