new feature: External guardrails/judges

This commit is contained in:
2026-08-24 11:14:10 -03:00
parent 05373deff2
commit fd37138c4f
384 changed files with 40593 additions and 3621 deletions

View File

@@ -8,11 +8,13 @@ def test_original_default_guardrails_estao_ativos_no_pipeline_framework():
inputs={x['code'] for x in cfg['input'] if x.get('enabled')}
outputs={x['code'] for x in cfg['output'] if x.get('enabled')}
assert {'MSK','INPUT_SIZE','PINJ','COER'} <= inputs
assert {'OOS','AOFERTA','REVPREC','FRASEOLOGIA','CMP'} <= outputs
assert {'TIM_OOS','TIM_AOFERTA','TIM_REVPREC','CMP'} <= outputs
assert 'OOS' not in outputs and 'AOFERTA' not in outputs and 'REVPREC' not in outputs
def test_framework_loader_instancia_coer_e_fraseologia():
def test_framework_loader_instancia_coer_e_preserva_fraseologia_tim_desabilitada():
loaded=load_guardrails_config('config/guardrails.yaml')
codes={getattr(x,'code','') for rails in (loaded.input_rails, loaded.output_rails, loaded.retrieval_rails, loaded.tool_rails) for x in rails}
assert 'COER' in codes
assert 'FRASEOLOGIA' in codes
assert 'FRASEOLOGIA' not in codes
assert 'TIM_FRASEOLOGIA' not in codes # permanece comentado/desabilitado como no source de entrada