For Japanese version, see IRuleEngine-jp.md.
IRuleEngine (Rule Engine Specification)
1. Responsibility Boundary
IRuleEngine evaluates whether inputs, outputs, and execution process signals comply with organizational guardrails and invariant policies.
- Role:
- Non-role:
Return rule-evaluation outcomes including compliance, severity, and violation rationale.
Rule definition storage/lifecycle management is out of scope; this contract focuses on evaluation execution.
2. Contract Signature
namespace AIKernel.Abstractions.Rules;\n\npublic interface IRuleEngine\n{\n ValueTask<RuleEvaluationResult> EvaluateAsync(\n string ruleId,\n RuleEvaluationContext context,\n CancellationToken cancellationToken = default);\n}
3. Related Use Cases
UC-13Runtime signature verification and governance:UC-04Generation and output polishing:UC-21Policy execution:
Validates policy compliance in addition to signature integrity.
Checks generated content against formatting/safety rules.
Acts as core evaluator for guardrail enforcement.
4. Governance & Determinism
- Deterministic evaluation:
- Invariant enforcement:
- Side-effect free:
Identical ruleId and RuleEvaluationContext should yield identical results.
Critical violations must enable fail-closed interruption by upstream orchestration.
EvaluateAsync must not mutate input context or external system state.
5. Exception Contract
This interface does not hard-code exception types. Implementations should explicitly surface:
- Rule resolution failures:
- Evaluation runtime failures:
ruleId not found/unavailable.
Timeouts or engine-level execution errors.
6. Implementation Notes
- Engine diversity:
- Score integration:
Implementations may use deterministic rule logic, regex policies, or specialized evaluators.
Violations can be propagated into broader health signals such as SNR/HealthScore.
Changelog
- v0.0.0 / v0.0.0.0: Initial draft
- v0.0.1 (2026-05-06): Version upgrade aligned with documentation guidelines
architecture/interfaces/rules/IRuleEngine.md