The remoteGroup module imports or refreshes GeeSome groups and posts from remote GeeSome manifest storage IDs or static IDs, and backs local-or-remote group lookup.
- Resolving a remote group static ID to the current manifest storage ID when needed.
- Local-or-remote
GET /group/:groupIdbehavior that returns an existing local group or imports a remote ID first. - Creating local remote-group rows from GeeSome group manifests.
- Importing missing published post refs from remote group manifests.
- Removing stale local imported posts when the remote manifest no longer references them.
- Preserving remote
localIdvalues, manifest storage IDs, and group counters during replay.
- Manifest parsing belongs to
entityJsonManifest. - Local group/post writes, counters, and manifest-derived state belong to
group. - Static ID resolution belongs to
staticIdandcommunicator. - Raw manifest/object reads belong to
storage.
- This module imports GeeSome manifest data, not ActivityPub/ATProto remote social objects.
- Keep remote group import idempotent: repeated imports should converge local state to the remote manifest.
- Use batched post-ref reads for large groups and avoid full post hydration when only refs are needed.
- Reconcile counters after edit/delete replay so imported state remains consistent.