Skip to content

Flake batch 5: task-bundle lock, storm config publish, macOS thread inventory - #1051

Merged
ualtinok merged 6 commits into
mainfrom
land/flake-batch-5
Oct 27, 2026
Merged

ualtinok merged 6 commits into
mainfrom
land/flake-batch-5

Conversation

@aft-alfonso

@aft-alfonso aft-alfonso Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

Test-only fix for a merge-queue failure.

  • subc::tool_provider::route_tests::occipital_task_observation_is_limited_to_bound_session wrote two sessions' task bundles with task_paths + write_task, replaying each session in between. The first replay's detached GC could remove the second session's still-empty directory before its metadata was written (Linux, PR land: route-project-from-stamp #996's merge group: write_task NotFound). It now allocates through create_task_layout and writes with write_task_at, the same fix the consent scratch-task test got in Merge-queue flake batch 2 #1043.

Build server: -D warnings check; the test passed in 5 of 5 loops.

ualtinok and others added 6 commits October 27, 2026 15:50
…session lock

occipital_task_observation_is_limited_to_bound_session wrote two sessions'
task bundles with task_paths + write_task, replaying each session in between.
The first replay's detached GC can remove the second session's still-empty
directory before its metadata is written (Linux, PR #996's merge group:
write_task NotFound). Same fix as the consent scratch-task test: allocate
through create_task_layout and write with write_task_at.

Co-authored-by: alfonso-aft <289616620+alfonso-aft@users.noreply.github.com>
Co-authored-by: alfonso-aft <289616620+alfonso-aft@users.noreply.github.com>
Co-authored-by: alfonso-aft <289616620+alfonso-aft@users.noreply.github.com>
…ers too

The frame-pointer walk yields return addresses, so it names the running
function's caller outward and never the running function. A spawned
thread sampled while executing its own closure's code (or entering or
leaving a callee before its frame record exists) therefore had no saved
frame naming the closure, and the inventory reported only
'thread_start > _pthread_start'. This made
thread_inventory_lists_a_new_unnamed_thread_with_its_start_routine fail
intermittently on macOS CI, and would leave a real retained thread
anonymous in a retention failure.

The start routine search now falls back to the program counter's
function and then, on arm64, the function the link register returns
into. A hand-built-stack test covers both cases deterministically.

Co-authored-by: alfonso-aft <289616620+alfonso-aft@users.noreply.github.com>
Co-authored-by: alfonso-aft <289616620+alfonso-aft@users.noreply.github.com>
Co-authored-by: alfonso-aft <289616620+alfonso-aft@users.noreply.github.com>
@aft-alfonso aft-alfonso Bot changed the title Flake batch 5: occipital task test allocates bundles under the session lock Flake batch 5: task-bundle lock, storm config publish, macOS thread inventory Oct 27, 2026
@ualtinok
ualtinok added this pull request to the merge queue Oct 27, 2026
Merged via the queue into main with commit f2e83d1 Oct 27, 2026
91 of 92 checks passed
@ualtinok
ualtinok deleted the land/flake-batch-5 branch October 27, 2026 17:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant