Table of Contents

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

policies IEnumerable<PolicyDocument>

Returns

PolicySpec

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.