Repository navigation
Sync from RecastEngine-Pro: 17-21 September - #20
Merged
Merged
Conversation
- Cache the tree-level analysis once per file revision - Build the use resolver's index once per search path Signed-off-by: lewisychen <yueqichen.0x0@gmail.com> Carried-From: 30d24fa6e473bf7873fe5f746c2fb6fe70be4d94
The source side's rule -- a subscript reads the names in the axis's declared lower bound, because the translation spells the shift -- was applied to plain arrays and associate aliases, for every axis. The emitter shifts an element or an edged section and spells nothing for a bare ':', and it resolves a directly subscripted component's origin from the type record's allocated dims. So col_pp%z(c,1) read nlevsno on the target and not the source, and bmatrix(begc:endc, :, :) read it on the source and not the target, and static.rwset failed HydrologyNoDrainage and SoilTemperature on the whole-step recordings. bound_reads(dims, subscripts) is the one rule now, per axis, skipping a bare ':'; it is applied to plain array reads, write targets, OUT actuals, and, through component_bound_reads, to root%comp(subs). Aliases keep the dims-at-binding behaviour. The verifier is untouched. Closes 107. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Signed-off-by: lewisychen <yueqichen.0x0@gmail.com> Carried-From: 38d2a7c8816410803e886f574641f544269f50f4
…olerance the reference did not need A recording as the reference ran the real LAPACK; the translation's `dgbsv` is recast's own reference implementation, which eliminates in textbook order where a blocked library does not. ELM's SoilTemperature came to `differential.bitexact` with 1,926,692 of 1,929,936 points bit-exact and the 3,244 that were not all downstream of the solve at 1.9e-11 relative, and the verdict said "no rtol excuses them" with no way to say why. The transform now records what it stood in for and which subprograms reach it (`notes["references"]["stood_in"]`, from `references.stood_in` and `references.reaching`, the latter moved from the f2py oracle, which asks the same question of the same records). The gate measures those subprograms apart (`metrics["stood_in"]`), names the stand-in on every verdict the way `substituted` already names a stand-in on both sides, and, when every differing point is downstream of one, says so and what would excuse it. `stood_in_rtol` is the operator's grant of a relative tolerance to exactly those subprograms: with it the verdict is `toleranced`, states the tolerance, and says how many points outside the solve were bit-exact. A difference anywhere else fails as before, whatever was granted; a stand-in on both sides is not attributed; the tolerance gate keeps its own tiers and gains only the naming. Closes 109. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YQ16296JcBrKdbo1q1nKXa Signed-off-by: lewisychen <yueqichen.0x0@gmail.com> Carried-From: a5724f6511923fc374e01397cc626cb2c93d6773
…sources
The verification half of RecastEngine-Pro 93, carved out file for file
with no edit: the forward.python-jax Verifier and its frozen declaration,
worker and recorded-source provenance (verify/_forward_workload,
forward_workload, forward_workload_worker, forward_workload_verifier,
recorded_source), the worker-timeout and non-finite-verdict changes to
python_accelerators, the portable {"$workspace": ...} stage input
(workspace_resources.py, resolved in run.py and phases.py), the plugin
entry in pyproject.toml, and the tests that reach only these. Independent
of parts 1 and 3: it imports nothing from the generation rules or the
reconstruction stage.
The code is Qinrun Dai's, from 93 at 0b77daf; the split is the only
authorship of this commit.
Co-authored-by: Qinrun Dai <mouseisnotalwaysmouse@outlook.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YQ16296JcBrKdbo1q1nKXa
Signed-off-by: lewisychen <yueqichen.0x0@gmail.com>
Carried-From: 67e9c4991bafc19132a1507aa7227b51bb5f6726
… landed check_hygiene.py reported six lines, none from this week's merges: tools/export/replacements.txt (three), docs/roadmap.md (two) and docs/tier/allowlist.md (one), all naming the private translator or the domain extension. The substitution table necessarily contains the names it rewrites out of the export, so it joins NOTICE in EXEMPT with its reason; the roadmap's two mentions become "the translator", the spelling the table itself prescribes, and the dead link goes; the allowlist row says "the domain extension". The checker is clean on the tree. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YQ16296JcBrKdbo1q1nKXa Signed-off-by: lewisychen <yueqichen.0x0@gmail.com> Carried-From: 6dc1de3d4842e17e9b3eff22ff86eb8c13cde5d6
…ward-workload tests are withheld tests/test_bitexact_stood_in.py imported ToleranceVerifier at module level, which the public edition does not ship, so its whole file failed to collect there; the one test that needs it now importorskips. The forward-workload tests and their fixture import PythonToJaxRecipe from the withheld recipes, so they are withheld too. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YQ16296JcBrKdbo1q1nKXa Signed-off-by: lewisychen <yueqichen.0x0@gmail.com> Carried-From: a5db29546e9e86d667c3d184cedcd10ecccf2b8f
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YQ16296JcBrKdbo1q1nKXa Signed-off-by: lewisychen <yueqichen.0x0@gmail.com> Carried-From: 303258c0f79a1dec34197c3eb4e48da29b3a5f64
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.
Carried by tools/export sync; each commit names its origin in a Carried-From trailer.