Write the loader fixture suite, valid and malformed
18 golden fixture boards as real on-disk trees under Fixtures/ — ten valid/tolerated cases (rich board, interrupted create, non-UUID strays, stray files, tombstones, tie-breaks, unknown-key order, coercion, last-wins duplicates, board-level deleted) and eight fail-fast cases, each pinned to its exact error reason and path; the rich board's whole tree round-trips byte-identically. Pins two contract subtleties now recorded in the design: tombstone flags are not inherited (renderers walk ancestors) and last-wins resolves before order strictness. README gains the storage-foundation feature entry. 146 tests total. Claude-Session: https://claude.ai/code/session_018BjQRYBR6jQja3jCRi5S3A
This commit is contained in:
+7
@@ -0,0 +1,7 @@
|
||||
---
|
||||
schema: 1
|
||||
order: 1024
|
||||
title: Not Itself Deleted
|
||||
---
|
||||
My lane is tombstoned but I am not — isDeleted keys only on my own
|
||||
'deleted' field, never inherited from an ancestor.
|
||||
@@ -0,0 +1,10 @@
|
||||
---
|
||||
schema: 1
|
||||
order: 2048
|
||||
title: A Tombstoned Lane
|
||||
deleted: 2026-07-11T09:30:00Z
|
||||
---
|
||||
Everything beneath a tombstoned lane is hidden from the board too — but
|
||||
that's a rendering rule, not a loader rule: the loader still reports this
|
||||
lane's card structurally, un-flagged, since the card's own 'deleted' key
|
||||
is absent.
|
||||
Reference in New Issue
Block a user