···11import type { ExosphereModule } from "@exosphere/core/types";
22import { createCoreIndexer } from "@exosphere/core/sphere";
33-import { registerModulePermissions } from "@exosphere/core/permissions";
33+import {
44+ registerModulePermissions,
55+ CORE_MODULE,
66+ CORE_PERMISSIONS_COLLECTION,
77+ corePermissions,
88+} from "@exosphere/core/permissions";
49// import { feedsModule } from "@exosphere/feeds";
510import { featureRequestsModule } from "@exosphere/feature-requests";
611712export const modules: ExosphereModule[] = [featureRequestsModule];
1313+1414+// Register core sphere-level permissions.
1515+// This runs as a side effect on import — the server (app/src/server.ts) imports from
1616+// this module, so both the indexer and server share the same registration.
1717+registerModulePermissions(CORE_MODULE, corePermissions, CORE_PERMISSIONS_COLLECTION);
818919// Register module permissions so the indexer can check them
1020for (const mod of modules) {