Skip to content

Commit a7712f7

Browse files
TMHSDigitalclaude
andcommitted
catalog, site: re-audit, and V13 now covers tags (batch D)
Re-ran the second full run's audit script over everything since it: no missing fields or sections, no active entry with an unknown, no payload or listing gaps, no em dashes in added lines, and the three new "non-commercial" keyword hits are all "commercial or non-commercial" phrasing. The one real finding: tags, which V13 did not check, had seven singular/plural clash groups. Fixed by majority on 7 entries (characters, brick, vector, spritesheet, button, creature, shader), one of them in kenney-puzzle-pack-2 from yesterday. V13 now checks tags too; one fixture (55 assertions), and restoring "buttons" on kenney-ui-pack fails the validator. Site search: a plural query word also matches its singular, so consolidating tags does not cost results ("buttons" 2 -> 7, "spritesheets" 0 -> 4 against the built data). Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Wc67NX9MM964uaVGn4bpZJ
1 parent 0c13437 commit a7712f7

11 files changed

Lines changed: 23 additions & 11 deletions

‎CONTRIBUTING.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ One new markdown file is enough — the website rebuilds from frontmatter on dep
4747
- `formats`: what you actually get, in one of four kinds. **File formats**, as commonly written: usually upper case (`PNG`, `FBX`, `JSON`, `VOX`), tool-specific ones as the tool writes them (`gdshader`, `tmx`, `ktx2`). **Engine or language targets**, as the product writes them (`glTF`, `Godot`, `Unity`, `Python`, `React`). **Delivery types** for software with no file format of its own, lower-case kebab-case (`godot-addon`, `blender-extension`, `npm`, `cli`, `library`, `desktop-app`, `mobile-app`, `middleware`, `model`). And `various` for an aggregator whose files come in too many formats to list. Platforms (`windows`, `macos`, `ios`) and descriptions (`heightfield`, `examples`) are `tags`, not formats. Reuse the spelling already in the catalog.
4848
- `grid_dimensions` / `camera_perspective` / `hardware_tags`: optional metadata for 2D and UI entries. `3d` and `characters` entries leave `camera_perspective` out: it describes a 2D camera, and those entries have none.
4949
- `verified`: ISO date (`YYYY-MM-DD`) of your last license check.
50-
- `status`: `active` | `needs-review` | `deprecated`. `active` means the licence, the commercial stance and the credit requirement are all settled: an `unknown` in `license`, `commercial` or `attribution_required` keeps an entry at `needs-review`. The validator enforces this (V14), and rejects `formats` or `subcategories` values that differ only by case, punctuation or a trailing "s" from one already in use (V13).
50+
- `status`: `active` | `needs-review` | `deprecated`. `active` means the licence, the commercial stance and the credit requirement are all settled: an `unknown` in `license`, `commercial` or `attribution_required` keeps an entry at `needs-review`. The validator enforces this (V14), and rejects `formats`, `subcategories` or `tags` values that differ only by case, punctuation or a trailing "s" from one already in use (V13).
5151

5252
## License verification checklist
5353

‎catalog/2d/craftpix.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ license: custom
88
commercial: true
99
attribution_required: false
1010
formats: [PNG, EPS]
11-
tags: [gui, hud, spritesheets, freebies]
11+
tags: [gui, hud, spritesheet, freebies]
1212
verified: 2026-07-19
1313
status: active
1414
---

‎catalog/2d/glitch-archive.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ license_spdx: CC0-1.0
1010
commercial: true
1111
attribution_required: false
1212
formats: [PNG, SVG, FLA]
13-
tags: [hand-drawn, vectors, large-pack]
13+
tags: [hand-drawn, vector, large-pack]
1414
verified: 2026-08-29
1515
status: active
1616
---

‎catalog/2d/kenney-puzzle-pack-2.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ license_spdx: CC0-1.0
1010
commercial: true
1111
attribution_required: false
1212
formats: [PNG, SVG, XML]
13-
tags: [cc0, puzzle, casual, breakout, bricks, pipes, coins, particles, mobile]
13+
tags: [cc0, puzzle, casual, breakout, brick, pipes, coins, particles, mobile]
1414
verified: 2026-09-23
1515
status: active
1616
---

‎catalog/2d/kenney-roguelike-characters.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ license_spdx: CC0-1.0
1010
commercial: true
1111
attribution_required: false
1212
formats: [PNG]
13-
tags: [cc0, rpg, character, roguelike, overworld, front-facing]
13+
tags: [cc0, rpg, characters, roguelike, overworld, front-facing]
1414
camera_perspective: isometric_3_4
1515
verified: 2026-09-22
1616
status: active

‎catalog/2d/kenney-ui-pack.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ license_spdx: CC0-1.0
1010
commercial: true
1111
attribution_required: false
1212
formats: [PNG]
13-
tags: [cc0, ui, buttons, panels, kenney]
13+
tags: [cc0, ui, button, panels, kenney]
1414
camera_perspective: 2d_flat
1515
verified: 2026-07-19
1616
status: active

‎catalog/animation/truebones-zoo.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ commercial: true
99
attribution_required: true
1010
attribution_string: "Truebones"
1111
formats: [FBX, BVH]
12-
tags: [creatures, animals, mocap, gumroad, vendor-risk]
12+
tags: [creature, animals, mocap, gumroad, vendor-risk]
1313
verified: 2026-08-29
1414
status: needs-review
1515
---

‎catalog/shaders-vfx/godot-demo-projects.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ license_spdx: MIT
99
commercial: true
1010
attribution_required: false
1111
formats: [gdshader, Godot]
12-
tags: [godot, official, particles, shaders, templates]
12+
tags: [godot, official, particles, shader, templates]
1313
verified: 2026-07-19
1414
status: active
1515
---

‎site/checks.mjs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -257,14 +257,14 @@ export function checkTaxonomyValues(rel, meta) {
257257

258258
/* ----------------------------------------------------------------- V13 */
259259
/**
260-
* `formats` and `subcategories` are free-form, so the same value drifts into
260+
* `formats`, `subcategories` and `tags` are free-form, so the same value drifts into
261261
* several spellings (`png` beside `PNG`, `field-recording` beside
262262
* `field-recordings`) and search and grouping split on them. Two values that
263263
* differ only by case, punctuation or a trailing "s" are one value spelt
264264
* twice. Plural folding was checked against the whole catalog before it was
265265
* switched on: its only hits were five real singular/plural pairs.
266266
*/
267-
export function checkValueSpellings(records, fields = ["formats", "subcategories"]) {
267+
export function checkValueSpellings(records, fields = ["formats", "subcategories", "tags"]) {
268268
const errors = [];
269269
for (const field of fields) {
270270
const byKey = new Map();

‎site/checks.test.mjs‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -495,6 +495,14 @@ rejects(
495495
]),
496496
'subcategories spells one value several ways: "character" (a.md), "characters" (b.md)'
497497
);
498+
rejects(
499+
"V13 rejects a tag beside its plural",
500+
checkValueSpellings([
501+
{ rel: "a.md", meta: { tags: ["button"] } },
502+
{ rel: "b.md", meta: { tags: ["buttons"] } },
503+
]),
504+
"tags spells one value several ways"
505+
);
498506
accepts(
499507
"V13 accepts one spelling used many times",
500508
checkValueSpellings([

0 commit comments

Comments
 (0)