Persist security risk scores in rollout history (#38363)

## What changed

- Add a `SecurityRiskScore` rollout item containing a category and numeric score.
- Persist the item in both thread history modes while excluding it from model context, user-visible thread history, search text, forks, and reconstructed conversation history.
- Re-export the score type from the extension API.

## Testing

- Cover serialization, persistence and loading, thread history projection, session reconstruction, append planning, and memory filtering.

GitOrigin-RevId: 1926fe366aeaa75052708a6da589f45a38eefb52
This commit is contained in:
jif
2026-08-13 11:50:47 +00:00
committed by copyberry
parent 9ed0047a61
commit 72fa74fbc9
32 changed files with 165 additions and 4 deletions

View File

@@ -35,6 +35,7 @@ pub mod protocol;
pub mod request_permissions;
pub mod request_user_input;
pub mod review_format;
pub mod security_risk;
pub mod shell_environment;
pub mod turn_input;
pub mod user_input;

View File

@@ -0,0 +1,13 @@
use schemars::JsonSchema;
use serde::Deserialize;
use serde::Serialize;
/// A durable, thread-owned security risk classifier score.
///
/// These records belong to rollout history only and must not enter model-visible
/// conversation context or user-visible thread item projections.
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize, JsonSchema)]
pub struct SecurityRiskScore {
pub category: String,
pub score: f64,
}