BUG E/F: the Vendor and Client wizard step cards overflowed — horizontal
scrollbar, clipped fields, a huge empty grey left region. The step-card lays the
step timeline in a vertical left sidebar (grow-0, self-stretch), but
vendor-timeline/client-timeline rendered the HORIZONTAL `timeline` component,
which forced the shrink-to-fit sidebar to ~full card width and pushed the body
off-screen.
- vendor-timeline / client-timeline: use timeline/vertical-timeline +
vertical-timeline-step (the components already existed) instead of the
horizontal pair.
- vendors.clj: step bodies w-[600px] h-[350px] -> w-full h-[350px] so the body
fills the width left of the now-narrow vertical timeline.
Verified live (agent-browser): Vendor 760x520, Client 820x560, vertical timeline,
no horizontal overflow, Info->Terms navigation + validation re-render lay out
correctly. Both files pass lein cljfmt check.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Three regressions from the SSR rendering-modernization migration, all verified
live via agent-browser:
- BUG A — New Invoice: choosing a client 500'd from /invoice/new/due-date
(ClassCastException: DateTime cannot be cast to java.util.Date). `due-date`
and `scheduled-payment-date` called `coerce/from-date` on values already
decoded to clj-time DateTimes. Drop the coerce; use the decoded dates.
- BUG C — Transaction Edit: any whole-form swap (mode toggle, vendor change,
add/remove row) 500'd whenever the txn had >=1 autopay-invoice match
(ClassCastException at links-body*: PersistentVector cannot be cast to Named).
The autopay link-panel's hidden `action` input was missing `:form ""`, so it
serialized alongside the main `action` hidden, producing a duplicate param
that Ring collapsed to a vector. Add `:form ""` to match the unpaid/rule panels.
- Modal sizes: Vendor/Client/Invoice-Pay modals ballooned to full width because
resources/public/output.css was missing their arbitrary Tailwind size classes.
Root cause: tailwind.config.js `content` never scanned resources/templates/**/*.html
(46 Selmer templates the migration introduced), so a rebuild also dropped
template-only classes like md:w-[950px]. Add the templates glob and rebuild;
all modal size classes now present, no working modal regressed.
Docs: add 2026-06-27 QA findings + resumable fix task list; cross-link from the
migration plan. Remaining (per the new plan): Vendor/Client inner step-body
overflow, wizard step animations, bulk-edit empty-selection 500, footer EDN leak.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>