fix: enforce min/max range separation in norm builder and enforce non-compliant overall status in analyzer

This commit is contained in:
2026-06-23 20:14:47 +00:00
parent e52b9eff89
commit 7f52e3e8ed
+3 -2
View File
@@ -162,7 +162,8 @@ Sua tarefa principal é transcrever com precisão matemática e zero alucinaçã
5. **Orientação:** Rotacione mentalmente a imagem para ler corretamente.
### ANÁLISE DE CONFORMIDADE:
- Compare os valores reais extraídos com os requisitos mínimos/máximos da norma técnica declarada no certificado.`;
- Compare os valores reais extraídos com os requisitos mínimos/máximos da norma técnica declarada no certificado.
- REGRA CRÍTICA DE STATUS GERAL: Se QUALQUER item (mecânico, químico ou outro) for avaliado como "REPROVADO", o status geral do laudo ("compliance.status") DEVE ser OBRIGATORIAMENTE "NÃO CONFORME". Só atribua "CONFORME" se ABSOLUTAMENTE TODOS os itens individuais forem "OK".`;
if (standardsContext && standardsContext.length > 0) {
prompt += `\n\n=== BANCO DE NORMAS LOCAL (USO OBRIGATÓRIO) ===\n`;
@@ -529,7 +530,7 @@ RESPONDA APENAS UM JSON VÁLIDO no seguinte formato EXATO:
Regras Cruciais:
1. USE APENAS NÚMEROS (floats/ints) nos valores. NUNCA use strings como "0.25" ou "250". Use 0.25 e 250.
2. Se a norma não especifica um limite máximo ou mínimo para um elemento, coloque null (sem aspas).
3. O nome da chave dentro de mecânicos/químicos/físicos deve ser em minúsculo, sem acentos, com underscores, e deve conter a unidade ou a palavra min/max (ex: "limite_escoamento_min_mpa", "carbono_max_percentual", "espessura_min_microns").
3. O nome da chave dentro de mecânicos/químicos/físicos deve ser em minúsculo, sem acentos, com underscores, e DEVE conter a palavra "_min_" ou "_max_" (ex: "limite_escoamento_min_mpa", "carbono_max_percentual"). Se a norma define uma FAIXA (um mínimo e um máximo) para o mesmo elemento, você DEVE criar DUAS chaves separadas (ex: "columbio_min_percentual" e "columbio_max_percentual"). NUNCA combine min e max na mesma chave.
4. Crie APENAS os grupos (mecanicos, quimicos, fisicos) que fazem sentido para a norma solicitada.
5. DEVOLVA APENAS O JSON, sem nenhuma formatação ou texto explicativo ao redor.`;