Skip to content

feat: add CLI falsifiers and exit tables to six examples - #141

Merged
TMHSDigital merged 1 commit into
mainfrom
feat/falsifier-retrofit-pilot
Sep 13, 2026
Merged

feat: add CLI falsifiers and exit tables to six examples#141
TMHSDigital merged 1 commit into
mainfrom
feat/falsifier-retrofit-pilot

Conversation

@TMHSDigital

Copy link
Copy Markdown
Owner

Summary

Pilot retrofit of six examples that already had measured assertions but no CLI falsifier. Each flag feeds degenerate input into an existing check. Default smoke path is unchanged. README exit tables document every nonzero code the script already returned; no codes were renumbered.

--same-axis / --flat-source shape. Not skip-flags.

Example Flag What it changes Lands at
car-mirror-symmetry --no-mirror Mirror X off 5
lod-decimate-chain --no-decimate no Decimate on LOD copies 6
custom-normals-shade --mismatch-angle mark sharp at 20°, audit 30° 5
gltf-export-roundtrip --no-yup export_yup=False 9
image-pixels-testcard --wrong-origin write the card top-down 4
gn-modifier-inputs --same-scale write 1.0 to every modifier 7

--api on gn-modifier-inputs is unchanged. It still selects a valid path (auto) or the wrong series (dict/rna). --same-scale is the portable break.

Live-run table

Binaries: .scratch/blender-4.5.11-windows-x64 (4.5.11 LTS, 4db51e9d1e1e), .scratch/blender-5.1.2-windows-x64 (5.1.2, ec6e62d40fa9), .scratch/blender-5.2.1-windows-x64 (5.2.1 LTS, 9e2066aef7ef). Check-only, no --output. 5.1 evidence in this table is local, not CI. CI 5.1 is the needs-5.1 smoke job.

Example Path 4.5.11 5.1.2 5.2.1
car-mirror-symmetry default 0 0 0
car-mirror-symmetry --no-mirror 5 5 5
lod-decimate-chain default 0 0 0
lod-decimate-chain --no-decimate 6 6 6
custom-normals-shade default 0 0 0
custom-normals-shade --mismatch-angle 5 5 5
gltf-export-roundtrip default 0 0 0
gltf-export-roundtrip --no-yup 9 9 9
image-pixels-testcard default 0 0 0
image-pixels-testcard --wrong-origin 4 4 4
gn-modifier-inputs default 0 0 0
gn-modifier-inputs --same-scale 7 7 7

Observed errors (same on all three versions):

  • --no-mirror: evaluated body 126 verts ≠ 2n−c 224
  • --no-decimate: evaluated tris 2260 ≥ base 2260
  • --mismatch-angle: Shell sharp set 4 extra / 0 missing of 48 expected
  • --no-yup: POSITION bounds deviate 8.700e-01 from axis-converted bbox
  • --wrong-origin: byte round-trip error 0.9215687 > 0.0019618
  • --same-scale: readback 1.0 ≠ intended 2.0 on Scale2

None of the six resisted falsification. No assertion was loosened. Exit 9 on gltf is the bbox check; legal.

Claim labels

  • Live-run-proven: default and falsifier exit codes on 4.5.11, 5.1.2, 5.2.1 (table above).
  • Inspection-only: README tables listing codes the render path can return (--output not exercised here). Smoke catalog rows unchanged (falsifiers must not run on the default smoke path).
  • 5.1: local binaries above. CI 5.1 = this PR's labeled smoke job.

Explicitly not in this PR

Test plan

  • Validate + drift-check green
  • Blender smoke 4.5 and 5.2 green on the default path
  • needs-5.1 5.1 smoke green
  • Socket checks green
  • Do not merge from this phase

Each flag feeds degenerate input into an existing measured check so the assertion can fail on purpose. Default smoke path is unchanged. README tables document every nonzero code these scripts already returned; no codes were renumbered.

Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Sep 12, 2026
@TMHSDigital TMHSDigital added the needs-5.1 Opt-in Blender 5.1 smoke on this PR. Default matrix stays 4.5 + 5.2. Auto-label will not apply this. label Sep 12, 2026
@TMHSDigital
TMHSDigital merged commit fd3493d into main Sep 13, 2026
13 checks passed
@TMHSDigital
TMHSDigital deleted the feat/falsifier-retrofit-pilot branch September 13, 2026 02:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation needs-5.1 Opt-in Blender 5.1 smoke on this PR. Default matrix stays 4.5 + 5.2. Auto-label will not apply this.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant