Skip to main content

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

FieldTypeDescriptionDefault
blocked_termsstring[]Terms for matching. An empty list uses the built-in terms such as itar, ear, usml, eccn, and missile guidance.built-in list
actionblockThe only accepted and effective action.block
fuzzy_matchingbooleanEnables Levenshtein-distance matching in the request-phase check. Buffered output checks do not use fuzzy matching.false
max_distanceintegerMaximum request-side edit distance used when fuzzy_matching is enabled.1

How it works

  1. Request phase: The gateway makes one string from the request text, changes it to lowercase, and examines each blocked term.
  2. Fuzzy matching: If enabled, the request check uses edit distance with max_distance.
  3. Output checks: The server checks buffered output for the same terms with specified word boundaries.
  4. Verdict: A match blocks the request or output.
  5. itar-ear-filter does not give redact or warn behavior.

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_matching is 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