Issues and pull requests upstreamed to projects maintained by others — cloud infrastructure, storage engines, and autoscaling research. For projects I built and maintain myself, see Projects.
Time-to-first-byte 11.28s → 0.004s on a 700 KB streaming target
Returned a StreamingResponse from the ALB data plane and pumped the body with read1 off the event loop, so bytes reach the client as the target produces them. Also stopped stripping Content-Length, so a proxied response keeps the framing its target chose.
Reported that the ALB read a target's entire response before returning, so streaming targets were delivered only once complete. Benchmarked the same request through Caddy and through Ministack, traced it to a single function, and cited the AWS documentation for the relay behaviour a faithful emulator owes.
RetryingObjectStore retried transient failures for every operation except multipart uploads, so a failed part surfaced straight to callers even with retries configured indefinitely. The high-level API cannot retry a part because it assigns indexes internally; switching to the low-level MultipartStore API, where parts carry explicit indexes, lets a failed part be re-uploaded in place.
A prefix-only Bloom filter built from an SST whose extractor yielded no prefix for any key was persisted with zero bits, so the first probe computed hash % 0 and panicked. Guarded might_contain to report a miss on an empty filter, with a proof that the skip introduces no false negatives and leaves unextractable keys reachable.
Corrected the single exponential smoothing predictor and added double and triple exponential smoothing with modified upper bounds — the forecasting layer the published autoscaling architecture is built on.
Replaced unconstrained randomisation of triple exponential smoothing constants with a controlled scheme, making simulation runs reproducible and comparable.
Reported that WeightedMovingAverage and WeightedMovingAverageFibonacci apply weights in increasing order against a parameter list ordered oldest-last, so the weighting favours stale history rather than recent observations.