Every rule fired at the rate expected from the synthetic distribution, validating predicate execution correctness.
Spark execution check: default Workbench uses pure Python in this process (no SparkSession). Cluster scale needs mapPartitions + broadcast rule package — see repo docs/KNOWN_LIMITATIONS.md.
Bulk load (CSV with header, JSON array, or JSONL). CSV supports quoted fields; nested lending-style facts can use wrap-as-t.
Idle
Raw batch JSON
Uses existing REST APIs. Set X-Roles in the header when required (e.g. dq_steward for DQ, ai_reviewer for AI, platform_admin for lineage). React Flow / full graph designer is not bundled — graph response is JSON only.
AI rule suggestions (stub — not a full NL pipeline)
This calls POST /ai/suggest-rules with optional sample facts only. The bundled provider is a stub (no real NL→DRL model). For your own prompts/audit trail you can add fields inside each fact object, e.g. [{"intent":"Decline when DPD > 90"}].
Sample facts JSON array (optional):
AI suggestions queue
Fact for simulate (JSON object):
Chain / shadow / counterfactual
DRL (multi-rule for chain):
Fact JSON:
Shadow — primary DRL:
Shadow DRL:
Fact + run_id:
Counterfactual — same DRL, two facts:
baseline_fact
candidate_fact
Time travel (capture / replay)
Capture — run_id, DRL, fact:
Replay — snapshot_id from capture response, same run_id:
DQ evaluate
Requires role dq_steward (or admin). Fact JSON:
Checks JSON array:
Raw JSON
Graph enrich (structured + JSON)
Not a graph designer — server returns enriched JSON. Summary below; raw under the fold.
Raw JSON
Lineage events (run history table)
GET /lineage/events — typically needs platform_admin. Table is newest-first; open Raw for full payloads.
Raw JSON
Engine / platform (config view)
Read-only view of the active engine config map. Change via environment in production.
Import rule pack
Paste JSON from /rules/export or a minimal items array. Each item must include rule_handle, drl, and optional group.
Compare two versions (same handle)
Promotion (dev → stage → prod)
Pins record which version is in each environment. Sync dev from the time-active rule, then promote only forward along dev → stage and stage → prod. Runtime deployment wiring stays in your platform.