Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.drpn.ai/llms.txt

Use this file to discover all available pages before exploring further.

Rules and schemas are backend-owned contracts. The UI creates and edits them through facade services; the backend validates, stores, compiles, and executes them.

RuleSet model

RuleSet reconciliation is centered on these entities:
EntityPurpose
RuleSetThe named rule collection for a reconciliation workflow.
RuleOne executable rule belonging to a RuleSet.
RuleSetCompareScopeThe compare context for a run, including source and matching configuration.
RuleSetCompareSourceA source participating in the compare scope.
Facade services create saved runs and RuleSet structures together when the workflow needs a runnable compare.

Rule execution

Rule execution is owned by:
service/reconciliation/ReconciliationRuleEngineServices.xml
src/main/groovy/darpan/reconciliation/rule/RuleEngineServices.groovy
Key service responsibilities:
  • Save and delete RuleSets and Rules
  • Compile active rules into a Drools/KIE container
  • Execute rules against compare-ready data
  • Execute rules against matched pairs from the Spark base diff
  • Clear the RuleSet cache after rule changes
Rule services include:
reconciliation.ReconciliationRuleEngineServices.compile#RuleSet
reconciliation.ReconciliationRuleEngineServices.execute#RuleSet
reconciliation.ReconciliationRuleEngineServices.execute#RuleSetMatchedPairs
reconciliation.ReconciliationRuleEngineServices.clear#RuleSetCache
Execution services are file type agnostic. Callers parse CSV, JSON, or other source payloads into compare-ready data facts before invoking the RuleSet engine.

JSON schema model

Schemas describe source data shape and parsing expectations. The backend stores schema definitions as records, not UI-only configuration. The main schema entity is:
darpan.jsonschema.JsonSchema
Schema records include fields such as:
  • jsonSchemaId
  • schemaName
  • description
  • systemEnumId
  • ownerUserId
  • companyUserGroupId
  • createdByUserId
  • schemaText
  • statusId
The service layer under service/jsonschema/** owns schema validation, inference, persistence, and lookup behavior.

Backend ownership

Workflows that depend on rules or schemas use Darpan component service contracts. Rules and schemas are persisted backend configuration, not browser-local state.