feat(iace): unified FailureKnowledge ontology + NASA starter (FMEA P2)

The source-agnostic failure ontology shared by the FMEA library and the CE
hazard side: Component → FailureMode → Mechanism → Effect → Hazard → Harm →
Control, each row source+licence tagged. A licence ALLOWLIST
(FailureKnowledgeLicenseAllowed) rejects copyrighted/proprietary/NC sources
up front (© IITRI, DIN/ISO, AIAG, OREDA, CC-BY-NC) — the discipline learned
from the FMD-91/NPRD-91 licence finding.

Seeded with a curated NASA NTRS lessons-learned starter (5 real entries,
public domain). GET /iace/failure-knowledge (+ ?domain=). Tests pin the
governance invariant: every entry must carry a commercially-usable licence.

Next: Playwright+OCR bulk loader (NTRS API → PDF/OCR → tuple extraction) to
grow the corpus from NASA/OSHA/CPSC/MAUDE/NTSB.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-06-13 00:05:52 +02:00
parent 75d42a834b
commit fa8ad030cb
4 changed files with 240 additions and 0 deletions
@@ -31,6 +31,7 @@ func registerIACERoutes(v1 *gin.RouterGroup, h *handlers.IACEHandler) {
iaceRoutes.GET("/component-library", h.ListComponentLibrary)
iaceRoutes.GET("/energy-sources", h.ListEnergySources)
iaceRoutes.GET("/minimum-distances", h.ListMinimumDistances)
iaceRoutes.GET("/failure-knowledge", h.ListFailureKnowledge)
iaceRoutes.GET("/tags", h.ListTags)
iaceRoutes.GET("/hazard-patterns", h.ListHazardPatterns)