Skip to content

Commit 48e2508

Browse files
committed
v2.37.0 — bundled brands, materials and catalogue refreshed (14,463 products); refresh-before-every-build rule
1 parent 5dfd982 commit 48e2508

6 files changed

Lines changed: 36941 additions & 1730 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ Versions follow [Semantic Versioning](https://semver.org/).
1919
- Popover per the redesign mockup: title with a red heart, a short reassuring intro (free and open source for good), a caret pointing at the button that opened it, smart placement (right of the button when there is room, otherwise above, then below), the opener lit with a yellow ring while open, a ↗ hint on the hovered platform, lift-on-hover, 150 ms open / 120 ms close (off under reduced motion), options left-aligned (a global button rule was centring them); opened from the requests side card it sits to the right of the whole card (the topic list stays visible), or becomes a compact centred modal over a dimmed backdrop when there is no room
2020

2121
### Changed
22+
- Bundled reference data refreshed before the build: brands, materials and the product catalogue (14,463 products, was 13,906) — `assets/db/tigertag/` (`db_update.py`)
2223
- "Improvements & suggestions" sidebar button turns solid orange with white sparkles while its side card is open — `renderer/css/10-settings.css`
2324
- Print-setting tiles (product card + detail panel): the icon now sits on the title line next to the label, and the value spans the full width below it, so long ranges ("190–230 °C") stay on one line — `renderer/css/70-detail-misc.css` (`.ro-ptile`)
2425
- Support menu copy no longer promises a badge for a gift alone: the code / claim lines say the gift is LINKED to the account, and the badge (Gold) comes with joining the TigerSquad — i18n `supportCodeHint`, `supportClaimToggle`, `supportClaimOk` (11 locales)

‎CLAUDE.md‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,8 @@ Rule of thumb: *would a user notice a new thing they can now do?* → **MINOR**.
158158

159159
0. **Decide the version** (policy above) and set `package.json` to it — correcting the placeholder if the WORKLOG warrants a MINOR/MAJOR (confirm MAJOR with the human first).
160160

161+
**Then refresh the bundled reference data — before EVERY build, no exception:** `cd assets/db/tigertag && python3 db_update.py`. It re-downloads the `id_*.json` tables and the product catalogue `id_catalog.json` (+ `last_update.json`) when the API has newer ones, so the app ships with the latest brands, materials and catalogue on first launch and offline. Commit whatever it changed with the release. (Skipped once: v2.37.0 was about to ship a catalogue a month old — 13,906 products instead of 14,463.)
162+
161163
1. **Synthesize `WORKLOG.md`** (Rule 3 above) → write the new `CHANGELOG.md` entry (register 1 — technical).
162164
2. **Write the release note** (register 2 — BambuLab style) → `data/release-notes/vX.Y.Z.md`. Rewrite the changelog into factual, jargon-free bullets (`Fixed an issue where …`, no internal code names); end with the standard footer (copy it from the previous version's file). This file becomes the **GitHub Release page body** verbatim via `scripts/extract-changelog.mjs`. Skipping it means the release page falls back to the raw changelog — avoid that.
163165
3. **Write the "What's New" entry** (register 3 — Discord/app voice) for the version → `data/whatsnew.json`. Run `npm run whatsnew:add -- <x.y.z> [--items N] [--date YYYY-MM-DD]` to scaffold an empty **11-locale** block, then fill each item's `icon` (an icon-name → `.icon-<name>` mask, e.g. `list-check`, `cart`, `user`, `link`, `swap`, `bell`; **not** a literal emoji) + vulgarised `title`/`body` for **all 11 locales** (history is kept — never delete old versions). Verify with `npm run whatsnew:check` (must pass — no empty locale). This drives the in-app "What's New" modal shown once per version (and re-openable from Settings → About).
@@ -206,7 +208,7 @@ The working file is wiped so it stays clean and unambiguous: whatever is in `WOR
206208

207209
**Always keep on the main loop (never delegate):** the version decision (SemVer), all validators (`npm run i18n:check`, `whatsnew:check`, `codemap:check`, `node --check`), the final consistency read-through, and all git/gh (commit, tag, push, publish-latest, build watch).
208210

209-
**Order of operations:** decide version → write CHANGELOG → note + What's New + FEATURES + README + codemap (inline) → run ALL validators + one consistency read-through → commit → tag → push → watch build → publish latest → reset WORKLOG + bump `package.json`.
211+
**Order of operations:** decide version → refresh bundled data (`db_update.py`) → write CHANGELOG → note + What's New + FEATURES + README + codemap (inline) → run ALL validators + one consistency read-through → commit → tag → push → watch build → publish latest → reset WORKLOG + bump `package.json`.
210212

211213
**Separately, keep `data/whatsnew.json` from bloating** (it's re-read on every release): when its history grows large, propose archiving the oldest versions out of the loaded file so each release stops paying to read the full back-catalogue.
212214

‎assets/db/tigertag/id_brand.json‎

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -420,6 +420,13 @@
420420
142
421421
]
422422
},
423+
{
424+
"id": 26145,
425+
"name": "3DMA",
426+
"type_ids": [
427+
142
428+
]
429+
},
423430
{
424431
"id": 26379,
425432
"name": "Formlabs",
@@ -915,6 +922,13 @@
915922
142
916923
]
917924
},
925+
{
926+
"id": 58863,
927+
"name": "iSANMATE",
928+
"type_ids": [
929+
142
930+
]
931+
},
918932
{
919933
"id": 58972,
920934
"name": "Tinmorry",

0 commit comments

Comments
 (0)