fix(iace): correct FMD-91/NPRD-91 licence — NOT public domain

Verified the actual PDF cover pages: FMD-91 (ADA259655) and NPRD-91
(ADA242083) carry "© 1991, IIT Research Institute. All Rights Reserved"
plus a DoD "distribution unlimited" statement. The distribution statement
permits obtaining/reading the document, NOT reproducing its tables in a
commercial product — treat like DIN/ISO. The earlier P1 docs wrongly
labelled them "public domain" (an unverified research claim).

- Correct the licence in fmea_data_sources.go note + mil_std_1629a_fmeca.md
  + fmd91_nprd_failure_modes.md (read-reference only; tables NOT reproduced).
- The bp_iace_fmea_kb collection was deleted from Qdrant (the mislabelled
  doc removed); methodology docs (MIL-STD/NASA, genuine PD) not re-ingested
  pending review. The Go methodology module (own scales, MIL-STD-anchored)
  is unaffected and stays.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-06-12 23:41:13 +02:00
parent 85a8a1d545
commit cb82ff74c8
3 changed files with 22 additions and 16 deletions
@@ -5,18 +5,22 @@ anchor for the IACE auto-FMEA. Ingested into `bp_iace_fmea_kb`. The bulk numeric
tables are fetched from the DTIC PDFs in a follow-up P1 step; this doc fixes the
sources + the per-component mode lists used to seed the gated library (P2).
## Sources
- **FMD-91** (RAC/DTIC) — *Failure Mode / Mechanism Distributions* — modes +
mechanisms with **% distribution (α)** per part class. **Public domain**
("Approved for Public Release; Distribution Unlimited"). DTIC ADA259655.
- **NPRD-91 / NPRD-95** (RAC/DTIC) — *Nonelectronic Parts Reliability Data*
field **failure rates λ** for mechanical / electromechanical parts. **Public
domain.** DTIC ADA242083.
- **MIL-HDBK-217F** (US DoD) — electronic-part failure-rate models λ. Public
domain (obsolete 1995 but legally free).
- **Attribution:** `Source: FMD-91 / NPRD-91 (RAC, DTIC), public domain`
- **AVOID:** Quanterion NPRD-2023 / FMD-2016 / EPRD-2024 (proprietary reissues),
OREDA (commercial), FIDES tables (© DGA — read-only), ISO 14224 (copyrighted).
## Sources & licence (CORRECTED 2026-06-12 — NOT public domain)
- **FMD-91** (RAC/DTIC, ADA259655) and **NPRD-91/95** (RAC/DTIC, ADA242083) carry
**"© 1991, IIT Research Institute. All Rights Reserved."** + DoD "Approved for
public release; distribution unlimited". The distribution statement allows us to
OBTAIN/READ them; it is **NOT** a licence to reproduce the tables in a commercial
product. Treat exactly like DIN/ISO: **do not reproduce the tables, do not bulk-
ingest them.** Their successor (Quanterion) sells the data commercially.
- This doc therefore reproduces **no FMD-91/NPRD table** — only a GENERIC failure-
mode taxonomy (general engineering knowledge / CC-BY-SA Wikipedia) and source
pointers. The λ/α numeric tables are **NOT vendored**.
- **MIL-HDBK-217F** (US DoD employee work) — electronic-part λ models — **is**
public domain (genuine DoD standard).
- **AVOID reproducing:** FMD-91/NPRD-91 tables (© IITRI), Quanterion NPRD-2023 /
FMD-2016 / EPRD-2024 (proprietary), OREDA (commercial), FIDES tables (© DGA),
ISO 14224 (copyrighted). Never use any of these "in conjunction with the name"
of the US Government or IITRI without written permission.
## Failure modes by component class (open — FMD-91 + CC-BY-SA Wikipedia)
| Component class | Typical failure modes |
@@ -33,7 +33,8 @@ core RAG collection `bp_iace_fmea_kb`.
## How used in IACE
- The **Cm formula** and the **severity × criticality matrix** are the public-domain
criticality backbone (`CriticalityCm` in fmea_data_sources.go).
- λp/α come from NPRD-91 / FMD-91 (public domain); β and t from the project context.
- λp/α are informed by FMD-91/NPRD-91 as a READ reference only — those are
© IITRI (All Rights Reserved), not reproduced; β and t from the project context.
- Severity resolves through the linked EN ISO 12100 hazard (safety-FMEA bridge).
No AIAG-VDA / SAE J1739 / IEC 60812 content is reproduced.
@@ -10,9 +10,10 @@ package iace
// FMEADataSourcesNote is the audit/attribution line for the FMEA methodology.
const FMEADataSourcesNote = "FMEA-Methodik + Skalen verankert an US-Gov Public Domain " +
"(MIL-STD-1629A FMECA-Kritikalität, MIL-STD-882E Severity/Probability, NASA RCM). " +
"Ausfallraten/Mode-Verteilungen aus NPRD-91/FMD-91 (RAC, Public Domain). " +
"Das 1-10-Mapping ist BreakPilot-eigen; KEINE AIAG-VDA/SAE/IEC-Tabelle reproduziert."
"(MIL-STD-1629A FMECA-Kritikalität, MIL-STD-882E Severity/Probability, NASA RCM, " +
"MIL-HDBK-217F). Das 1-10-Mapping ist BreakPilot-eigen. FMD-91/NPRD-91 (RAC) sind " +
"© IITRI „All Rights Reserved\" — nur Lese-Referenz, Tabellen werden NICHT reproduziert. " +
"KEINE AIAG-VDA/SAE/IEC-Tabelle reproduziert."
// FMEASeverityBand maps a MIL-STD-882E Table-I severity CATEGORY to our 1-10 S.
type FMEASeverityBand struct {