v0.9.0 — Week 09 · SECOM semiconductor case study
Week 09 · SECOM semiconductor case study — the platform's honest, end-to-end analysis of the UCI SECOM dataset (1567 wafers × 590 signals), reusing the existing SPC/MSA engines rather than re-deriving them.
Features (#65–#70)
- #65 W09-1 — SECOM dataset ingest (NaN-preserving loader) + signal selection audit
- #66 W09-2 — SPC I-MR control charts (gap-broken moving range, Western Electric / Nelson violations), reusing the SPC engine
- #67 W09-3 — Cp/Cpk against caller-supplied limits, stability-gated (compute + warn on an out-of-control process)
- #68 W09-4 — MSA applicability: an honest refusal — SECOM has no designed measurement study, so Gage R&R does not apply (executable guard + standards doc)
- #69 W09-5 — Yield / DPPM + association (not root-cause) Pareto of failing signals, plus the first SECOM UI page
- #70 W09-6 — SECOM case-study writeup
Engineering line held
No fabricated spec limits (SECOM ships none), MSA correctly refused, the failing-signal Pareto is association not causation, DPPM (defective units) not DPMO, missingness kept qualitative. Every case-study number is test-locked.
Quality
All packages → 0.9.0 (secom 0.7.0 → 0.9.0). 1053 tests; coverage bars 100% — quality_core.io, quality_core.schema (line+branch), SPC, SECOM, MSA, Control Plan. ruff + mypy clean.
Full detail: see CHANGELOG.md ## [0.9.0].