---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/validation/types/interfaces/OrderingGuardOptions.md
description: Configuration for an ordering guard middleware.
---

# Interface: OrderingGuardOptions

Defined in: [src/batteries/validation/types.ts:207](https://github.com/NHTIO/ADK/blob/v1.20260824.1/src/src/batteries/validation/types.ts#L207)

Configuration for an ordering guard middleware.

## Properties

| Property                                                                         | Type                                                    | Description                                                                                                                                                                                                                                                            | Defined in                                                                                                                          |
| -------------------------------------------------------------------------------- | ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
|  `action?`                                           | `"enforce"` | `"mutate"`                               | `enforce` validates without mutation; `mutate` applies safe repairs before re-evaluation.                                                                                                                                                                              | [src/batteries/validation/types.ts:213](https://github.com/NHTIO/ADK/blob/v1.20260824.1/src/src/batteries/validation/types.ts#L213) |
|  `allowMetadataFallbackRepair?` | `boolean`                                               | Stronger, separate opt-in for vendor metadata fabrication. `action: 'mutate'` alone never fills missing metadata: unlike reordering or an empty filler, this can make a provenance claim. Both this flag and mutate action must be enabled for fallback repair to run. | [src/batteries/validation/types.ts:223](https://github.com/NHTIO/ADK/blob/v1.20260824.1/src/src/batteries/validation/types.ts#L223) |
|  `disableAdvisoryRuleIds?`           | `string`\[]                                              | Advisory rule ids to skip entirely; this cannot suppress any blocking rule.                                                                                                                                                                                            | [src/batteries/validation/types.ts:227](https://github.com/NHTIO/ADK/blob/v1.20260824.1/src/src/batteries/validation/types.ts#L227) |
|  `mode?`                                               | `"union-of-rules"` | `"each"` | `"first-match"`       | Profile composition strategy; defaults to `union-of-rules`.                                                                                                                                                                                                            | [src/batteries/validation/types.ts:211](https://github.com/NHTIO/ADK/blob/v1.20260824.1/src/src/batteries/validation/types.ts#L211) |
|  `onRepair?`                                       | `"log"` | `"silent"`                                   | Whether applied repairs are logged or kept silent; defaults to `log`.                                                                                                                                                                                                  | [src/batteries/validation/types.ts:217](https://github.com/NHTIO/ADK/blob/v1.20260824.1/src/src/batteries/validation/types.ts#L217) |
|  `onViolation?`                                 | `"nack"` | `"throw"`                                   | Whether remaining blocking violations are nacked or thrown; defaults to `nack`.                                                                                                                                                                                        | [src/batteries/validation/types.ts:215](https://github.com/NHTIO/ADK/blob/v1.20260824.1/src/src/batteries/validation/types.ts#L215) |
|  `profiles`                                        | (`string` | [`OrderingProfile`](OrderingProfile.md))\[] | Profiles to resolve and evaluate, by registry name or consumer-authored profile object.                                                                                                                                                                                | [src/batteries/validation/types.ts:209](https://github.com/NHTIO/ADK/blob/v1.20260824.1/src/src/batteries/validation/types.ts#L209) |
|  `snapshotStashKey?`                       | `string`                                                | Stash key used for the stateful preservation snapshot.                                                                                                                                                                                                                 | [src/batteries/validation/types.ts:225](https://github.com/NHTIO/ADK/blob/v1.20260824.1/src/src/batteries/validation/types.ts#L225) |
