mirror of
https://github.com/storytold/deckcraft.git
synced 2026-10-24 10:37:03 -06:00
soak_tests.rs drives every non-file command with plausible and hostile parameters over a ~100-slide deck, checking after each step that the document validates, the selection is in range, the undo stack is bounded, undo then redo restores the exact document, and every 100 steps that the deck saves and reopens as .deckcraft and .pptx. Four seeds x 400 steps run in CI (under a second); DECKCRAFT_SOAK_STEPS/SEED run it long. The long soak found that a chart a few points wide panicked in f64::clamp (label gutter min above max), and the render guard then blanked the whole slide. chart.rs now uses a non-panicking clamp_soft for the gutters and the zero line; a render test draws tiny charts next to a shape without the guard. Co-authored-by: Cursor <cursoragent@cursor.com>