Add bounded-memory spilling to SCC aggregation
Add an opt-in bounded-memory mode that spills per-file aggregation results to disk without changing output.
scc-bounded-memory-spilling
Normalized profile
What this task asks for
Add an opt-in bounded-memory mode that spills per-file aggregation results to disk without changing output. --bounded-memory-max-in-memory-files <int> (required when enabled, must be > 0). Spilling must occur whenever enforcing --bounded-memory-max-in-memory-files would otherwise be violated (e.g., max=1 with many files => spills>0 when stats are enabled). For json, json2, csv, and csv-stream, output content must be byte-for-byte identical to the unbounded --format-multi output. For csv-stream specifically, bounded-memory mode must honor file destinations when specified (e.g., csv-stream:/tmp/out.csv writes the same csv-stream bytes that would have gone to stdout into that file). If using --format-multi, the ordering/concatenation of the combined output must remain identical to current behavior. When sorting is requested, csv-stream must emit rows in that sorted order.
Intent
- feature implementation
- performance optimization
- configuration tuning
- data transformation
Work surfaces
- CLI
- serialization
- network service
Technology
- scc
Expected artifacts
- repository patch
What makes it difficult
- strict behavioral compatibility or exact-output validation
- changes span multiple components or interfaces
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
| Model | Harness | Effort | Result | Passes |
|---|---|---|---|---|
| claude-fable-5vertex_ai | mini-swe-agentpublished configuration | low | Mixed | 1/4 |
| claude-fable-5vertex_ai | mini-swe-agentpublished configuration | medium | Mixed | 2/4 |
| claude-fable-5vertex_ai | mini-swe-agentpublished configuration | high | Mixed | 2/4 |
| claude-fable-5vertex_ai | mini-swe-agentpublished configuration | xhigh | Mixed | 2/4 |
| claude-fable-5vertex_ai | mini-swe-agentpublished configuration | max | All passed | 4/4 |
| claude-opus-4-8anthropic | mini-swe-agentpublished configuration | low | Mixed | 1/4 |
| claude-opus-4-8anthropic | mini-swe-agentpublished configuration | medium | Mixed | 1/4 |
| claude-opus-4-8anthropic | mini-swe-agentpublished configuration | high | Mixed | 3/4 |
| claude-opus-4-8anthropic | mini-swe-agentpublished configuration | xhigh | Mixed | 3/4 |
| claude-opus-4-8anthropic | mini-swe-agentpublished configuration | max | Mixed | 3/4 |
| claude-sonnet-4-6anthropic | mini-swe-agentpublished configuration | high | No passes | 0/4 |
| claude-sonnet-5anthropic | mini-swe-agentpublished configuration | low | Mixed | 1/4 |
| claude-sonnet-5anthropic | mini-swe-agentpublished configuration | medium | Mixed | 3/4 |
| claude-sonnet-5anthropic | mini-swe-agentpublished configuration | high | Mixed | 1/4 |
| claude-sonnet-5anthropic | mini-swe-agentpublished configuration | xhigh | No passes | 0/4 |
| claude-sonnet-5anthropic | mini-swe-agentpublished configuration | max | Mixed | 2/4 |
| gemini-3-1-pro-previewvertex_ai | mini-swe-agentpublished configuration | high | Mixed | 1/4 |
| gemini-3-5-flashvertex_ai | mini-swe-agentpublished configuration | medium | Mixed | 2/4 |
| glm-5-2zai | mini-swe-agentpublished configuration | high | Mixed | 3/4 |
| glm-5-2zai | mini-swe-agentpublished configuration | max | All passed | 4/4 |
| gpt-5-4openai | mini-swe-agentpublished configuration | xhigh | All passed | 4/4 |
| gpt-5-5openai | mini-swe-agentpublished configuration | low | Mixed | 1/4 |
| gpt-5-5openai | mini-swe-agentpublished configuration | medium | Mixed | 3/4 |
| gpt-5-5openai | mini-swe-agentpublished configuration | high | All passed | 4/4 |
| gpt-5-5openai | mini-swe-agentpublished configuration | xhigh | Mixed | 3/4 |
| gpt-5-6-lunaopenai | mini-swe-agentpublished configuration | low | No passes | 0/4 |
| gpt-5-6-lunaopenai | mini-swe-agentpublished configuration | medium | Mixed | 1/4 |
| gpt-5-6-lunaopenai | mini-swe-agentpublished configuration | high | All passed | 4/4 |
| gpt-5-6-lunaopenai | mini-swe-agentpublished configuration | xhigh | All passed | 4/4 |
| gpt-5-6-lunaopenai | mini-swe-agentpublished configuration | max | All passed | 4/4 |
| gpt-5-6-solopenai | mini-swe-agentpublished configuration | low | Mixed | 3/4 |
| gpt-5-6-solopenai | mini-swe-agentpublished configuration | medium | Mixed | 2/4 |
| gpt-5-6-solopenai | mini-swe-agentpublished configuration | high | Mixed | 3/4 |
| gpt-5-6-solopenai | mini-swe-agentpublished configuration | xhigh | All passed | 4/4 |
| gpt-5-6-solopenai | mini-swe-agentpublished configuration | max | All passed | 4/4 |
| gpt-5-6-terraopenai | mini-swe-agentpublished configuration | low | No passes | 0/4 |
| gpt-5-6-terraopenai | mini-swe-agentpublished configuration | medium | Mixed | 2/4 |
| gpt-5-6-terraopenai | mini-swe-agentpublished configuration | high | Mixed | 3/4 |
| gpt-5-6-terraopenai | mini-swe-agentpublished configuration | xhigh | Mixed | 3/4 |
| gpt-5-6-terraopenai | mini-swe-agentpublished configuration | max | All passed | 4/4 |
| kimi-k2-7-codeopenrouter | mini-swe-agentpublished configuration | default | Mixed | 2/4 |