specsfy-specialist-code-review
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseRevisão de código
代码审查
Quando usar
使用场景
- Acionar quando houver um diff, branch ou PR concreto para avaliar antes de mergear ou publicar.
- Acionar também quando o pedido for "segunda opinião" sobre uma mudança já escrita, mesmo sem PR aberto.
- Não acionar para desenhar uma decisão estrutural nova do zero — use
; a revisão avalia o que já foi decidido e escrito, não substitui a decisão.
$specsfy-specialist-software-architecture - Combinar com quando o diff tocar autenticação, autorização, dados sensíveis ou entrada externa, e com
$specsfy-specialist-application-securityquando o achado for sobre nomes, invariantes ou fronteiras de domínio confusas.$specsfy-specialist-domain-modeling
- 当存在具体的diff、分支或PR需要在合并或发布前评估时触发。
- 当用户请求对已编写的变更给出“第二意见”时也可触发,即使未开启PR。
- 不要用于从零开始制定新的结构性决策——请使用;审查仅针对已确定和编写的内容进行评估,不能替代决策过程。
$specsfy-specialist-software-architecture - 当diff涉及认证、授权、敏感数据或外部输入时,可结合使用;当发现领域名称、不变量或边界存在混淆时,可结合
$specsfy-specialist-application-security使用。$specsfy-specialist-domain-modeling
Fluxo
流程
- Fixar a base de comparação e o escopo exato do diff; revisar um diff sem base clara produz achados sobre código que a mudança não tocou.
- Ler spec, issue, critérios de aceite e instruções do repositório aplicáveis antes de julgar; sem isso, "correto" vira opinião pessoal.
- Mapear cada arquivo alterado para o comportamento e o boundary que ele afeta (dado, permissão, contrato de API, config, dependência).
- Avaliar corretude, casos de borda, segurança, concorrência e efeito operacional antes de estilo — estilo só bloqueia quando automação não o cobre.
- Inspecionar os testes pela evidência que fornecem: eles falhariam sem a correção, ou só cobrem a linha sem provar o comportamento?
- Confirmar cada achado suspeito lendo o código real e os chamadores/ consumidores antes de reportar — reduz falso positivo.
- Relatar por severidade, com localização exata (), condição que dispara a falha, impacto e correção provável.
arquivo:linha
- 确定比较基准和diff的确切范围;在基准不明确的情况下审查diff,会导致针对变更未涉及的代码提出问题。
- 在评判前,先阅读相关的规格说明(spec)、需求工单(issue)、验收标准和仓库适用的规则;没有这些信息,“正确性”就会变成个人主观意见。
- 将每个变更的文件映射到其影响的行为和边界(数据、权限、API契约、配置、依赖)。
- 在评估风格之前,先评估正确性、边界情况、安全性、并发问题和运营影响——只有当自动化工具未覆盖风格问题时,才将其作为阻塞项。
- 检查测试提供的证据:如果没有该修正,测试会失败吗?还是仅覆盖代码行却未验证实际行为?
- 在报告疑似问题之前,务必通过阅读实际代码及其调用者/消费者来确认每个问题——减少误报。
- 按严重性报告问题,包含确切位置()、触发故障的条件、影响以及可能的修正方案。
文件:行号
Padrões
规范
- Priorizar bugs e risco concreto; não transformar preferência de estilo em bloqueador.
- Cada achado descreve condição de entrada, consequência observável e a evidência que comprova (linha, teste, log).
- Considerar compatibilidade com clientes existentes, concorrência, plano de rollback e observabilidade da mudança, não só o caminho feliz.
- Verificar se o teste adicionado falharia sem a correção real — teste que passa antes e depois da mudança não prova nada.
- Distinguir escopo ausente do PR (bloqueador de merge) de melhoria futura opcional (comentário, não bloqueio).
- Não repetir achado que lint, formatter ou type checker automatizado já cobre; aponte só o que a automação não vê.
- Declarar explicitamente "nenhum achado nesta lente" quando for o caso, sem linguagem que implique ausência de risco além do observado.
- 优先处理实际存在的bug和风险;不要将风格偏好转化为阻塞项。
- 每个问题都要描述输入条件、可观察的结果以及证明问题的证据(行号、测试、日志)。
- 考虑与现有客户端的兼容性、并发问题、回滚计划和变更的可观测性,而不仅仅是理想场景。
- 检查新增的测试在没有实际修正的情况下是否会失败——无论变更与否都能通过的测试无法证明任何问题。
- 区分PR中缺失的必要范围(合并阻塞项)与可选的未来改进项(仅作评论,不阻塞)。
- 不要重复自动化工具(如lint、格式化工具或类型检查器)已经覆盖的问题;仅指出自动化工具无法检测到的内容。
- 当未发现问题时,明确声明“此维度未发现问题”,避免使用暗示超出观测范围无风险的表述。
Antipadrões
反模式
- Bloquear por gosto pessoal de nome de variável ou formatação quando o projeto já tem linter configurado para isso — desperdiça o orçamento de atenção da revisão nos achados que importam.
- Aprovar porque "os testes passam", sem checar se o teste novo de fato cobre o comportamento da mudança (teste tautológico ou sem asserção real).
- Revisar arquivo por arquivo sem montar o fluxo entre eles — perde efeitos cruzados, como uma função que muda de assinatura sem todos os chamadores ajustados.
- Reportar "parece inseguro" sem apontar o vetor concreto — achado de segurança sem trust boundary e entrada específica não é acionável.
- 当项目已配置linter时,仍因个人偏好的变量名或格式而阻塞合并——这会浪费审查资源,忽略真正重要的问题。
- 仅因“测试通过”就批准,而不检查新增测试是否真正覆盖了变更的行为(如循环论证的测试或无实际断言的测试)。
- 逐个文件审查却不梳理文件间的流程——会遗漏交叉影响,例如函数签名变更但未调整所有调用者。
- 仅报告“看起来不安全”却未指出具体的攻击路径——没有明确信任边界和特定输入的安全问题不具备可操作性。
Validação
验证
- Revisar o diff completo, incluindo arquivos de configuração, migrations e chamadores/consumidores fora do diff que o comportamento afeta.
- Conferir cada achado relatado contra o estado real do código e da suíte de testes antes de publicar — achado não confirmado não entra no relatório.
- Ordenar a lista final por severidade (probabilidade × impacto), não pela ordem em que os arquivos aparecem no diff.
- Resumir cobertura da revisão (o que foi olhado) e risco residual (o que não foi possível confirmar) ao final.
- Não declarar um diff "seguro" ou "correto" sem a evidência acima — linguagem absoluta sem prova é proibida.
- 审查完整的diff,包括配置文件、迁移文件以及受变更行为影响的diff外的调用者/消费者。
- 在发布报告前,对照代码的实际状态和测试套件确认每个报告的问题——未确认的问题不得纳入报告。
- 最终列表按严重性(概率×影响)排序,而非diff中文件的显示顺序。
- 在报告末尾总结审查覆盖范围(已检查内容)和剩余风险(无法确认的内容)。
- 没有上述证据的情况下,不得声明diff“安全”或“正确”——禁止使用无依据的绝对表述。
Skills relacionadas
相关技能
- fornece reprodução e causa raiz quando o review encontra um defeito ainda não explicado.
$specsfy-specialist-debugging - aprofunda contratos de tipo e
$specsfy-specialist-typescriptaprofunda semântica, teclado e WCAG quando esses riscos aparecem no diff.$specsfy-specialist-web-accessibility - quando o diff tocar identidade, autorização, dado sensível ou entrada externa — a revisão de segurança aprofunda o que esta skill só sinaliza.
$specsfy-specialist-application-security - quando o achado for sobre acoplamento, boundary ou decisão estrutural que o diff expõe, não apenas sobre o diff em si.
$specsfy-specialist-software-architecture - quando a revisão precisar ser refeita após uma resolução de conflito, já que a resolução pode mudar o comportamento resultante.
$specsfy-specialist-merge-conflict-resolution
Leia references/standards.md para as lentes de
revisão, a escala de severidade, o formato de achado e as fontes oficiais de
referência.
- 当审查发现未明确原因的缺陷时,可提供复现方法和根本原因分析。
$specsfy-specialist-debugging - 当diff中出现类型契约相关风险时,可进行深入分析;当出现语义、键盘操作和WCAG相关风险时,
$specsfy-specialist-typescript可进行深入分析。$specsfy-specialist-web-accessibility - 当diff涉及身份、授权、敏感数据或外部输入时,使用——安全审查会深入此技能仅作提示的内容。
$specsfy-specialist-application-security - 当发现的问题涉及diff暴露的耦合、边界或结构性决策时,使用,而非仅针对diff本身。
$specsfy-specialist-software-architecture - 当解决冲突后需要重新审查时,使用,因为冲突解决可能会改变最终行为。
$specsfy-specialist-merge-conflict-resolution
请阅读references/standards.md了解审查维度、严重性等级、问题报告格式及官方参考来源。