Box dimensions: enrich learns shelf math, dims reports the Kallax truth
Eric's brief, implemented to the letter. BGG keeps physical dimensions on VERSIONS, not games, so enrich runs a second cached pass over thing?versions=1 (same batching, token, rate limit, and cache as every call). A game with a chosen version takes that exact version's numbers (source "version", mirrored onto its version dict); a versionless game gets numbers only when every printing with data agrees within 0.5" per axis (source "unanimous", keeping the MAX per axis — the planning question is "will it fit"); disagreement stores nulls as "conflicting" — never a guess — and BGG's 0 parses as "never entered", not a real dimension. rpgitems and local games are "absent". Read-only: upload untouched. The new offline `bggpipe dims` reports coverage by source, the ten biggest footprints, and a Kallax fit check (13.2" square opening, 15.4" deep; a box fits if SOME orientation puts two axes through the opening within the depth) — naming every misfit and every game whose dimensions can't be verified, because can't-verify ≠ fits. Trusted numbers surface on the Library detail page as a "box" row. First real run: 54 version-exact, 16 unanimous, 39 conflicting, 27 absent; three genuine misfits (Bugs in the Kitchen's 17" box, History of the World and Risk LotR both over the 15.4" depth). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016jXZFSTZQKzAC8fqpWSz9g
This commit is contained in:
co-authored by
Claude Fable 5
parent
9d752c4109
commit
102507b040
@@ -109,6 +109,24 @@ BGG application approval can take a week or more. Until then: `extract` works im
|
||||
- `https://boardgamegeek.com/xmlapi2/collection?username=YOU&own=1&version=1`
|
||||
- `https://boardgamegeek.com/xmlapi2/collection?username=YOU&own=1&version=1&subtype=boardgameexpansion`
|
||||
|
||||
## Shelf-space planning
|
||||
|
||||
Physical box dimensions live on BGG *versions*, not games, so enrich collects
|
||||
them in a second cached pass: your exact version's numbers where you chose
|
||||
one, otherwise a value only when every listed printing agrees (within half an
|
||||
inch per axis — disagreement is stored as `conflicting`, never guessed, and
|
||||
BGG's `0` means "never entered", not zero inches). Then:
|
||||
|
||||
```sh
|
||||
bggpipe dims
|
||||
```
|
||||
|
||||
reports coverage, the ten biggest footprints, and a fit check against an IKEA
|
||||
Kallax cube (13.2" × 13.2" opening, 15.4" deep) — listing every box that fits
|
||||
in **no** orientation, and every game whose dimensions can't be verified,
|
||||
because can't-verify is not the same as fits. Trusted dimensions also show on
|
||||
each game's Library detail page.
|
||||
|
||||
## Publishing your library on your own site
|
||||
|
||||
```sh
|
||||
|
||||
Reference in New Issue
Block a user