core: coarser smooth-route tolerance + shell support bound (L119, evaluator v224)

Chord error 2.5 -> 10 cm, shell work skipped outside the 0-0.75 m band. Sweep pairs -39%, prepare -60%,
near-ready 3-8% faster than L115 but still +13..+22% vs L109. Floor offset 7.88 mm; captures match L115
by eye; fast tier, walk audits, Clang/GCC W1/W8/W12 determinism green. Not for merge yet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016dhxM43dnWvUu2B5Ph1iG1
This commit is contained in:
Fr0zkaandClaude Opus 5.5 committed 2026-10-30 05:35:59 +01:00
1 parent 6e52fb48b2
commit 707bc61553
40 files changed
+2352 -54

No files matched your search

@@ -0,0 +1,54 @@
#!/usr/bin/env python3
"""Render the L115 view set with the L119 candidate binaries."""
from __future__ import annotations
import importlib.util
import json
from pathlib import Path
ROOT = Path(__file__).resolve().parents[4]
RESEARCH = Path(__file__).resolve().parent
SPEC = importlib.util.spec_from_file_location(
"l115_capture_runner", ROOT / "Standalone/Research/WorldAssemblerM3/Linux115/RunL115Captures.py")
if SPEC is None or SPEC.loader is None:
raise SystemExit("cannot load the L115 capture view definitions")
RUNNER = importlib.util.module_from_spec(SPEC)
SPEC.loader.exec_module(RUNNER)
# Reuse L115's exact camera and station definitions, while rendering through L119.
RUNNER.CAPTURES = RESEARCH / "captures/L119"
RUNNER.SAVED = ROOT / "Saved/Linux/l119/captures"
RUNNER.HELPERS.RESEARCH = RESEARCH
RUNNER.BINARIES = {
"L115": ROOT / "Saved/Linux/l119/bin/VoxelForgeCoreHeadless-l119-clang"}
RUNNER.RENDERERS = {
"L115": ROOT / "Saved/Linux/l119/bin/VoxelForgeOffscreenCapture-l119-clang"}
RUNNER.HELPERS.BINARIES = RUNNER.BINARIES
RUNNER.HELPERS.RENDERERS = RUNNER.RENDERERS
def main() -> int:
result = RUNNER.main()
if result != 0:
return result
index = RUNNER.CAPTURES / "capture-index.json"
document = json.loads(index.read_text(encoding="utf-8"))
for row in document["captures"]:
row["variant"] = "L119"
index.write_text(json.dumps(document, indent=2) + "\n", encoding="utf-8")
markdown = RUNNER.CAPTURES / "INDEX.md"
lines = ["# L119 captures (L115 view set)", "",
"The 23 L115 camera poses were rendered with the L119 binary. Floor anchors "
"require an upward normal alignment of at least 0.85, target-to-floor distance "
"at most 0.25 m, and camera-to-floor distance between 2.0 and 3.2 m. Open-air "
"sections have outside and interior wall close-ups at 4 m.", ""]
for row in document["captures"]:
image = row["capture"].removeprefix("captures/L119/")
lines.append(f"- [{row['passage']} {row['station']}]({image}) — "
f"{row['kind']}; {row.get('drawn_triangles', 0)} triangles; "
f"{row['pixel_quality_status']}")
markdown.write_text("\n".join(lines) + "\n", encoding="utf-8")
return 0
if __name__ == "__main__":
raise SystemExit(main())