The acknowledged overhang: "doesn't fit, shelved anyway" goes legit

Eric's office towers are 9.5 inches deep; Etherfields boxes are 11.8
inches square. Spine-out they stand 2.3 inches proud of the shelf edge
— clearly livable, it's how they sit today — but the lane model will
honestly refuse forever: can't stand (11.8 > 9.5 depth), can't stack
flat (same), so the opening warns NO PACKING FITS. The first deliberate
misfit deserves first-class status.

An assignment can now carry acknowledged: true. An acknowledged box
takes the standing lane WITHOUT the height/depth check — the human has
seen the overhang — while the width budget stays honest (nine
acknowledged monoliths still overflow a 23.25-inch row). It drops out
of misfit/laneless warnings everywhere: the wall diagram, the sheet,
and bggpipe dims (which now says "overhangs, acknowledged" instead).

Ways in: an "accept overhang" button in the opening's sheet (appears
on any resident the lanes can't take; tap again to retract), or an
acknowledge column (yes) in shelve --import. Once acknowledged, later
imports needn't re-state it.

Re-import hardening, prompted by Eric's "will a new import make a
mess?": it's an upsert, not a reset — and now genuinely so. Previously
a re-import preserved notes but silently wiped lane overrides; now
notes, lanes, and acknowledgments all survive when the opening is
unchanged (a move resets lane and acknowledgment — new spot, new
verdict). Same fix in /api/locate: the lane-flip button used to wipe
the hand-entered note because LocateBody.note defaulted to "" —
it's now tri-state, None means leave it alone.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016jXZFSTZQKzAC8fqpWSz9g
This commit is contained in:
Eric Wagoner
2026-08-09 15:45:36 -04:00
co-authored by Claude Fable 5
parent 4ce7706521
commit 7d7d3bb8da
10 changed files with 291 additions and 37 deletions
+11
View File
@@ -0,0 +1,11 @@
name,opening
Etherfields,library-right-shelving-e1
Etherfields: Kittenburg Expansion,library-right-shelving-e1
Etherfields: 5th Player Expansion,library-right-shelving-e1
Etherfields: Funeral Witch Campaign,library-right-shelving-e1
Etherfields: Sphinx Campaign,library-right-shelving-e1
Etherfields: Stretch Goals Harpy & She-Wolf Campaigns,library-right-shelving-e1
Alice is Missing,library-right-shelving-2-d1
Alice is Missing: Silent Falls,library-right-shelving-2-d1
Parsely,library-right-shelving-2-d1
Dark Cults,library-right-shelving-2-d1
1 name opening
2 Etherfields library-right-shelving-e1
3 Etherfields: Kittenburg Expansion library-right-shelving-e1
4 Etherfields: 5th Player Expansion library-right-shelving-e1
5 Etherfields: Funeral Witch Campaign library-right-shelving-e1
6 Etherfields: Sphinx Campaign library-right-shelving-e1
7 Etherfields: Stretch Goals – Harpy & She-Wolf Campaigns library-right-shelving-e1
8 Alice is Missing library-right-shelving-2-d1
9 Alice is Missing: Silent Falls library-right-shelving-2-d1
10 Parsely library-right-shelving-2-d1
11 Dark Cults library-right-shelving-2-d1