Export Control Awareness (cross-cutting/export-control/export-control-awareness)
Use when an aerospace engineering task touches data or items that may be
export controlled: sharing a specification with a foreign collaborator,
publishing a report, releasing design data to a vendor, or starting work
on propulsion, guidance, sensor, or materials topics. The skill screens
the topic for red flags and returns a conservative verdict class with
handling guidance. It is a screening aid, not a legal opinion: every
verdict must be confirmed by the organization's trade compliance office
before any release of controlled data.
Domain quick reference
- Jurisdiction split: items described by the US Munitions List (USML,
22 CFR part 121) are defense articles under ITAR. Items under EAR
jurisdiction are described by the Commerce Control List (CCL,
15 CFR 774) or fall to EAR99, the default for items not elsewhere
specified.
- USML categories that matter for aerospace: IV (launch vehicles,
guided missiles, ballistic missiles, rockets, torpedoes, bombs and
mines), VIII (aircraft and related articles), XII (fire control,
laser, imaging and guidance equipment), XIII (materials), XV
(spacecraft and related articles), XVIII (directed energy weapons),
plus the catch-alls XVII and XXI. Category XIX is reserved.
- EAR 600-series: export control reform moved most defense articles
from the USML to 600-series ECCNs. Aerospace examples: 9A610
(military aircraft), 9A619 (military gas turbine engines), 9D610 and
9E610 (software and technology for those), 8A609 (marine gas turbine
engines), 0A606 (military ground vehicles). Verify each ECCN against
the current regulation.
- EAR99: the default classification for items with no CCL entry. EAR99
is not a free pass: end-use and end-user screening still applies, and
supporting a restricted end use or end user is prohibited.
- Technical data (ITAR): information required for the design,
development, production, manufacture, assembly, operation, repair,
testing, maintenance, or modification of defense articles, including
blueprints, drawings, photographs, plans, and instructions. General
scientific and mathematical principles commonly taught, and public
domain information, are excluded.
- Public domain (ITAR 22 CFR 120.34, EAR 15 CFR 734.7 through 734.8):
information published and sold without restriction, published patents,
unlimited-distribution conference material, and fundamental research
results. The fundamental research exclusion is lost when the research
agreement restricts publication or sharing.
- Deemed export: releasing technical data or technology to a foreign
person inside the US is treated as an export to their country of
nationality and may require authorization.
- Red-flag topics (screened by flag_restricted_topic): turbine blade
alloys and high-temperature materials, propulsion technology,
missiles and rockets, controlled sensors and seekers, avionics and
navigation, low-observable design, spacecraft, unmanned aerial
systems, radiation-hardened electronics, cryptographic items,
hypersonics, directed energy, specialty composites, energetic
materials, fire control, military aircraft and engines, and defense
services. A red flag means stop and verify, not "controlled".
Workflow
- Describe the item or data set in one free-text string: what it is,
what it is made of, and what it does.
- Screen the topic:
flag_restricted_topic(item) returns matched red
flags with reasons. Any hit is a stop-and-verify signal.
- Establish the information basis:
is_public_domain(source=...) with
source one of published, textbook, patent, conference,
fundamental-research, unpublished. Pass restricted_agreement=True
when a research agreement restricts publication or sharing.
- Run the tree:
export_decision_tree(item, audience, purpose, ...)
with audience one of us-person, foreign-person, public, and purpose
one of internal-engineering, sharing, publication, teaching,
fundamental-research, procurement, foreign-release. The verdict is
defense-article, dual-use, public-domain, or not-controlled, with
jurisdiction, risk, red flags, and actions.
- Follow the actions and escalate: never release controlled data
without authorization, and never mark anything as compliant on your
own authority.
All functions validate their inputs and raise ValueError on unknown
audience, purpose, source, or USML category values.
Worked example
An engineer wants to share a single-crystal turbine blade alloy
specification with a foreign collaborator.
from export_control_logic import export_decision_tree, flag_restricted_topic
item = "single crystal turbine blade alloy for the high pressure turbine"
print(flag_restricted_topic(item))
result = export_decision_tree(
item=item,
audience="foreign-person",
purpose="sharing",
ear_600_series=True,
)
print(result["verdict"], result["jurisdiction"], result["risk"])
Output: the topic flags "turbine blade alloys and high-temperature
materials", and the tree returns verdict dual-use, jurisdiction EAR,
risk medium, with a deemed export action: releasing the data to a
foreign person inside the US is a deemed export to their country of
nationality, so authorization is required before sharing.
A second example: a lift coefficient formula from a published textbook
classifies as public-domain (is_public_domain(source="textbook")
returns True), because published textbooks are public domain information.
Pitfalls
- Treating a red-flag topic hit as a verdict: flag_restricted_topic is
a stop-and-verify signal, not an automatic denial, and a clean topic
screen does not by itself clear a release.
- Marking anything as compliant on your own authority: the tree returns
jurisdiction, risk, and actions, but releasing controlled data still
requires authorization, and only the compliance office can certify
anything.
- Forgetting the deemed export rule: sharing technical data with a
foreign person inside the US is a release to their country of
nationality and needs the same authorization as an export.
- Assuming "published" implies public domain: only the listed sources
(published, textbook, patent, conference, fundamental-research)
classify as public domain, and unpublished results under a restricted
research agreement do not.
- Passing unknown audience, purpose, source, or USML category values:
the functions raise ValueError, so mis-typed inputs fail loudly
instead of defaulting to a permissive verdict.
- Skipping the handling checklist before a release: the checklist in
assets/export-handling-checklist.md must be worked through and the
verdict confirmed by the trade compliance office first.
Verification checklist
Use the handling checklist in assets/export-handling-checklist.md and
verify before committing any release:
Scripts and references
- scripts/export_control_logic.py - pure Python logic module:
classify_export_status(), is_defense_article(),
is_public_domain(), flag_restricted_topic(),
export_decision_tree().
- scripts/test_export_control.py - offline contract test (stdlib
unittest, deterministic): turbine blade alloy topics return a
restricted red flag, published textbook formulas classify as
public-domain, and invalid inputs raise ValueError. Run with
python3 scripts/test_export_control.py.
- references/itar-ear-overview.md - regulatory overview: USML category
table, EAR 600-series examples, technical data and public domain
definitions, fundamental research exclusion, deemed exports, and the
red-flag topic table with citations.
Related skills
- cross-cutting/documentation/engineering-report - report writing that
must carry export control review records.
- cross-cutting/documentation/engineering-margins - engineering margin
analyses whose results may be technical data.
- cross-cutting/data-sources/aeronautical-data-sources - sourcing
aeronautical data, some of which is restricted.
Behavior contract (gate 3)
The export-classification logic (topic red flags, public-domain basis,
and the export decision tree) is exercised by the gate 3 contract test:
scripts/test_export_control.py against scripts/export_control_logic.py
(stdlib unittest, offline). Run:
python3 scripts/test_export_control.py
1---2name: export-control-awareness3description: Use when an aerospace engineer or agent must decide whether an item, data set, or task is export controlled under ITAR or EAR: it produces an export control assessment, screens restricted topics for red flags (turbine blade alloys, gas turbine engines, guidance systems for missiles, propulsion, sensors, avionics, spacecraft), and returns a verdict class (defense article, dual-use, public domain, not controlled) with handling guidance including deemed export checks for foreign collaborators. Trigger: ITAR, EAR, USML, EAR99, 600-series, defense articles, technical data, export control, deemed export, fundamental research, public domain, compliance review, sharing data with foreign collaborators.4license: Apache-2.05---67# Export Control Awareness (cross-cutting/export-control/export-control-awareness)89Use when an aerospace engineering task touches data or items that may be10export controlled: sharing a specification with a foreign collaborator,11publishing a report, releasing design data to a vendor, or starting work12on propulsion, guidance, sensor, or materials topics. The skill screens13the topic for red flags and returns a conservative verdict class with14handling guidance. It is a screening aid, not a legal opinion: every15verdict must be confirmed by the organization's trade compliance office16before any release of controlled data.1718## Domain quick reference1920- Jurisdiction split: items described by the US Munitions List (USML,21 22 CFR part 121) are defense articles under ITAR. Items under EAR22 jurisdiction are described by the Commerce Control List (CCL,23 15 CFR 774) or fall to EAR99, the default for items not elsewhere24 specified.25- USML categories that matter for aerospace: IV (launch vehicles,26 guided missiles, ballistic missiles, rockets, torpedoes, bombs and27 mines), VIII (aircraft and related articles), XII (fire control,28 laser, imaging and guidance equipment), XIII (materials), XV29 (spacecraft and related articles), XVIII (directed energy weapons),30 plus the catch-alls XVII and XXI. Category XIX is reserved.31- EAR 600-series: export control reform moved most defense articles32 from the USML to 600-series ECCNs. Aerospace examples: 9A61033 (military aircraft), 9A619 (military gas turbine engines), 9D610 and34 9E610 (software and technology for those), 8A609 (marine gas turbine35 engines), 0A606 (military ground vehicles). Verify each ECCN against36 the current regulation.37- EAR99: the default classification for items with no CCL entry. EAR9938 is not a free pass: end-use and end-user screening still applies, and39 supporting a restricted end use or end user is prohibited.40- Technical data (ITAR): information required for the design,41 development, production, manufacture, assembly, operation, repair,42 testing, maintenance, or modification of defense articles, including43 blueprints, drawings, photographs, plans, and instructions. General44 scientific and mathematical principles commonly taught, and public45 domain information, are excluded.46- Public domain (ITAR 22 CFR 120.34, EAR 15 CFR 734.7 through 734.8):47 information published and sold without restriction, published patents,48 unlimited-distribution conference material, and fundamental research49 results. The fundamental research exclusion is lost when the research50 agreement restricts publication or sharing.51- Deemed export: releasing technical data or technology to a foreign52 person inside the US is treated as an export to their country of53 nationality and may require authorization.54- Red-flag topics (screened by flag_restricted_topic): turbine blade55 alloys and high-temperature materials, propulsion technology,56 missiles and rockets, controlled sensors and seekers, avionics and57 navigation, low-observable design, spacecraft, unmanned aerial58 systems, radiation-hardened electronics, cryptographic items,59 hypersonics, directed energy, specialty composites, energetic60 materials, fire control, military aircraft and engines, and defense61 services. A red flag means stop and verify, not "controlled".6263## Workflow64651. Describe the item or data set in one free-text string: what it is,66 what it is made of, and what it does.672. Screen the topic: `flag_restricted_topic(item)` returns matched red68 flags with reasons. Any hit is a stop-and-verify signal.693. Establish the information basis: `is_public_domain(source=...)` with70 source one of published, textbook, patent, conference,71 fundamental-research, unpublished. Pass `restricted_agreement=True`72 when a research agreement restricts publication or sharing.734. Run the tree: `export_decision_tree(item, audience, purpose, ...)`74 with audience one of us-person, foreign-person, public, and purpose75 one of internal-engineering, sharing, publication, teaching,76 fundamental-research, procurement, foreign-release. The verdict is77 defense-article, dual-use, public-domain, or not-controlled, with78 jurisdiction, risk, red flags, and actions.795. Follow the actions and escalate: never release controlled data80 without authorization, and never mark anything as compliant on your81 own authority.8283All functions validate their inputs and raise ValueError on unknown84audience, purpose, source, or USML category values.8586## Worked example8788An engineer wants to share a single-crystal turbine blade alloy89specification with a foreign collaborator.9091```python92from export_control_logic import export_decision_tree, flag_restricted_topic9394item = "single crystal turbine blade alloy for the high pressure turbine"95print(flag_restricted_topic(item))96result = export_decision_tree(97 item=item,98 audience="foreign-person",99 purpose="sharing",100 ear_600_series=True,101)102print(result["verdict"], result["jurisdiction"], result["risk"])103```104105Output: the topic flags "turbine blade alloys and high-temperature106materials", and the tree returns verdict `dual-use`, jurisdiction `EAR`,107risk `medium`, with a deemed export action: releasing the data to a108foreign person inside the US is a deemed export to their country of109nationality, so authorization is required before sharing.110111A second example: a lift coefficient formula from a published textbook112classifies as `public-domain` (`is_public_domain(source="textbook")`113returns True), because published textbooks are public domain information.114115## Pitfalls116117- Treating a red-flag topic hit as a verdict: flag_restricted_topic is118 a stop-and-verify signal, not an automatic denial, and a clean topic119 screen does not by itself clear a release.120- Marking anything as compliant on your own authority: the tree returns121 jurisdiction, risk, and actions, but releasing controlled data still122 requires authorization, and only the compliance office can certify123 anything.124- Forgetting the deemed export rule: sharing technical data with a125 foreign person inside the US is a release to their country of126 nationality and needs the same authorization as an export.127- Assuming "published" implies public domain: only the listed sources128 (published, textbook, patent, conference, fundamental-research)129 classify as public domain, and unpublished results under a restricted130 research agreement do not.131- Passing unknown audience, purpose, source, or USML category values:132 the functions raise ValueError, so mis-typed inputs fail loudly133 instead of defaulting to a permissive verdict.134- Skipping the handling checklist before a release: the checklist in135 assets/export-handling-checklist.md must be worked through and the136 verdict confirmed by the trade compliance office first.137138## Verification checklist139140Use the handling checklist in assets/export-handling-checklist.md and141verify before committing any release:142143- [ ] Topic screened with `flag_restricted_topic`, red flags recorded.144- [ ] Public domain basis checked with `is_public_domain`; restricted145 agreement status confirmed with the research office.146- [ ] Decision tree run with the real audience and purpose; verdict,147 jurisdiction, and risk recorded.148- [ ] Foreign-person releases checked for deemed export implications.149- [ ] Verdict confirmed by the trade compliance office before release.150- [ ] No controlled data exported or shared without authorization.151- [ ] Nothing marked or represented as compliant or certified except by152 the compliance office.153154## Scripts and references155156- scripts/export_control_logic.py - pure Python logic module:157 `classify_export_status()`, `is_defense_article()`,158 `is_public_domain()`, `flag_restricted_topic()`,159 `export_decision_tree()`.160- scripts/test_export_control.py - offline contract test (stdlib161 unittest, deterministic): turbine blade alloy topics return a162 restricted red flag, published textbook formulas classify as163 public-domain, and invalid inputs raise ValueError. Run with164 `python3 scripts/test_export_control.py`.165- references/itar-ear-overview.md - regulatory overview: USML category166 table, EAR 600-series examples, technical data and public domain167 definitions, fundamental research exclusion, deemed exports, and the168 red-flag topic table with citations.169170## Related skills171172- cross-cutting/documentation/engineering-report - report writing that173 must carry export control review records.174- cross-cutting/documentation/engineering-margins - engineering margin175 analyses whose results may be technical data.176- cross-cutting/data-sources/aeronautical-data-sources - sourcing177 aeronautical data, some of which is restricted.178179## Behavior contract (gate 3)180181The export-classification logic (topic red flags, public-domain basis,182and the export decision tree) is exercised by the gate 3 contract test:183scripts/test_export_control.py against scripts/export_control_logic.py184(stdlib unittest, offline). Run:185186python3 scripts/test_export_control.py