passages: smooth 12 m lower-mouth radius taper; all four-strate passages pass (L68, v213)
The FI->TN wall beat (4.77 cm at 7.06 m) was the lower-mouth flare: the full mouth radius was assigned to the penultimate control point, a one-segment radius jump. The shared route builder now blends to the mouth radius over 12 m with a smoothstep. Wall ripple 1-2: 7.27 -> 1.62 cm. All three passages pass support/blocked/grade/ripple/naturalness; controls detected. Fast tier 269/269 incl. the new-plan stage; W1/W8/W12 equal, Clang and GCC. Hash pins: FI style 2 re-pinned at v213. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016dhxM43dnWvUu2B5Ph1iG1
This commit is contained in:
1 parent
087333bf8a
commit
bd7bba994c
10 files changed
+677
-12
No files matched your search
@@ -30,6 +30,7 @@ LINUX56 = ROOT / "Standalone/Research/WorldAssemblerM3/Linux56"
|
||||
LINUX58 = ROOT / "Standalone/Research/WorldAssemblerM3/Linux58"
|
||||
LINUX60 = ROOT / "Standalone/Research/WorldAssemblerM3/Linux60"
|
||||
LINUX67 = ROOT / "Standalone/Research/WorldAssemblerM3/Linux67"
|
||||
LINUX68 = ROOT / "Standalone/Research/WorldAssemblerM3/Linux68"
|
||||
OWNER = ROOT / "Standalone/data/regression/owner_world_2strate_l61.json"
|
||||
OWNER_NEW = ROOT / "Standalone/data/owner_world.json"
|
||||
OWNER_2STRATE_SHA256 = "7b095f9bcc6b90133d5a463f99f0b571133b2c549ce1ecf2d64fe9175e41e183"
|
||||
@@ -101,6 +102,16 @@ RECIPE_RE = re.compile(
|
||||
r"^\[WorldAssemblerRecipeAudit\] requested=([^ ]+) actual=([^ ]+).*status=([^ ]+)$", re.M)
|
||||
|
||||
|
||||
def owner_hash_baseline(recipe: str, style: int) -> tuple[Path, str]:
|
||||
if recipe == "surface-world" and style == 1:
|
||||
return (LINUX67 / "hash-baselines" / "owner-hash-surface-world-style1-v212.log",
|
||||
"L67-v212")
|
||||
if recipe == "floating-islands" and style == 2:
|
||||
return (LINUX68 / "hash-baselines" / "owner-hash-floating-islands-style2-v213.log",
|
||||
"L68-v213")
|
||||
raise VerificationFailure(f"no pinned owner hash baseline for {recipe} style {style}")
|
||||
|
||||
|
||||
def compiler_name(binary: Path) -> str:
|
||||
return "gcc" if "gcc" in binary.name else "clang"
|
||||
|
||||
@@ -624,13 +635,7 @@ def run_hash_pairs(runner: VerificationRunner,
|
||||
l52_baseline = ROOT / "Saved/Linux/l52" / f"owner-hash-{recipe}-style{style}-w12.log"
|
||||
l52_hashes = tuple(HASH_RE.findall(l52_baseline.read_text(
|
||||
encoding="utf-8", errors="replace")))
|
||||
if recipe == "surface-world":
|
||||
expected_baseline = LINUX67 / "hash-baselines" / (
|
||||
"owner-hash-surface-world-style1-v212.log")
|
||||
expected_label = "L67-v212"
|
||||
else:
|
||||
expected_baseline = l52_baseline
|
||||
expected_label = "L52"
|
||||
expected_baseline, expected_label = owner_hash_baseline(recipe, style)
|
||||
expected_hashes = tuple(HASH_RE.findall(expected_baseline.read_text(
|
||||
encoding="utf-8", errors="replace")))
|
||||
same_expected = hashes[12] == expected_hashes and len(expected_hashes) == 12
|
||||
@@ -674,11 +679,11 @@ def run_default_profile_identity(runner: VerificationRunner, binary: Path) -> No
|
||||
expected_style=2, expected_strate_styles={"0": 2, "1": 1}, workers=12,
|
||||
layout_path=OUT / "layouts" / f"{name}.json")
|
||||
values = tuple(HASH_RE.findall(output))
|
||||
baseline = ROOT / "Saved/Linux/l52" / f"owner-hash-{recipe}-style{style}-w12.log"
|
||||
baseline, label = owner_hash_baseline(recipe, style)
|
||||
expected = tuple(HASH_RE.findall(baseline.read_text(
|
||||
encoding="utf-8", errors="replace")))
|
||||
runner.require(f"{name}:matches-L52", len(values) == 12 and values == expected,
|
||||
f"current={len(values)} L52={len(expected)} exact canonical hash rows")
|
||||
runner.require(f"{name}:matches-{label}", len(values) == 12 and values == expected,
|
||||
f"current={len(values)} {label}={len(expected)} exact canonical hash rows")
|
||||
|
||||
|
||||
class _SplitMix64:
|
||||
|
||||
Reference in new issue
Block a user