Files
cleveragents-core/robot/semantic_escalation.robot
freemo db5e5c974f
CI / lint (pull_request) Successful in 14s
CI / typecheck (pull_request) Successful in 31s
CI / security (pull_request) Successful in 30s
CI / quality (pull_request) Successful in 15s
CI / benchmark-publish (pull_request) Has been skipped
CI / build (pull_request) Successful in 15s
CI / unit_tests (pull_request) Successful in 1m58s
CI / integration_tests (pull_request) Successful in 3m24s
CI / docker (pull_request) Successful in 40s
CI / coverage (pull_request) Successful in 4m3s
CI / lint (push) Successful in 12s
CI / typecheck (push) Successful in 33s
CI / quality (push) Successful in 15s
CI / security (push) Successful in 30s
CI / unit_tests (push) Successful in 2m7s
CI / build (push) Successful in 15s
CI / benchmark-regression (push) Has been skipped
CI / integration_tests (push) Successful in 2m57s
CI / docker (push) Successful in 43s
CI / coverage (push) Successful in 4m14s
CI / benchmark-publish (push) Successful in 14m12s
CI / benchmark-regression (pull_request) Successful in 31m33s
feat(autonomy): implement semantic escalation with confidence scoring and threshold comparison
2026-03-04 12:18:51 -05:00

70 lines
3.6 KiB
Plaintext

*** Settings ***
Documentation End-to-end tests for Semantic Escalation confidence scoring
Resource ${CURDIR}/common.resource
Suite Setup Setup Test Environment
Suite Teardown Cleanup Test Environment
*** Variables ***
${HELPER_SCRIPT} robot/helper_semantic_escalation.py
*** Test Cases ***
Confidence Computation With All Factors High
[Documentation] All positive factors produce high confidence
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} confidence-high cwd=${WORKSPACE}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} confidence-high-ok
Confidence Computation With All Factors Low
[Documentation] All negative factors produce zero confidence
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} confidence-low cwd=${WORKSPACE}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} confidence-low-ok
Threshold Comparison Proceeds When Above
[Documentation] Proceed when confidence >= threshold
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} threshold-proceed cwd=${WORKSPACE}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} threshold-proceed-ok
Threshold Comparison Escalates When Below
[Documentation] Escalate when confidence < threshold
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} threshold-escalate cwd=${WORKSPACE}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} threshold-escalate-ok
Historical Success Tracking Records And Retrieves
[Documentation] Success rate updates after recording outcomes
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} history-tracking cwd=${WORKSPACE}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} history-tracking-ok
Escalation With Manual Profile Always Escalates
[Documentation] Manual profile (threshold 1.0) always escalates
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} profile-manual cwd=${WORKSPACE}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} profile-manual-ok
Escalation With FullAuto Profile Always Proceeds
[Documentation] Full-auto profile (threshold 0.0) always proceeds
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} profile-fullauto cwd=${WORKSPACE}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} profile-fullauto-ok
Escalation With Cautious Profile Uses Intermediate Thresholds
[Documentation] Cautious profile proceeds only with sufficient confidence
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} profile-cautious cwd=${WORKSPACE}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} profile-cautious-ok
EscalationDecision Model Captures All Fields
[Documentation] Decision model includes all required fields
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} decision-fields cwd=${WORKSPACE}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} decision-fields-ok
Zero Threshold Always Proceeds Even With Zero Confidence
[Documentation] Spec: threshold 0.0 means always automatic
${result}= Run Process ${PYTHON} ${HELPER_SCRIPT} zero-threshold cwd=${WORKSPACE}
Should Be Equal As Integers ${result.rc} 0
Should Contain ${result.stdout} zero-threshold-ok