Move rate limit up

This commit is contained in:
Owen
2026-07-01 17:30:07 -04:00
parent bcc128aeb6
commit 807613f28c
@@ -9,7 +9,10 @@ import logger from "@server/logger";
import { fromError } from "zod-validation-error"; import { fromError } from "zod-validation-error";
import { eq, and, ne, inArray } from "drizzle-orm"; import { eq, and, ne, inArray } from "drizzle-orm";
import { OpenAPITags, registry } from "@server/openApi"; import { OpenAPITags, registry } from "@server/openApi";
import { rebuildClientAssociationsFromSiteResource, isOrgRebuildRateLimited } from "@server/lib/rebuildClientAssociations"; import {
rebuildClientAssociationsFromSiteResource,
isOrgRebuildRateLimited
} from "@server/lib/rebuildClientAssociations";
const setSiteResourceRolesBodySchema = z const setSiteResourceRolesBodySchema = z
.object({ .object({
@@ -108,6 +111,15 @@ export async function setSiteResourceRoles(
); );
} }
if (await isOrgRebuildRateLimited(siteResource.orgId)) {
return next(
createHttpError(
HttpCode.TOO_MANY_REQUESTS,
"Too many concurrent rebuild operations for this organization. Please retry after a moment."
)
);
}
// Check if any of the roleIds are admin roles // Check if any of the roleIds are admin roles
const rolesToCheck = await db const rolesToCheck = await db
.select() .select()
@@ -167,15 +179,6 @@ export async function setSiteResourceRoles(
} }
}); });
if (await isOrgRebuildRateLimited(siteResource.orgId)) {
return next(
createHttpError(
HttpCode.TOO_MANY_REQUESTS,
"Too many concurrent rebuild operations for this organization. Please retry after a moment."
)
);
}
rebuildClientAssociationsFromSiteResource(siteResource).catch((e) => { rebuildClientAssociationsFromSiteResource(siteResource).catch((e) => {
logger.error( logger.error(
`Failed to rebuild client associations for site resource ${siteResourceId}. Error: ${e}` `Failed to rebuild client associations for site resource ${siteResourceId}. Error: ${e}`