P2-10: ledger read-card density — tighter padding/margins (3-4 per phone screen)

Phone audit: read cards were huge, only 1-2 fit per screen. Compressed the
vertical spacing — article padding 16->12, header margin 8->5, name 15->14px,
ladder-rungs margin 10->8, book/date line 12->8.

Kept the archetype showDesc: it renders INLINE (same row as the badge), so it
adds zero vertical height — dropping it wouldn't help density and would break
the ds5 design lock ("the badge shows its one-line meaning where it leads").
Locked the density in vyndrParityQA (P2-10).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Kev
2026-07-17 01:47:48 -04:00
parent 77e8937a56
commit 71e35e90fd
2 changed files with 21 additions and 7 deletions
+11
View File
@@ -298,3 +298,14 @@ describe('P1-8 — Compare verdict is time-honest (form, not a phantom game)', (
expect(compare).toMatch(/on current form/i);
});
});
// ── P2-10 lock — ledger read cards are dense (3-4 per phone screen) ──────────
describe('P2-10 — ledger cards are tightened for density', () => {
const ledger = read('app/ledger/page.tsx');
it('the read card uses tight padding for density (3-4 per phone screen)', () => {
// the LedgerCard <article> padding dropped 16 -> 12 (showDesc is INLINE, so
// density comes from padding/margins, not from stripping the archetype meaning)
expect(ledger).toMatch(/animate-fade-up stagger-[^]*?padding: 12 \}\}>/);
expect(ledger).toMatch(/ArchetypeBadge[^]*?showDesc/); // meaning preserved (inline, no height cost)
});
});