[Bug]: tldraw sync migration blank screen
### What happened?

I tried to create migrations for my custom shapes, I tried a lot of variations, many crashed, 

This code has node printing "loading room test" repeatedly but nothing more on the server or frontend, 

when I comment out the migration from my SchemaPropsInfo the app loads normally on the client.


Based on the [node server example](https://github.com/tldraw/tldraw/tree/main/templates/simple-server-example)
```
// I tried my own ID root but that caused a server error.
const SEQUENCE_ID_ROOT = 'com.tldraw.shape'
export const ARENA_TIME_SERIES = 'arena-timeseries';
const ARENA_TIME_SERIES_SEQUENCE_ID = `${SEQUENCE_ID_ROOT}.${ARENA_TIME_SERIES}`;

const arenaTimeSeriesVersions = createMigrationIds(ARENA_TIME_SERIES_SEQUENCE_ID, {
	AddLayout: 1,
})

export const arenaTimeSeriesMigrations = createMigrationSequence({
  sequenceId: ARENA_TIME_SERIES_SEQUENCE_ID,
  retroactive: true,
	sequence: [
		{
			id: arenaTimeSeriesVersions.AddLayout,
      scope: 'record',
			up(props: Record<string, any>) {
				props.layout = 'SEQUENCE'
			},
			down(props: Record<string, any>) {
				delete props.layout
			},
		},
	],
})

export const arenaShapeSchemas: Record<string, SchemaPropsInfo> = {
  [ARENA_TIME_SERIES]: {
    props: arenaTimeSeriesShapeProps,
    migrations: arenaTimeSeriesMigrations,
  }
}

const schema = createTLSchema({
  shapes: {
    ...defaultShapeSchemas,
    ...arenaShapeSchemas,
  },
  bindings: defaultBindingSchemas,
});
```

(also I am a bit confused how the client vs server shapes relate - seems using sync means that backend handles migrations)

### How can we reproduce the bug?

_No response_

### What browsers are you seeing the problem on?

Chrome

### Where did this happen?

The developer package

### Contact Details

exrhizo@gmail.com

### Code of Conduct

- [X] I agree to follow this project's Code of Conduct