AF10

form.rehydrate() was called, but the form has no defaultValues factory to re-run.

In development this reads:

attaform form.rehydrate(): no defaultValues factory was captured. Configure useForm({ defaultValues: () => ... }) to enable rehydrate.

What happened

rehydrate re-fires the captured defaultValues function and merges its fresh result over the current values, then runs a validation sweep. It is not a reset: dirty, touched, and submit state all survive the call, so chain form.reset() when you want the form pristine around the new data. That contract only exists when defaultValues was passed as a function; a plain object (or nothing) leaves no factory to replay, so the call throws at the call site instead of quietly resolving to nothing.

How to fix it

const form = useForm({
  schema,
  defaultValues: () => fetchDraft(id),
})

// Later, when the source data changes:
await form.rehydrate()

The form covers defaultValues in both shapes.