Govern wire schemas from TypeSpec

This commit is contained in:
ms2k 2026-07-19 02:00:47 +09:00
commit 2020dd4ed3

View file

@ -340,7 +340,24 @@ where
T: DeserializeOwned + Serialize,
{
let dto: T = serde_json::from_value(value.clone()).unwrap();
assert_eq!(serde_json::to_value(dto).unwrap(), value);
let serialized = serde_json::to_value(&dto).unwrap();
assert_eq!(serialized, value);
if matches!(
definition,
"ClaimRequest"
| "AttemptRenewRequest"
| "AttemptActivateRequest"
| "AttemptStopRequest"
| "AttemptStagingObjectRequest"
| "AttemptStagingWriteIntentRequest"
| "AttemptStagingMultipartRequest"
| "AttemptResolvedSourceRequest"
| "AttemptCheckpointRequest"
| "AttemptProgressRequest"
| "AttemptOutcomeRequest"
) {
assert!(remora_contracts::request_is_valid(definition, &dto));
}
validate_openapi_value(component_schema, definition, &value);
}