Leave Request Approval with Balance and Policy Enforcement
HR needs to approve leave requests while respecting accrual balances, team coverage requirements, and company blackout dates.
The problem
Leave requests submitted through HRIS are evaluated by Corules before manager notification. Accrual balance, blackout periods, consecutive day limits, and team coverage minimums are checked. Policy-compliant requests notify the manager for awareness. Requests violating coverage minimums escalate. Blackout-period requests block with explanation.
Without deterministic enforcement, AI agents either block every edge case (adding manual overhead) or silently approve decisions that violate policy — with no audit trail to show auditors or regulators.
How Corules solves it
Corules sits between your AI agent and the action it wants to take. When the agent proposes a decision, Corules evaluates the full context against your compiled policy set in a single deterministic pass — no LLM, no ambiguity.
The result is a structured outcome: BLOCK — Request overlaps Q4 blackout period (Nov 25 – Jan 3). Policy prohibits leave during this period.
Decision outcome: BLOCK
Request overlaps Q4 blackout period (Nov 25 – Jan 3). Policy prohibits leave during this period.
Policy example
Corules policies are written in CEL (Common Expression Language). They are compiled once at publish time and evaluated deterministically at request time — no LLM, no variability.
// Leave policy (CEL)
context.requested_days <= context.available_balance
&& !context.overlaps_blackout_period
&& context.team_coverage_remaining >= params.min_team_coverage_pct
&& context.consecutive_days <= params.max_consecutive_leave_daysThis expression is evaluated against the structured context your agent sends in the /v1/validate request.
Integration options
Corules integrates with the tools your teams already use. All integrations call the same REST API or MCP server — your policy logic stays in one place.
Frequently Asked Questions
Can blackout periods vary by department?
Yes. Blackout period parameters can be scoped to department, business unit, or role type.
What is team coverage and how is it computed?
The calling HRIS computes team_coverage_remaining (what percent of the team will be present if this leave is approved) and passes it in context. Corules enforces the floor.
Ready to enforce this policy?
Start free — evaluate up to 1,000 decisions per month with no credit card required.
Get started free