Class PolicyResolver
- Namespace
- JD.AI.Core.Governance
- Assembly
- JD.AI.Core.dll
Merges multiple PolicyDocument instances into a single resolved PolicySpec using conservative (most-restrictive) rules.
public static class PolicyResolver
- Inheritance
-
PolicyResolver
- Inherited Members
Methods
Resolve(IEnumerable<PolicyDocument>)
Resolves a collection of policies into a single effective PolicySpec.
public static PolicySpec Resolve(IEnumerable<PolicyDocument> policies)
Parameters
policiesIEnumerable<PolicyDocument>
Returns
Remarks
Merge rules:
- Policies are processed in scope order (Global → Organization → Team → Project → User) then by ascending Priority.
- Allowed lists: intersection (more restrictive wins).
- Denied lists: union (any deny applies).
- Numeric limits: minimum wins.
- Budget: minimum of all limits; alert threshold minimum.
- Sessions: requireProjectTag = any true wins; retention = minimum.