Skip to content

fix: harden example checks and close review findings across eight examples#56

Merged
TMHSDigital merged 1 commit into
mainfrom
fix/example-review-cleanup
Jul 18, 2026
Merged

fix: harden example checks and close review findings across eight examples#56
TMHSDigital merged 1 commit into
mainfrom
fix/example-review-cleanup

Conversation

@TMHSDigital

Copy link
Copy Markdown
Owner

Summary

A full review pass over all sixteen examples (four parallel deep-read reviews, findings hand-verified) surfaced one shipped defect and several systematic weaknesses concentrated in the four oldest examples. This PR closes everything actionable.

Fixes

Example Change
depsgraph-export Shipped scratch docstring ("""Candidate B: ... (SCRATCH)) replaced with standard anatomy; missing --output render path added (base cube beside its evaluated form, floor contact via its own evaluated bounds) so the gallery assets now come from the shipped script; OBJ path moved to --obj
swatch-grid Check-only default mode added (--output was required=True); engine-id check made real
swatch-grid, turntable, gn-sdf-remesh The EEVEE engine-id "assertion" compared a value to itself and could never fire; now witnesses the inversion for real — the wrong era''s id must be rejected (TypeError) and the helper''s id accepted
wave-displace Vertex-count guard was unreachable (foreach_set cannot resize); replaced with a strictly stronger every-vertex closed-form check; array idiom clarified
damped-track-aim Inert legacy EEVEE bloom block deleted (use_bloom exists on neither supported version and contradicted compositor-glare); orphaned wall mesh copy fixed; angle comment corrected
driver-wave Unreachable else branch removed from the driver function
early examples always-free-bmesh try/finally and the taa_render_samples shim backported

READMEs, gallery.json, and the smoke-workflow comment synced; docs/gallery/ regenerated (detail pages embed highlighted source, hence the page churn).

Test plan

  • All six touched checks exit 0 check-only on Blender 5.1.2 and 4.5.11 LTS (local)
  • Wrong-era engine id verified genuinely rejected on both builds (exit 0 now proves the live check fired)
  • swatch-grid CI render invocation (--engine cycles --samples 8 --width 640) passes on both builds
  • New depsgraph-export render run on both builds and visually inspected at full size and thumbnail scale; hero/preview webp regenerated from the shipped script
  • python scripts/build_gallery.py re-run; py_compile clean on all touched scripts
  • CI: validate, drift-check, Blender 4.5 + 5.1 smoke green

🤖 Generated with Claude Code

…mples

A full review pass over the sixteen examples found the oldest four predate
the bmesh-gear anatomy and carried real debt; this closes everything
actionable:

- depsgraph-export: replace the shipped scratch docstring ("Candidate B ...
  (SCRATCH)") with the standard anatomy, and add the missing --output render
  path (base cube beside its evaluated form, resting the subsurf ball on the
  floor via its own evaluated bounds) so the gallery assets now come from the
  shipped script; OBJ path moves to --obj.
- swatch-grid: add the check-only default mode CI conventions promise
  (--output was required), and make the EEVEE engine-id assertion real.
- swatch-grid / turntable / gn-sdf-remesh: the old engine-id check compared
  a value to itself and could never fire; it now witnesses the inversion by
  asserting the WRONG era's id is rejected (TypeError) and the helper's id
  accepted - live-verified on 4.5.11 and 5.1.2.
- wave-displace: the vertex-count guard was unreachable (foreach_set cannot
  resize); replaced with a strictly stronger every-vertex closed-form check
  that a stride/interleave bug cannot hide from.
- damped-track-aim: delete the inert legacy EEVEE bloom block (use_bloom
  exists on neither supported version and contradicted compositor-glare),
  fix the orphaned wall mesh copy, and correct the cos(3.6deg) comment.
- driver-wave: remove the unreachable else branch in the driver function.
- Backport the always-free-bmesh try/finally and the taa_render_samples shim
  to the early examples that lacked them; sync READMEs, gallery.json, the
  smoke workflow comment, and regenerate docs/gallery.

All six touched checks pass check-only on Blender 4.5.11 LTS and 5.1.2;
swatch-grid's CI render invocation and the new depsgraph-export render were
run and visually inspected on both.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions github-actions Bot added documentation Improvements or additions to documentation ci labels Jul 18, 2026
@TMHSDigital
TMHSDigital merged commit b8b0a42 into main Jul 18, 2026
9 checks passed
@TMHSDigital
TMHSDigital deleted the fix/example-review-cleanup branch July 18, 2026 21:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant