refactor(housekeeping): reuse request capability context

This commit is contained in:
2026-08-26 21:20:12 +02:00
parent cc6bb9a9a3
commit edc165ba8d
5 changed files with 134 additions and 8 deletions
@@ -0,0 +1,19 @@
import { satisfiesCapability } from "./capability-context";
import type {
CapabilityRequirement,
HousekeepingCapabilityContext,
HousekeepingResult,
} from "./contracts";
import { fail, ok } from "./contracts";
import { createCorrelationId } from "./correlation";
export function authorizeHousekeeping(
context: HousekeepingCapabilityContext,
requirement: CapabilityRequirement,
): HousekeepingResult<HousekeepingCapabilityContext> {
const correlationId = createCorrelationId();
return satisfiesCapability(context, requirement)
? ok(context, correlationId)
: fail("FORBIDDEN", "errors.housekeeping.forbidden", correlationId);
}