Status: backlog Priority: P0 Created: 2026-02-21 Owner: AI Depends-on: none
The routing statechart currently uses sfr/form-state (from ../statecharts/ rad_integration.cljc) to launch forms when routing to them. That function calls sfr/start-form! which uses the deprecated uism/begin!. The new RAD form statechart (form_chart.cljc) works via form/start-form! → scf/start!, but the routing path bypasses it entirely. This causes 22/34 form E2E test failures — forms work via direct API but NOT through routing.
form-route-state function in com.fulcrologic.rad.routing (fulcro-rad-statecharts) that returns a routing state (using scr/rstate) with:
form/start-form! (from com.fulcrologic.rad.form) to start the form's statechartform/abandon-form! to clean up:route/target (form class) and :route/params (set of param keywords)sfr/form-state currently expects)src/demo/com/example/ui/ui.cljc) must be updated to use the new form-route-state instead of sfr/form-statesfr require from the demo (no more rad_integration dependency):event-loop? :immediate (headless/CLJ testing)sc.session/ident->session-id)src/main/com/fulcrologic/rad/routing.cljc — Add form-route-state functionsrc/demo/com/example/ui/ui.cljc — Replace sfr/form-state with new helper../statecharts/src/main/com/fulcrologic/statecharts/integration/fulcro/rad_integration.cljc — Reference only (do NOT edit; we're replacing its usage, not modifying it)sfr/form-state in ../statecharts/rad_integration.cljc (lines 301-320) to understand the on-entry/on-exit shapescr/rstate in ../statecharts/routing.cljc to understand how to create routing states with entry/exit hooksform-route-state in com.fulcrologic.rad.routing that:
scr/rstate to create the routing stateform/start-form!form/abandon-form!routing-chart to use the new functionsfr/form-state: ../statecharts/rad_integration.cljc:301-320 — current (deprecated) implementationsfr/start-form!: ../statecharts/rad_integration.cljc:285-299 — uses uism/begin!form/start-form!: src/main/com/fulcrologic/rad/form.cljc:365-403 — new implementation using scf/start!scr/rstate: ../statecharts/routing.cljc:337-371 — routing state builderscr/routing-regions: ../statecharts/routing.cljc — routing region buildersrc/demo/com/example/ui/ui.cljc:51-73form-route-state also handle the report case (a report-route-state)? Reports currently use scr/rstate directly and work, so probably not needed now.form-route-state exists in com.fulcrologic.rad.routingform-route-state instead of sfr/form-statesfr/ or rad_integration requires in the demoCan you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |