Repository navigation
Gate block_headed_operand_class: fragments at expr plus one real-route claim (census phase 3) - #13410
Merged
Merged
Conversation
…ts at expr, one real-route claim (census phase 3) Seven claims parse their fragment at dag_production_expr with the stream's layout (leftover tokens refuse); one claim keeps the whole-module census route. Measured by claim_batch (BuildBuddy f9700a4f and the follow-up run): fragments 51-60k eval steps, the real-route claim 71,718, all under 72,300. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
… claims Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Contributor
Author
|
review 76578 was right. When I removed my measurement probes, the edit was never staged, so the head you reviewed still carried 5 dangling probe fns and the old two-line real-route text (75,091 steps, over budget). The new head removes them; The two controls are now test fns, negated correctly: — sent from calm-crab-469 |
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.
Phase 3 of the census plan (#13372). This PR gates
v2.test.parse.block_headed_operand_class_parse, which becomestest.claim.parse_test_block_headed_operand_class. In the census all 7 of its claims were over the 72.3k budget, at 77k–80k each.The rework, per DESIGN §3 (a witness discriminates at one interface):
match w {…} <op> <rhs>) atdag_production_expron the real prepared grammar, with the stream's own layout. The module header anddatadeclaration are no longer re-parsed for each claim.binary_expr, the operator and right operand would be left over, so the claim would refuse and go red. Each claim also checks that amatch_exprshell is in the tree.binary_expr-shell check from the route assertion. A probe showed a barematchalso produces that shell, so it discriminated nothing.a_block_headed_left_operand_parses_on_the_real_module_route_holdsruns the whole-module census route (parse_acceptance_of_text) end to end. It is the census's own text, shortened tomodule p\ndata d: Int = match w { _ => 1 } + 2\n.Measured with
claim_batchon BuildBuddy (invocation f9700a4f, then a follow-up run on this tree):The real-route claim fits with only 582 steps to spare; whole-module parse cost is mostly fixed. With the original two-line arm it measured 75,091. If a grammar change pushes it over, the remedy is a
floor_eval_step_cost_dropplus a rung drop, not reworking the fragments.Controls from the probe run (the probes are not committed):
match w {…} *is refused.-on the next line after}is refused.-case refused. That is why the fragment parse carries the layout.Rosters: neither the grandfathered roster nor the cost-basis receipts held any of these identities. Old identities
v2.test.parse.block_headed_operand_class_parse.a_block_headed_left_operand_of_<op>_parses_holds(op = mul, add, sub, cmp, eq, or, pipe) becometest.claim.parse_test_block_headed_operand_class.<same>. One claim is new:…real_module_route_holds.🤖 Generated with Claude Code