refactor(ssr): revert hiccup→Selmer migration; render forms in Hiccup again

Abandons the Selmer-templating step of the SSR re-authoring and moves the four
migrated form/wizard modals back to Hiccup (com/* components), keeping the
whole-form HTMX swap doctrine, top-rooted render functions, and the
session-backed wizard engine unchanged.

- transaction/edit, transaction/bulk_code, invoices (bulk-edit group), and
  pos/sales_summaries render via com/* again; every hx-* swap (whole-form +
  targeted location-cell / totals-tbody / inline account-cell swaps) is
  preserved exactly.
- add com/single-modal-card to centralize the md:w-[950px] md:h-[650px] modal
  chrome that previously lived only in the Selmer modal-card templates.
- delete auto-ap.ssr.selmer, auto-ap.ssr.components.selmer, selmer_test, the
  whole resources/templates tree (55 files), the selmer dependency, and the
  tailwind resources/templates content glob.
- strip Selmer guidance from the ssr-form-migration skill + modernization plan.

Verified: all four namespaces compile and render with no stringified-hiccup
leaks; output.css rebuilds byte-identically (no Tailwind class loss); 60 e2e
specs pass — the four reverted modals (incl. whole-form-swap focus/caret tests)
plus the untouched wizard/pay/new/rule modals.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-30 00:37:21 -07:00
parent e1a2f7b638
commit 8b43017d6e
71 changed files with 746 additions and 1793 deletions

View File

@@ -1,5 +1,12 @@
# SSR Form & Wizard Simplification — Migration Plan
> **⚠️ Selmer reverted (2026-06-29).** Pattern 4 below — migrating rendering from Hiccup
> to **Selmer templates** — was **abandoned and reverted**. The swap doctrine, top-rooted
> render functions, and the session-backed wizard engine (patterns 13) were kept; all
> rendering remains in **Hiccup** (`com/*` components). The `auto-ap.ssr.selmer` /
> `auto-ap.ssr.components.selmer` namespaces and the `resources/templates/` tree no longer
> exist. Treat every Selmer instruction below as historical context only.
>
> **Status:** Planning / for execution by an agent or engineer.
> **Owner:** Bryce
> **Type:** Refactor (no user-facing behavior change; parity required).