All evidence cases
DeepSWE v1.1repositoryPython

Add partial structuring with error recovery to cattrs

Add `partial_structure` and `PartialResult` for recoverable, field-level structuring with nested partial results.

cattrs-partial-structuring-recovery

Normalized profile

What this task asks for

Add `partial_structure` and `PartialResult` for recoverable, field-level structuring with nested partial results. Add `partial_structure` to `BaseConverter` (and top-level). Returns a `PartialResult` with: `value` (partial object or `None`), `is_complete`, `structured_fields` (frozenset of field names successfully structured from input), `failed_fields` (frozenset), `errors` (exception or `None`), `error_map` (field name to Exception). Required fields without defaults make `value` `None`. Nested attrs/dataclass fields should be partially structured recursively. If the nested object is only partially complete, use its partial value and mark the parent field as failed. `PartialResult.refine(data)` returns a new `PartialResult`, fixing failed fields with new data while preserving structured fields.

  • feature implementation
  • data transformation
  • bug repair
  • test and validation
  • library API
  • cattrs
  • repository patch
  • reverse engineering from incomplete or indirect evidence
  • strict behavioral compatibility or exact-output validation

Published evidence

Model × harness outcomes

Counts are tied to these exact configurations. Harnesses are not treated as equivalent across benchmarks.

Models
13
Configurations
41
Trials
164

Showing 41 of 41 configurations

ModelHarnessEffortResultPasses
claude-fable-5vertex_aimini-swe-agentpublished configurationlowAll passed4/4
claude-fable-5vertex_aimini-swe-agentpublished configurationmediumAll passed4/4
claude-fable-5vertex_aimini-swe-agentpublished configurationhighMixed3/4
claude-fable-5vertex_aimini-swe-agentpublished configurationxhighAll passed4/4
claude-fable-5vertex_aimini-swe-agentpublished configurationmaxAll passed4/4
claude-opus-4-8anthropicmini-swe-agentpublished configurationlowNo passes0/4
claude-opus-4-8anthropicmini-swe-agentpublished configurationmediumMixed2/4
claude-opus-4-8anthropicmini-swe-agentpublished configurationhighMixed3/4
claude-opus-4-8anthropicmini-swe-agentpublished configurationxhighMixed1/4
claude-opus-4-8anthropicmini-swe-agentpublished configurationmaxAll passed4/4
claude-sonnet-4-6anthropicmini-swe-agentpublished configurationhighMixed3/4
claude-sonnet-5anthropicmini-swe-agentpublished configurationlowNo passes0/4
claude-sonnet-5anthropicmini-swe-agentpublished configurationmediumMixed1/4
claude-sonnet-5anthropicmini-swe-agentpublished configurationhighMixed1/4
claude-sonnet-5anthropicmini-swe-agentpublished configurationxhighNo passes0/4
claude-sonnet-5anthropicmini-swe-agentpublished configurationmaxNo passes0/4
gemini-3-1-pro-previewvertex_aimini-swe-agentpublished configurationhighMixed1/4
gemini-3-5-flashvertex_aimini-swe-agentpublished configurationmediumMixed2/4
glm-5-2zaimini-swe-agentpublished configurationhighMixed3/4
glm-5-2zaimini-swe-agentpublished configurationmaxMixed3/4
gpt-5-4openaimini-swe-agentpublished configurationxhighMixed2/4
gpt-5-5openaimini-swe-agentpublished configurationlowMixed2/4
gpt-5-5openaimini-swe-agentpublished configurationmediumMixed3/4
gpt-5-5openaimini-swe-agentpublished configurationhighMixed3/4
gpt-5-5openaimini-swe-agentpublished configurationxhighMixed3/4
gpt-5-6-lunaopenaimini-swe-agentpublished configurationlowNo passes0/4
gpt-5-6-lunaopenaimini-swe-agentpublished configurationmediumNo passes0/4
gpt-5-6-lunaopenaimini-swe-agentpublished configurationhighMixed2/4
gpt-5-6-lunaopenaimini-swe-agentpublished configurationxhighMixed2/4
gpt-5-6-lunaopenaimini-swe-agentpublished configurationmaxMixed3/4
gpt-5-6-solopenaimini-swe-agentpublished configurationlowMixed3/4
gpt-5-6-solopenaimini-swe-agentpublished configurationmediumAll passed4/4
gpt-5-6-solopenaimini-swe-agentpublished configurationhighAll passed4/4
gpt-5-6-solopenaimini-swe-agentpublished configurationxhighAll passed4/4
gpt-5-6-solopenaimini-swe-agentpublished configurationmaxAll passed4/4
gpt-5-6-terraopenaimini-swe-agentpublished configurationlowMixed2/4
gpt-5-6-terraopenaimini-swe-agentpublished configurationmediumMixed2/4
gpt-5-6-terraopenaimini-swe-agentpublished configurationhighAll passed4/4
gpt-5-6-terraopenaimini-swe-agentpublished configurationxhighMixed3/4
gpt-5-6-terraopenaimini-swe-agentpublished configurationmaxMixed2/4
kimi-k2-7-codeopenroutermini-swe-agentpublished configurationdefaultMixed2/4