台灣九宮格 — Changelog

Versioning: MAJOR.MINOR.PATCH

[0.1.0] — 2026-08-16

First numbered release. Development before this point was unversioned; this is the baseline.

Current State

Changed

Fixed

Impact


Conventions

Person ids are immutable. people.json ids (tw-001, tw-002, …) are opaque keys. They carry no meaning — a person’s category comes from properties.occupation, never from the id. Saved games store these ids, so renaming one orphans real player history.

⚠️ If you ever do change person ids, you must bump STORE_KEY in grid.js in the same commit. Otherwise old saves point at people who no longer exist. See 0.1.0.

Past 999 people, just keep counting: tw-1000. No code parses, sorts, or does arithmetic on person ids — they are only map keys and data-pid attributes — so the digit width is purely cosmetic alignment in the JSON file. Do not switch to a new scheme (tw-a01 etc.), and do not renumber to a wider zero-pad, which would be a MAJOR bump for no functional gain. The one thing to watch: mixed widths don’t sort lexicographically (tw-1000 < tw-999 as strings). If you ever need ids in order, sort on the numeric tail (+id.slice(3)).

wikidata is optional. Empty string when the person has no Wikidata entry. Never promote it back to the primary key — plenty of people worth including (local politicians, YouTubers, indie musicians) have no Q id at all.