Entity Reference
All entities use Lombok annotations (@Data, @Getter, @Setter) and are mapped to H2 tables via @MappedEntity.
Note
Entities with @Id that go through CrudRepository.update() must use explicit getters/setters instead of Lombok @Getter/@Setter. Lombok hides the @Id annotation from the Micronaut Data annotation processor, causing "No identity is present" errors. Currently, EventRelations and Room follow this pattern.
User
Table: users
UserAccessToken
Table: user_access_tokens
Room
Table: rooms
Event
Table: event
RoomMember
Table: room_user
EventRelations
Table: event_relations
MediaMetadata
Table: media_metadata
ServerSigningKey
Table: server_signing_key
UserPushRule
Table: user_push_rules
DeviceInbox
Table: device_inbox