fix(journey): swap skill/memory inks so drillable rows read as clickable
Memories are the only drillable rows, so give them the primary "clickable" ink and demote skills (dead-ends) to the muted complement — previously the non-openable skills wore the link-looking primary color. Flipped in both the TUI and CLI palettes for parity.
This commit is contained in:
parent
2f7b6cf298
commit
abb11c86b9
3 changed files with 9 additions and 5 deletions
|
|
@ -188,8 +188,10 @@ def derive_palette(primary_hex: str, *, dark: bool = True) -> dict[str, str]:
|
|||
bg = (8, 8, 12) if dark else (250, 250, 250)
|
||||
return {
|
||||
"primary": primary_hex,
|
||||
"skill": rgb_to_hex(mix_rgb(primary, base, 0.12 if dark else 0.18)),
|
||||
"memory": rgb_to_hex(mix_rgb(_complementary_ink(primary), bg, 0.45)),
|
||||
# Memories are drillable → primary "clickable" ink; skills are dead-ends
|
||||
# → muted complement.
|
||||
"memory": rgb_to_hex(mix_rgb(primary, base, 0.12 if dark else 0.18)),
|
||||
"skill": rgb_to_hex(mix_rgb(_complementary_ink(primary), bg, 0.45)),
|
||||
"label": rgb_to_hex(mix_rgb(base, bg, 0.35)),
|
||||
"dim": rgb_to_hex(mix_rgb(base, bg, 0.7)),
|
||||
"bg": rgb_to_hex(bg),
|
||||
|
|
|
|||
|
|
@ -178,7 +178,7 @@ def test_format_date_handles_missing():
|
|||
def test_derive_palette_distinct_memory_hue():
|
||||
pal = render.derive_palette("#FFD700", dark=True)
|
||||
assert pal["skill"].startswith("#") and pal["memory"].startswith("#")
|
||||
# Memory is a complement of the gold primary → clearly different ink.
|
||||
# Skills wear the muted complement, memories the primary ink → distinct.
|
||||
assert pal["memory"].lower() != pal["skill"].lower()
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -112,8 +112,10 @@ export function deriveStarmapPalette(primaryHex: string, fgHex: string): Starmap
|
|||
bg,
|
||||
dim: mix(base, bg, 0.7),
|
||||
label: mix(base, bg, 0.35),
|
||||
memory: mix(complementaryInk(primary), bg, 0.45),
|
||||
skill: mix(primary, base, dark ? 0.12 : 0.18)
|
||||
// Memories are drillable, so they wear the primary "clickable" ink; skills
|
||||
// are dead-ends and get the muted complement.
|
||||
memory: mix(primary, base, dark ? 0.12 : 0.18),
|
||||
skill: mix(complementaryInk(primary), bg, 0.45)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue