Test fixture
Secure code changes, vulnerability recognition, and safe defaults.
The model receives the prompt (and optional system message). The run uses scorer rubric_json_metrics with the JSON configuration below. Pass/fail and partial credit are determined entirely by that scorer against the model output; no human grading.
Return JSON only with keys verdict, risk, mitigation. Review CSP generation that reuses the same nonce for every request and allows unsafe-inline.
{
"metrics": {
"correct": {
"checks": [
{
"contains": [
"CSP"
]
},
{
"contains": [
"nonce"
]
},
{
"contains": [
"unsafe-inline"
]
},
{
"contains": [
"per request"
]
},
{
"contains": [
"script-src"
]
}
]
},
"hidden": {
"checks": [
{
"contains": [
"random"
]
},
{
"contains": [
"base64"
]
},
{
"contains": [
"strict-dynamic"
]
},
{
"contains": [
"do not reuse"
]
},
{
"contains": [
"header"
]
}
]
}
}
}temperature
0
max_tokens
420
timeout (s)
120
type
scored
file
sec-csp-nonce-validator.json