Skip to content

Lint Rules Configuration

Complete guide to customizing BPMN and DMN validation rules in Champa Intelligence.


Overview

The Model Validator (Linter) checks BPMN and DMN models against best practices and organizational standards. Administrators can customize which rules are enabled, their severity levels, and specific validation parameters.

Required Permission: manage_roles (admin access)

Navigation: Admin → Lint Rules Configuration


Rule Categories

BPMN Rules

Modeling Standards: - Element naming conventions - Label requirements - Connector labeling - Documentation requirements

Technical Quality: - Error handling configuration - Retry strategies - Timeout settings - Async configuration

Complexity & Maintainability: - Activity count limits - Nesting depth limits - Subprocess usage - Variable naming

Security & Compliance: - Sensitive variable detection - External task configuration - Script task security - Expression validation

DMN Rules

Decision Table Quality: - Input/output naming - Hit policy validation - Rule completeness - Duplicate rule detection

Expression Validation: - FEEL syntax checking - Type consistency - Variable references

Documentation: - Decision naming - Description requirements - Business context


Severity Levels

Severity Description Typical Use Case
ERROR Critical issue that must be fixed Missing error boundary, invalid configuration
WARNING Important issue that should be fixed Missing labels, complexity warnings

Impact on Validation:

  • ERROR: Validation fails, deployment should be blocked
  • WARNING: Validation passes with warnings, review recommended

Default Rules

Critical BPMN Rules (ERROR)

Error Boundary Events:

Rule: error-boundary-event-required
Severity: ERROR
Description: All service tasks should have error boundary events
Parameters:
  - applies_to: serviceTask, sendTask, businessRuleTask
  - required_event_type: bpmn:BoundaryEvent[errorEventDefinition]

Invalid Configurations:

Rule: invalid-retry-config
Severity: ERROR
Description: Async tasks with retries must have valid time cycle
Parameters:
  - check_async: true
  - require_time_cycle: true
  - min_retry_count: 1

Important BPMN Rules (WARNING)

Labeling:

Rule: sequence-flow-label-required
Severity: WARNING
Description: All sequence flows should have descriptive labels
Parameters:
  - exclude_from_gateway: false
  - min_label_length: 3

Complexity:

Rule: max-activity-count
Severity: WARNING
Description: Process should not exceed recommended activity count
Parameters:
  - max_activities: 50
  - exclude_types: [startEvent, endEvent]

Documentation Rules (INFO)

Process Documentation:

Rule: process-documentation-required
Severity: INFO
Description: Process should have documentation
Parameters:
  - min_doc_length: 50
  - require_purpose: true


Next Steps


Support

For lint rules questions: