From 9065b19a0a52ae3329702a8192de3f82f341f1f1 Mon Sep 17 00:00:00 2001 From: windpacer Date: Mon, 1 Jun 2026 16:29:01 +0900 Subject: [PATCH] =?UTF-8?q?docs:=20WP2=20=ED=98=84=ED=96=89=20FF=20?= =?UTF-8?q?=EC=97=94=EC=A7=84=20=ED=94=84=EB=A1=9C=EB=B9=99=20=EA=B2=B0?= =?UTF-8?q?=EA=B3=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 라이브 /api/ff/advisory 관찰(데모=SP+일정변동 반복). 확정: P1(LevelDriven B/D rec=K×feed 무클램프, P는 lag), P2(PCT 꺼짐 pct==raw), P3(pi-6111b 미사용), P5(mbState, 데모 비보존 아티팩트). 발견: 데모 temps 비물리(A>D>C>B)라 §10/front 물리검증·P4·S7은 운전원 DCS주입 필요(override는 엔진 미반영). Co-Authored-By: Claude Opus 4.8 --- docs/안전피드램프-현행엔진-프로빙결과.md | 51 ++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 docs/안전피드램프-현행엔진-프로빙결과.md diff --git a/docs/안전피드램프-현행엔진-프로빙결과.md b/docs/안전피드램프-현행엔진-프로빙결과.md new file mode 100644 index 0000000..47f35c1 --- /dev/null +++ b/docs/안전피드램프-현행엔진-프로빙결과.md @@ -0,0 +1,51 @@ +# WP2 — 현행 FF 엔진 프로빙 결과 + +> 2026-06-01. 대상: `plans/안전피드램프-advisory-작업지시서.md` WP2. 라이브 `:5000` `/api/ff/advisory` 관찰. +> **방법 제약**: Sim Override는 엔진에 안 닿음(ramp-advisor만) → 본 프로빙은 **엔진이 현재 데모 합성데이터(설정값±variation)로 돌아가는 실제 거동을 관찰**. 의도적 step 주입이 필요한 항목(P4 등)은 운전원 DCS 주입 필요로 분리. + +## P0 — 현재 advisory 스냅샷 (feed≈900.9, 정상상태) +``` +transient=False mode=Normal yield=90.7% +massBalanceState=물질수지 불일치 vLoss=43.3 vLossMa=31.7 +front=프론트 하강→boilup↑ (수 초 뒤 baseline 수렴하며 "정상(프론트 안정)"으로) +temps(raw=pct): tica-6111a=79.21 ti-6111b=78.47 ti-6111c=78.69 ti-6111d=78.92 +streams: P rec=833.5(pv817) D rec=18.02(pv15.8) B rec=27.03(pv24.8) R rec=666.8(pv653.8) +``` + +## 프로빙 결과 (코드리딩 주장 검증) + +| 프로브 | 주장 | 관찰 | 판정 | +|---|---|---|---| +| **P1** | LevelDriven B/D rec = K×feed (clamp/rate 無) | B rec=**27.019 ≡ 0.03×900.63**, D rec=18.018≡0.02×feed. 시간추이서 feed와 **정확히 선형 추종**(27.018→27.021) | ✅ 확정 | +| (대조) | Commanded P는 deadtime+lag+rate | P rec=**834.8 ≠ 0.95×feed(855.6)** — lag로 뒤처짐 | ✅ LevelDriven과 명확히 구분 | +| **P2** | PCT 꺼짐(dtdp=0) | **모든 temp의 pct == raw**(79.2066=79.2066…) | ✅ PCT dormant 확정 | +| **P3** | pi-6111b 미사용 | 엔진 태그목록(BuildSnapshotAsync)에 pi-6111b 없음 — 코드 사실(관찰 대상 아님) | ✅ 코드 확인 | +| **P4** | feed 급변 시 transient/valid=false | **자연 variation(feed ±0.1)으론 transient 미발화**(FeedMoveThresholdPerMin=0이라 moving 조건 자체 off) | ⚠ 운전원 step 주입 필요 | +| **P5** | D+P+B≠feed → mbState 불일치 | vLoss=43.3(>3%·feed=27) → "불일치", Bpv noise로 "정상"↔"불일치" 토글 | ✅ 단, **데모 PV 비보존 아티팩트**(실제 과추출 아님) | +| **P6** | front 부호 수정 동작 | front는 tica-6111a(A)↔ti-6111d(D)로 산출, "하강↔안정" 변동. 부호픽스(76fdce8) 머지·단위검증 완료 | ⚠ 데모 temp 비물리라 **물리 방향 라이브 검증 불가** | + +## ⚠ 핵심 발견 — 데모 temps가 물리 프로파일 위반 +운전원 확정 정상 프로파일은 **A>B>C>D 단조감소**(§10.1). 그러나 데모 실측은: +``` +tica-6111a(A)=79.21 > ti-6111d(D)=78.92 > ti-6111c(C)=78.69 > ti-6111b(B)=78.47 +→ A>D>C>B (B가 최저, 비단조) +``` +- 데모는 **각 태그 = SP + 일정한 변동량 반복** 시뮬레이션 → temp 순서는 물리 공간구배가 아니라 **각 태그 SP + 변동 위상**의 산물. **공간 구배 미인코딩** → 물리적 단조성 없음 (메모리 `project_demo_system_synthetic_data` 부합). +- **함의 1**: §10 역전판정(`A≥B≥C`)을 이 데모에 켜면 `BB>C>D 단조로 세팅 후 D 가열 | front "상승→환류↑" | + +## 결론 +- **확정**: P1(LevelDriven=K×feed 무클램프, 원래 우려 재현)·P2(PCT dormant)·P3(pi-6111b 미사용)·P5(mbState, 단 데모 아티팩트). +- **보류(운전원 주입 필요)**: P4·S7·front 물리검증. +- **신규 이슈**: 데모 temps 비물리(A>D>C>B) — §10/front 라이브 검증의 선결 조건은 단조 temps 주입. (override가 엔진에 닿지 않는 한계와 함께, 자율 검증 범위가 ramp-advisor로 한정됨.) + +## 참조 +- `plans/안전피드램프-advisory-작업지시서.md` WP2, `docs/안전피드램프-검증시나리오매트릭스.md` S7 +- `docs/안전피드램프-한계치-브레인스토밍.md` §10