• v1.0.2 aa4ceff30c

    fix: defeasible reason codes, _subjectAsObject unary semantics, checker reason whitelist
    CI / test (push) Successful in 6m16s
    CI / benchmark (push) Successful in 37s
    CI / publish (push) Successful in 10s

    Dvorak released this 2026-08-03 17:49:20 +00:00 | 7 commits to master since this release

    • LogicalOperators normal mode now emits top-level reason codes
      (never_rule_triggered / requirements_not_met / defeated_by_unless) when a
      defeasible rule resolves to 0, instead of degrading to no_matching_rule.
    • RuleEvaluator honors rule._subjectAsObject: unary DSL predicate calls inside
      binary evidence (banned(user) within can_open(user, doc)) check the relation
      on the subject itself, matching the unary fact's self-edge.
    • AuthorizationChecker reason whitelist now preserves the defeasible reason
      codes so the checker reports why a defeasible rule denied.
    Downloads