---
id: ADR-PFM-ELG-001
title: Eligibility is a Platform module over one shared rules grammar
product_area: platform
module: eligibility
revision: 1
status: proposed
design_intent: confirmed
source_sha:
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
decision: >-
  Platform owns eligibility as a module and compiles its shared rule grammar
  into reporting queries.
constrains:
  - DOM-PFM-ELG-001
  - DOM-PFM-ELG-002
  - DOM-PFM-ELG-003
  - SVC-PFM-ELG-eligibility
  - RESP-PFM
origin: >-
  Eligibility Engine architecture D-01, D-11 and D-12, approved by Andrew
  2026-10-17 (PLAT-M11 "Decisions"); Expressions proposal D-10
alternatives:
  - option: Create a separate service
    why_not: A separate boundary adds a remote call and duplicates workspace isolation.
  - option: Adopt an external policy language
    why_not: >-
      An external language needs additional reporting compilation and product
      explanations.
consequences:
  - Platform owns rule storage and lifecycle.
  - Compiled conditions use the reporting infrastructure.
  - Formula support depends on the shared calculation language.
supersedes: []
evidence:
  - >-
    services-platform at ad3f6a6:
    docs/proposals/eligibility/17-decision-register.md;
    docs/milestones/PLAT-M11-eligibility-rules.md (Decisions)
  - 'services-platform at ad3f6a6: docs/eligibility.md §1, §8'
---
# Eligibility is a Platform module over one shared rules grammar

## Context

Applications need a common way to express qualification and explain its result.

## Decision

Platform owns eligibility as a module and compiles its shared rule grammar into reporting queries.

## Alternatives Considered

Create a separate service: A separate boundary adds a remote call and duplicates workspace isolation.

Adopt an external policy language: An external language needs additional reporting compilation and product explanations.

## Consequences

Platform owns rule storage and lifecycle. Compiled conditions use the reporting infrastructure. Formula support depends on the shared calculation language.
