fix(ssr): repair New Invoice + Transaction Edit 500s and broken modal sizes
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>
This commit is contained in:
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user