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:
co-authored by
Claude Fable 5
parent
4ce7706521
commit
7d7d3bb8da
+13
-2
@@ -157,8 +157,19 @@ keeps the whole layer out of the export.
|
||||
Bulk-load a reviewed plan with `bggpipe shelve --import plan.csv` (columns
|
||||
`name,opening`, accepting opening ids or labels) — rejects are reported
|
||||
(unknown name, ambiguous copies, unknown opening, doesn't fit, lives
|
||||
inside another box), never guessed, and re-imports preserve hand-entered
|
||||
notes. `bggpipe dims` reports per-opening capacity, overfull warnings, and
|
||||
inside another box), never guessed. Re-importing is an upsert, not a
|
||||
reset: rows move their games, games absent from the plan keep their
|
||||
spots, and hand-entered notes, lane choices, and acknowledgments survive
|
||||
whenever the opening is unchanged.
|
||||
|
||||
Some placements are deliberate misfits — square boxes spine-out on a
|
||||
shallow shelf, standing proud of the edge. The checker will honestly
|
||||
refuse those forever, so accept the overhang on purpose: the **accept
|
||||
overhang** button in the opening's view (it appears on any resident the
|
||||
lanes can't take), or an `acknowledge` column (`yes`) in the import CSV.
|
||||
An acknowledged box takes the standing lane without the depth check —
|
||||
the width budget stays honest — and stops counting as a warning. Once
|
||||
acknowledged, later imports needn't re-state it. `bggpipe dims` reports per-opening capacity, overfull warnings, and
|
||||
misfits against your real furniture. Capacity uses a **two-lane packing
|
||||
model**: each opening holds a flat stack (thinnest axes summing against
|
||||
interior height, claiming the widest flat box's width) and a standing lane
|
||||
|
||||
Reference in New Issue
Block a user