ITAR/EAR Filter
The itar-ear-filter policy blocks configured terms associated with ITAR and
EAR. It checks request text and buffered output. Request checks can use fuzzy
matching. Output checks use specified word boundaries. It does not determine
an item's export classification or legal status.
Configuration
pack:
name: itar-ear-filter
version: "1.0.0"
enabled: true
policies:
chain:
- itar-ear-filter
policy:
itar-ear-filter:
blocked_terms:
- "missile guidance"
- "night vision"
- "export controlled"
fuzzy_matching: true
max_distance: 1
Fields
| Field | Type | Description | Default |
|---|---|---|---|
blocked_terms | string[] | Terms for matching. An empty list uses the built-in terms such as itar, ear, usml, eccn, and missile guidance. | built-in list |
action | block | The only accepted and effective action. | block |
fuzzy_matching | boolean | Enables Levenshtein-distance matching in the request-phase check. Buffered output checks do not use fuzzy matching. | false |
max_distance | integer | Maximum request-side edit distance used when fuzzy_matching is enabled. | 1 |
How it works
- Request phase: The gateway makes one string from the request text, changes it to lowercase, and examines each blocked term.
- Fuzzy matching: If enabled, the request check uses edit distance with
max_distance. - Output checks: The server checks buffered output for the same terms with specified word boundaries.
- Verdict: A match blocks the request or output.
itar-ear-filterdoes not giveredactorwarnbehavior.
Important notes
- The built-in list contains export-control markers. It does not include all USML or CCL categories.
- At this time, output checks use specified matching when request-side
fuzzy_matchingis enabled. - This policy is a technical guardrail, not a replacement for export-control review.
- For SSE output, the gateway buffers assistant text before it applies the term block.
Correct examples
Strict built-in defaults
pack:
name: defense-defaults
version: "1.0.0"
enabled: true
policies:
chain:
- itar-ear-filter
policy:
itar-ear-filter: {}
Add specified organization terms
pack:
name: defense-program-terms
version: "1.0.0"
enabled: true
policies:
chain:
- itar-ear-filter
policy:
itar-ear-filter:
blocked_terms:
- "radar cross section"
- "thermal imaging"
- "satellite technology"
fuzzy_matching: true
max_distance: 2
Best practices
- Start with built-in terms, then add specified organization terms for platforms and components.
- Use fuzzy matching only when spelling errors or hidden terms are more important than false matches.
- Combine it with other term controls only as a signal layer. Complete the necessary export-control review in a different workflow.
Next steps
- Dual-Use Filter — configured dual-use term matching
- Entity List Filter — configured entity-name matching
- DLP Filter — General sensitive-pattern blocking
- Data Routing Policy — Provider-level routing restrictions