You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
One deeply nested resource freezes the whole resources file #13
Free-form fields accept arbitrary nesting: ProviderKey request.default_body_fields values, Model semantic.classifier.on_failure and semantic.on_embedding_failure. The gateway's YAML parser caps document depth (yaml-rust2 stores the level as a u8), and exceeding it is an unscoped (file) error (filesource/mod.rs#L417). Assemble then fails the whole document (assemble.go#L229).
Reproduce
250 nested objects under default_body_fields.x load; 251 fail with (file): YAML parse error: recursion limit exceeded. Every resource then shows ConfigurationRejected, and no change is written for anyone until the culprit is removed. The apiserver accepts far deeper bodies (about 10000 levels).
Impact
Anyone who can create a ProviderKey or Model can freeze configuration for the namespace. Serving continues on the last good file.
Scores
Reproducibility
Likelihood
Severity
Existing mitigations
Detectability
Test coverage
Fix cost vs benefit
10
2
6
1
6
2
8
Scores are out of 10. Higher is worse for likelihood and severity. Higher is better for mitigations, detectability, test coverage and cost vs benefit (10 = cheap fix, high value).
Fix
Cap nesting at render time (for example 128 levels per entry) with Rendered.Err, so only that resource falls back.
Activity