Record the agreed ring vocabulary, without making it a default
The ten ring names settled between gospel and exp, derived from exp's ringFor() rather than hand-numbered so the numbering cannot drift from the code that produces it. The screen legend already renders these words, so a printed sheet using them cannot disagree with the screen. Written as vocabulary in the header a caller reads, and deliberately NOT as a prop default. One cell is still open on the Driver's row 89 — "people" versus the brief's "culture" in column 1 — and if he keeps his, exactly three cells change, 1, 4 and 7, and nothing else: not the numbering, not the columns, not the colours. A default would bake a provisional word into every consumer that forgot to pass one, and would make this component the thing that decided a Driver question. Same reason ShareCalendar refuses to name its own metric.
This commit is contained in:
parent
2427e48501
commit
0bcb33decb
1 changed files with 18 additions and 0 deletions
|
|
@ -38,6 +38,24 @@
|
|||
* for a name, humanise the slug, which is uniform by construction and tops out around 34 characters.
|
||||
* gospel found this and carries the two separately; this component asserts nothing about the words,
|
||||
* so the whole hazard lives at the call site, which is exactly why it is written down here.
|
||||
*
|
||||
* ★ THE AGREED RING VOCABULARY, for a caller building `labels.rings`. Settled between gospel and
|
||||
* exp and derived from exp's ringFor() rather than hand-numbered, so the numbering cannot drift
|
||||
* from the code that produces it. The screen legend already renders these words, so a printed sheet
|
||||
* using them cannot disagree with the screen:
|
||||
*
|
||||
* 1 Same dialect, same people 6 Same language, different culture
|
||||
* 2 Same dialect, near culture 7 Same family, same people
|
||||
* 3 Same dialect, different culture 8 Same family, near culture
|
||||
* 4 Same language, same people 9 Same family, different culture
|
||||
* 5 Same language, near culture 10 Nearby only
|
||||
*
|
||||
* ⚠ ONE CELL IS PROVISIONAL: "people" vs the brief's "culture" in column 1 is open on the Driver's
|
||||
* row 89. If he keeps "culture", exactly THREE cells change — 1, 4 and 7 — and nothing else: not
|
||||
* the numbering, not the columns, not the colours. That is why this map is written here as
|
||||
* VOCABULARY and is NOT a default: a default would bake a provisional word into every consumer that
|
||||
* forgot to pass one, and the component would become the thing that decided a Driver question. The
|
||||
* same reason ShareCalendar refuses to name its own metric.
|
||||
*/
|
||||
import { computed } from 'vue'
|
||||
import { layoutCenteredSet, ringTally, inwardArrow, ringRadii, RING_MIN, RING_MAX } from './centeredSet.js'
|
||||
|
|
|
|||
Loading…
Reference in a new issue