The board wears a picture — background becomes a mapping, and the window chrome follows it under a thin frost
background is {color:, image:} and only a mapping at every level; the board's image paints the full window under a transparent title bar, with a thin-material frost strip keeping the chrome legible and the standard accommodations intact.
Claude-Session: https://claude.ai/code/session_014PtZdPwqZuqEDLc6wZMtEy
This commit is contained in:
@@ -352,7 +352,7 @@ struct FixtureCoercionTests {
|
||||
let cardTitleSeq = "40000000-0000-4000-8000-000000000004"
|
||||
let cardIconColorInt = "50000000-0000-4000-8000-000000000005"
|
||||
let cardBackgroundMap = "60000000-0000-4000-8000-000000000006"
|
||||
let cardBackgroundInt = "70000000-0000-4000-8000-000000000007"
|
||||
let cardBackgroundScalar = "70000000-0000-4000-8000-000000000007"
|
||||
let cardDeletedBad = "80000000-0000-4000-8000-000000000008"
|
||||
|
||||
let result = try loadFixture("Valid/coercion.kanban")
|
||||
@@ -371,8 +371,14 @@ struct FixtureCoercionTests {
|
||||
#expect(try card(cardTitleInt).title == .valid("2048"))
|
||||
#expect(try card(cardTitleSeq).title == .malformed(raw: "[a, b]"))
|
||||
#expect(try card(cardIconColorInt).iconColor == .valid("42"))
|
||||
#expect(try card(cardBackgroundMap).background == .malformed(raw: "{x: 1}"))
|
||||
#expect(try card(cardBackgroundInt).background == .valid("12345"))
|
||||
// **`background` is a mapping and only a mapping** (01-storage-format.md § Frontmatter,
|
||||
// ruled 2026-08-06). So the two background cards say opposite things about one key:
|
||||
// `{x: 1}` is a perfectly legal mapping that simply names neither subkey — no colour, no
|
||||
// trace, the unknown subkey riding along like any unknown key — while the bare scalar
|
||||
// `12345` has no reading at all, which is the golden pin on the retired shape.
|
||||
#expect(try card(cardBackgroundMap).background == .missing)
|
||||
#expect(try card(cardBackgroundScalar).background == .malformed(raw: "12345"))
|
||||
#expect(try card(cardBackgroundScalar).background.rawText == "12345")
|
||||
|
||||
let deletedBad = try card(cardDeletedBad)
|
||||
#expect(deletedBad.deleted == .malformed(raw: "definitely-not-a-date"))
|
||||
|
||||
Reference in New Issue
Block a user