Methodology note

Missing and stale data: not evaluated or conservative breach

When a rule's input is missing, the registry's default leaves the rule not evaluated: the partial numbers prove nothing, and no zero is invented. A rule version can instead choose a conservative-breach policy, which reads the gap as a breach until the data arrives. Some breaches are proven even with gaps, because the missing values could only make them worse.

Applies to these restrictions

Two policies

  • Not evaluated (default): the result reads not evaluated with MISSING_POSITION_DATA, and the next step is to supply the values.
  • Conservative breach: the result reads breach with CONSERVATIVE_MISSING_DATA, a deliberately pessimistic reading until the values arrive.

The choice is made per rule version. The conservative policy suits limits where an unknown is itself unacceptable.

What partial data can prove

Missing data blocks a compliant reading, but not always a breach. If the known notionals already exceed a derivative cap, a missing notional can only add, so the breach is proven and stands.

A largest-member maximum already over its ceiling is proven too. A weighted average with an unknown member proves nothing, even when the known member alone is far over the cap.

Stale is missing

A holding whose approved price is older than the organisation's threshold is left unvalued (STALE_PRICES). A snapshot older than its threshold reads STALE_POSITIONS.

A late delivery inside its grace window is different. It reads pending external data, which is neither a pass nor an exception until the window closes.

Pitfall: the conservative policy floods the queue

Conservative breaches are real cases. On a book with daily pricing gaps they can bury genuine breaches.

Pair the policy with an owner for the data, and review how often it fires.

Worked example

One fund has no readable value, so under the conservative policy the cash rule reads breach until the value arrives; the default policy would read not evaluated.

Rule template: cash_range

cashClassNames: Cash
Bounds: hard min 2% · hard max 10%
unknownDataPolicy: conservative_breach

Holdings
HoldingClassMarket value
Cash at bankCash50
Listed equitiesStocks900
Unpriced fundFunds–
Result
GroupStatusValueBoundsHeadroom to the hard boundCode
Cash Breach – 2% – 10% – CONSERVATIVE_MISSING_DATA
  • CONSERVATIVE_MISSING_DATA: Data was missing and this rule version's approved unknown-data policy is conservative_breach, so the gap is treated as a breach rather than as Not Evaluated.

Computed at build time by the Acclimetry rule engine (backend commit 8197063); the same code runs in the product.

Questions

When should a rule use the conservative policy?

Where acting on a false breach costs less than missing a real one, such as a sanctions screen. For most allocation limits, the default reading with a data case is enough.

Does a conservative breach open a case?

Yes, like any breach result. It reads breach until the data arrives, and a fresh compliant reading can then close it.

Updated: 12 October 2026Acclimetry · Foreranger Ltd