From fb333e0a101b543d9bd06a827d7dfff9afc1557a Mon Sep 17 00:00:00 2001 From: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> Date: Mon, 21 Sep 2026 20:36:46 -0400 Subject: [PATCH 1/7] fix: state the current security support policy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The supported-versions table named 0.2.x while the repository is at 0.78.18, so it claimed support for releases eleven minors behind and none of the ones that exist. Replace it with the policy the project can actually keep: latest release only, no backports, no maintenance branches. The row points at VERSION rather than naming a number, so it cannot drift again on the next release. Adds the one-line reason there are no backports — this is content, not a runtime. Closes #186 Co-Authored-By: Claude Opus 5 (1M context) Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> --- SECURITY.md | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/SECURITY.md b/SECURITY.md index 88b7295f..9c4bcbd8 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -26,10 +26,19 @@ Issues with the Blender Python API itself (`bpy`, `bmesh`, `bpy_extras`) belong ## Supported Versions +This is a content repository — Markdown, MDC, Python, and TOML files consumed +directly by an AI agent. There is no installed runtime, no server, and no +long-lived deployment to patch, so there are no maintenance branches and no +backports. + | Version | Supported | |---------|-----------| -| 0.2.x | Yes | -| < 0.2.0 | No | +| Latest release (see [`VERSION`](VERSION)) | Yes | +| Any earlier release | No | + +A confirmed fix lands on `main` and ships in the next release cut by +`release.yml`. Consumers pin by tag or track `main`; the remedy in both cases +is to move to the current release. Nothing older is patched in place. ## Response Timeline From 7c4ad68af8b67b7475853d5e12512f6df32b3cfd Mon Sep 17 00:00:00 2001 From: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> Date: Mon, 21 Sep 2026 20:40:17 -0400 Subject: [PATCH 2/7] fix: stop the gallery calling showcase pieces examples MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The gallery grid concatenates 51 examples and 26 showcase pieces, then labelled all 77 with the example noun: the count chip read "77 examples", every showcase card carried aria-label " example detail page" and a "View example" link, each showcase detail page titled itself " — Examples" and claimed "Rendered headless by the example itself", and the landing page offered to "Browse all 51 examples in the gallery" for a page holding 77 cards. The two categories are distinct everywhere else in the repository; the site was the last place conflating them. Derive the noun per entry from the `showcase` tag instead of hardcoding it (`kind_noun`), and split the counts: - count chip and its live-updating JS: "51 examples, 26 showcase pieces" - card aria-label and card link: "example" or "showcase piece" per card - showcase detail pages title as "— Showcase —" and credit "the showcase piece itself" - gallery title "Examples Gallery" -> "Examples and Showcase"; description now says showcase pieces share the grid and carry the tag - landing CTA names both counts - search placeholder, chip toolbar, and empty-state text no longer say "examples" for a grid holding both - the generator's summary line prints the breakdown Verified against the generated HTML, not the source JSON: 51 "example" and 26 "showcase piece" nouns on the index, correct titles on a showcase detail page and an example detail page, no residual "Examples Gallery" string, and dotted-path alt text still intact. Closes #187 Co-Authored-By: Claude Opus 5 (1M context) Signed-off-by: TMHSDigital <154358121+TMHSDigital@users.noreply.github.com> --- docs/gallery/anvil/index.html | 10 +- docs/gallery/armature-bend/index.html | 2 +- .../gallery/attribute-domain-shear/index.html | 2 +- .../bake-normal-high-to-low/index.html | 2 +- docs/gallery/bmesh-gear/index.html | 2 +- docs/gallery/campfire/index.html | 10 +- docs/gallery/car-mirror-symmetry/index.html | 2 +- docs/gallery/cart/index.html | 10 +- docs/gallery/chopping-block/index.html | 10 +- docs/gallery/collision-hull-proxy/index.html | 2 +- docs/gallery/color-attribute-wheel/index.html | 2 +- docs/gallery/compositor-glare/index.html | 2 +- .../cross-version-property-delete/index.html | 2 +- docs/gallery/curve-bevel-arc/index.html | 2 +- docs/gallery/custom-normals-shade/index.html | 2 +- docs/gallery/damped-track-aim/index.html | 2 +- docs/gallery/degenerate-bevel-weld/index.html | 2 +- docs/gallery/depsgraph-export/index.html | 2 +- docs/gallery/driver-wave/index.html | 2 +- docs/gallery/export-preset-axis/index.html | 2 +- docs/gallery/fence-kit/index.html | 10 +- docs/gallery/gltf-export-roundtrip/index.html | 2 +- docs/gallery/gltf-skin-roundtrip/index.html | 2 +- docs/gallery/gn-instance-grid/index.html | 2 +- docs/gallery/gn-modifier-inputs/index.html | 2 +- docs/gallery/gn-sdf-remesh/index.html | 2 +- docs/gallery/gn-socket-rename/index.html | 2 +- docs/gallery/gn-zone-iterate/index.html | 2 +- docs/gallery/gp-lineart-contour/index.html | 2 +- docs/gallery/grease-pencil-rosette/index.html | 2 +- docs/gallery/grindstone/index.html | 10 +- docs/gallery/hand-pump/index.html | 10 +- docs/gallery/hay-bale/index.html | 10 +- docs/gallery/hitching-post/index.html | 10 +- docs/gallery/image-pixels-testcard/index.html | 2 +- docs/gallery/index.html | 133 +++++++++--------- docs/gallery/iron-cauldron/index.html | 10 +- docs/gallery/light-link-studio/index.html | 2 +- docs/gallery/lightmap-uv-channel/index.html | 2 +- docs/gallery/lod-decimate-chain/index.html | 2 +- docs/gallery/market-stall/index.html | 10 +- docs/gallery/mesh-hygiene-audit/index.html | 2 +- docs/gallery/modular-kit-snap/index.html | 2 +- docs/gallery/parent-inverse-orrery/index.html | 2 +- docs/gallery/park-bench/index.html | 10 +- docs/gallery/png-exr-alpha/index.html | 2 +- docs/gallery/prop-origin-transform/index.html | 2 +- docs/gallery/shader-node-group/index.html | 2 +- docs/gallery/shape-key-blend/index.html | 2 +- docs/gallery/shipping-crate/index.html | 10 +- docs/gallery/signpost/index.html | 10 +- .../sky-texture-sun-elevation/index.html | 2 +- docs/gallery/soccer-ball-goldberg/index.html | 2 +- docs/gallery/socket-attach-points/index.html | 2 +- docs/gallery/stone-well/index.html | 10 +- docs/gallery/street-lantern/index.html | 10 +- docs/gallery/swatch-grid/index.html | 2 +- docs/gallery/tavern-stool/index.html | 10 +- docs/gallery/temp-override-join/index.html | 2 +- docs/gallery/terrain-scatter/index.html | 10 +- docs/gallery/text-version-stamp/index.html | 2 +- docs/gallery/treasure-chest/index.html | 10 +- docs/gallery/triangulate-tangents/index.html | 2 +- docs/gallery/turntable/index.html | 2 +- .../usd-export-evaluation-mode/index.html | 2 +- docs/gallery/uv-layer-grid/index.html | 2 +- docs/gallery/vertex-color-ao/index.html | 2 +- docs/gallery/vertex-weight-limit/index.html | 2 +- docs/gallery/vse-cut-list/index.html | 2 +- docs/gallery/vse-gamma-cross/index.html | 2 +- docs/gallery/wall-torch/index.html | 10 +- docs/gallery/watchtower/index.html | 10 +- docs/gallery/water-trough/index.html | 10 +- docs/gallery/wave-displace/index.html | 2 +- docs/gallery/wheelbarrow/index.html | 10 +- docs/gallery/wooden-barrel/index.html | 10 +- docs/gallery/wooden-bucket/index.html | 10 +- docs/gallery/wooden-ladder/index.html | 21 +-- examples/gallery.json | 4 +- scripts/build_gallery.py | 56 ++++++-- scripts/site/template.html.j2 | 2 +- 81 files changed, 301 insertions(+), 267 deletions(-) diff --git a/docs/gallery/anvil/index.html b/docs/gallery/anvil/index.html index c5f1bed5..203dd7f5 100644 --- a/docs/gallery/anvil/index.html +++ b/docs/gallery/anvil/index.html @@ -3,18 +3,18 @@ - anvil — Examples — Blender Developer Tools + anvil — Showcase — Blender Developer Tools - + - +