Repository navigation
Conversation
AK (2026-11-06) approved stopping the wait for supplementary information once the required information is in. Under the observed source the life inputs (UV, pollen, food poisoning, sunrise and sunset) no longer hold an answer once the grids, RSS, mid forecast, observations, air and warnings are in: the answer takes what the process holds and their owned reads and acquisitions continue. The narrative is read beside the snapshot from the request's province and attached only when that read has ended. The legacy-path source keeps its joins. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review of #2865 (OPT-life-continuation): dropping the life load when the required inputs were in also dropped the acquisitions its first read would lead to, so nothing acquired them until another request came. The load now runs as its own task; the answer takes the held life data and the task goes on to read, acquire and read back. The test holds the UV listing past the answer and sees the acquisition start and publish with no further request. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Cross-provider review (Codex gpt-6.1-sol, high, read-only) Round 1 on Required
Recommended
Reviewer availability: the additional Grok and Gemini reviewers were not launched (permission classifier refusal, recorded for #2863). 🤖 Generated with Claude Code |
|
Merge-ready (not merged): head 🤖 Generated with Claude Code |
Follow-up of #2864 on master. Draft: AK decides on the merge, because a first response may now lack supplementary data that is not held yet.
Why
On 2026-11-06 the EC2 run of #2864 showed first requests on stored data ending at about 3.0 s for both binaries, 3.01 to 3.05 s at the client in six of ten runs. The forecast, observations and air were in by about 2.2 to 2.5 s. The life arm (the UV index walking earlier slots) waited to its 2.7 s bound, and the narrative read after the assembly added 0.1 to 0.3 s. AK approved option 2: once the required information is in, stop waiting for supplementary information such as the UV index or the forecast narrative.
What changes
Under the observed source:
prepare, from the request's province. The answer takes it only if the read has ended when the answer is assembled. Otherwise the read continues and fills the 30 s narrative cache.The required inputs keep their bounds (2.5 s, air 2.7 s). The legacy-path source (
S3Source::new) keeps joining the life inputs and waiting for the narrative.The required inputs and the life arm are counted in one join, each input on the heap. Passing the joined inputs by value overflowed the 2 MiB worker stack in debug builds.
Verification
-D warnings, the placement gate and the artifact policy. Mutations of each rule fail their tests.Not run: an EC2 measurement of this change.
Decisions for AK
🤖 Generated with Claude Code