Repository navigation
tests: balance the ownership-manifest control shards by checker work, drop the stale 180 s wording - #585
Merged
Conversation
…ith a doc-lint rule that holds it Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
… drop the stale 180 s wording test_selected_window_ownership_manifest_controls_shard_1of4 took 74 s on an idle 8-vCPU box while shards 2-4 took 41-50 s (the modulo split over sorted case ids put the heaviest controls together). The four rows carry no explicit TIMEOUT any more (#504 removed it) but the tree still described a 180 s budget and the CMake guard still exempted the exact old statement. - Shards are now assigned largest-first to the lightest shard, with a weight per case read from its AST (checker subprocess launches, through self helpers and literal loops). No measured seconds are stored. The partition stays exact, order independent and deterministic; --shard I/N validation and the "ran N tests as selected" fail-closed check are unchanged. - The two 60 s subprocess deadlines inside the controls are removed. - scripts/check_cr150_cmake_d.py no longer exempts the old six-row "TIMEOUT 180" statement, and its test now requires the refusal. - docs/ci.md, tests/ownership/README.md and the CMake comment describe the balancing and no deadline. - New rows: balance bound (max/min <= 5/4, violated by the old split) and an estimator row; the partition row now checks input-order independence. Documentation sentences removed from docs/ci.md, all introduced by 375795a (the change that split the ownership manifest controls into four CTest shards): the sentence saying that change splits the controls into four CTest shards (`test_selected_window_ownership_manifest_controls_shard_1of4` through the fourth), the sentence saying it adds three public registered/run rows to every engine profile in both fixture worlds and only raises the counts above the pinned minimum floors, and the sentence saying the private-fixture and receipt row populations stay the same. The replacement paragraph states the balanced four-shard split and the unchanged row populations. Measured on a throwaway 8-vCPU spot VM: shards 51/57/53/55 s after, 74/42/41/50 s before. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Attribute exclusive opens and fork-descendant scratch files to their creating process, keep unrelated co-tenants out of the witness, and report the offending path with its PID or an explicit unattributable reason. Add three public Linux CTest cases for exclusive open, inherited evidence, and diagnostics. Carry the three rows through verifier floors and mock accounting. Preserve documentation line counts and refresh the floor-table citations. Documentation replacements from 3ea5a0d name the old wording: "Their default runs now enter strict exclusion accounting" "Verifier 8 + preflight 8 + command-after 8 + report 4 add 28 public rows; plain Debug-type runs enforce the increased registration floors." "Release 938 with the overlay or 631 without it" "The floor itself remains fixed at 631/334 absent or 938/365 present" "The native PR registration floor is 1000" "Both numbers are constants of the profile" "The full-run release and kernel floors are the table's own numbers above" "EXCLUDED_REGISTERED_MIN holds 904 for debug, 895 for sanitizers" "The run floors in the table above" The release and kernel table rows from 3ea5a0d use the new floors. The population wording and table header from b97c409 are replaced: "The registered column is why the absent floor is not the absent registration, and it is to be re-measured after the registration fix lands." "registered (present / absent)" The four citation edits retain the passages named by: "The floors' numbers live in one place" "Each profile counts the rows that" "the minimum number of CTest rows" "The profile carries a row floor" Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
Corrects four comments that no longer match the code they describe, and one stale line number in a script comment: - scripts/ci_verify.py: the selected-sink memory test is registered at its current line of tests/CMakeLists.txt. - tests/test_scratch_create_pinned_text.cpp: the header names the files that produce the pinned create diagnostics instead of a release. - src/source/pine_adapter.cpp: the placement table scans the retained placements and consults the historical minima for erased rows; it has no per-id index. - include/pineforge/native_host.hpp: the live-order read comment no longer claims the reads allocate nothing, since a spilled row is read into a buffer. No code changes. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
… path it pins The header named two producing files; the test also pins the id-pair scratch file and the successor-roots create. It now lists all four scratch paths by what they are, and drops a stale note about an unobserved prediction. Comment text only. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
… capital export edit The export added to the report writer moved the argument parser and the selected-window helpers of docker/run_json.py by 16 lines (17 for the parser's flags), so eleven citations in the public contract page pointed at neighbouring lines. They cite the same functions and flags again. Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Replaces #561 as one fresh commit (same change).
tests: balance the ownership-manifest control shards by checker work, drop the stale 180 s wording
test_selected_window_ownership_manifest_controls_shard_1of4 took 74 s on an idle
8-vCPU box while shards 2-4 took 41-50 s (the modulo split over sorted case ids
put the heaviest controls together). The four rows carry no explicit TIMEOUT
any more (#504 removed it) but the tree still described a 180 s budget and the
CMake guard still exempted the exact old statement.
case read from its AST (checker subprocess launches, through self helpers and
literal loops). No measured seconds are stored. The partition stays exact,
order independent and deterministic; --shard I/N validation and the
"ran N tests as selected" fail-closed check are unchanged.
"TIMEOUT 180" statement, and its test now requires the refusal.
balancing and no deadline.
estimator row; the partition row now checks input-order independence.
Measured on a throwaway 8-vCPU spot VM: shards 51/57/53/55 s after, 74/42/41/50 s
before.
🤖 Generated with Claude Code