Environment: Azure Container Apps Job (D32-benchmark, 32 vCPU / 64 GiB), westus3 ClickHouse Cloud Production tier (3 replicas × 16 vCPU × 64 GiB) Connection: HTTPS, Compression=true, set_async_insert=1, set_wait_for_async_insert=0 PBP sink: clickhouse (direct bulk-copy, 4-way parallel per chunk) Season context: ENABLED (first attempt at 100K scale) Job execution: oc-exp-1k-p32-qfiramd Image: commit 363a7726 (season accumulator wiring) Backend: clickhouse, Scale: 100000 worlds, Environment: local Streaming mode: totalWorlds=100000, chunkSize=500 [parallel=32] PBP sink: clickhouse at ./pbp-parquet Result: FAILED with OOM after ~3 hours. Error: Unhandled exception. ClickHouse.Driver.Copy.ClickHouseBulkCopySerializationException: Error when serializing data ---> System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown. Pod exit code 139 (SIGSEGV / OOM). Root cause: AmericanFootballSeasonAccumulator retains per-world state in nested dictionaries (Dictionary>). At 10K scale this accounted for ~27 GB of the 41.4 GB peak RAM (observed in the preceding 10K full-pipeline+season run). Linear projection to 100K: ~270 GB — 4× the container's 64 GiB limit. The container OOM'd during one of the PBP bulk-copy serialisations while the season accumulator was holding 100K worlds worth of state. Fix (not applied): refactor AmericanFootballSeasonAccumulator to match the game accumulator pattern. Pre-allocate one double[worldCount] per outcome at construction (or first use), write into positions by absolute world index. Footprint becomes 1,668 outcomes × 100K × 8 bytes ≈ 1.3 GB regardless of scale, same as the game accumulator's per-game state. ~2-hour code change in LBS.Model.AmericanFootball.Accumulation. Status: 100K full-pipeline WITH season context not viable with current accumulator design. Highest validated full-pipeline+season scale is 10K (1,088s / 18.1 min). The 100K full-pipeline without season context SUCCEEDED in 9,887s (2h 44m); see streaming-cloud-scale-100000-fullpipeline- prod3x16.txt for that run's numbers.