🌉 ENGINE · 기획 계획서 (PLANNING)

푸드체이닝 개인화 모듈
아이의 선호에서 식재료 경험의 폭을 넓히는 추천 설계

아이가 이미 잘 먹는 음식에서 출발해, 한 번에 한 발씩 닮은 식재료·새 조리법으로 다리를 놓는다. 이 다리를 데이터로 계산해 ⓐ 코칭 편지에 녹이고 ⓑ 도감에서 '내 아이 맞춤 활용법'으로 펼친다. 푸드체이닝 이론·실증 근거 위에 세운 설계도 — 개발 전 기획 문서다.

← 문서 허브 · ENGINE · 추천 네트워크 클러스터 · 2026-06-16 · 상태: 설계 검토용
0

목표와 철학

WHY

이 엔진의 존재 이유는 하나다 — 아이를 이해해서, 아이가 '심리스하게' 먹을 줄 아는 식재료·음식의 폭을 넓히는 것. 결핍을 채근하거나 안 먹는 걸 들이미는 게 아니라, 지금 잘 먹는 것에서 자연스럽게 한 발 옮기게 한다.

NORTH STAR
"우리 아이가 거부감 없이 먹는 음식의 가짓수가, 시간이 지날수록 한 발씩 늘어난다."
측정 가능한 형태로 = (자녀별) 거부 없이 먹는 식재료 집합의 크기 ↑ · 새 식재료를 '받아들이기까지의 노출 횟수' ↓ · SOS 노출 위계 단계의 전진. 양(量)이 아니라 범위(다양성)가 목표 — 임상 합의(SOS)와 같은 방향.
4
이론 계보
체이닝·노출·위계·관계
~8
데이터 자산 보유
food-graph·cookingMatrix·로그
2
확장 알고리즘
식재료축 · 조리법축
2방식
출력 전달
편지 산입 · 도감 맞춤
0
진단/처방
식습관 점검 포지션
📌 이 문서의 위치 — 본 계획서는 ① 푸드체이닝 2축 확장 발제(이사님 2026-06-13)와 ② 음식 추천 네트워크 데이터 아키텍처하나의 '개인화 모듈'으로 승격시키고, 거기에 푸드체이닝 최신 이론·실증 리서치(2026-06-16, 18 에이전트 웹조사+검증)와 현행 코드(lib/coachRecos.ts·lib/cookingMatrix.ts)의 한계 진단을 붙인 것이다. 개발은 아직 — 설계 합의용 문서.
1

이론 지도 — '다리(bridge)'는 어디서 왔나

RESEARCH

'잘 먹는 음식에서 닮은 새 음식으로 다리를 놓는다'는 같은 메커니즘이 임상·학회·상업·정부에 걸쳐 독립적으로 나타난다. 우리 엔진은 그 메커니즘의 데이터 조작화다.

🌳 계보 — 같은 다리, 다른 채택 경로

Food Chaining (Fraker) 임상서 · NCP 2006 · 단행본 2007 AAP "food bridges" 학회 공식 용어 HealthyChildren 2018 Kids Eat in Color "Bridging" (상업) BetterBites 프로그램 한국 푸드브릿지 정부 · 4단계 노출 교육 dietary4u · EBS 2010 밀프레드 food-graph 사촌·궁합 엔진 같은 다리 메커니즘 · 독립 채택 4경로 → 밀프레드가 데이터로 계산 ⚠️ 한국 푸드브릿지(집단 단계노출 교육)와 Fraker 체이닝(개별 유사음식 연쇄)은 별개 갈래 — 혼용 인용 금지

📐 푸드체이닝 4축 — "한 번에 한 축만 바꾼다"

수용 음식 → 목표 음식 사이에서 한 번에 한 속성만 변경한다(둘 이상 바꾸면 novelty 과부하). Fraker 우선순위 = 질감 1순위.

🧈 질감 1순위
부드러움→약간 결→쫀쫀. 같은 식재료의 식감 단계(IDDSI L4 퓨레→L7 일반식)를 한 칸씩.
👅 맛 2순위
단맛→약간 단→살짝 쓴. 선호 맛으로 새 음식을 가리는 flavor masking이 핵심 도구.
🌡️ 온도 GAP
차가움→실온→데움. 찬 우유 거부 → 데운 우유. 현재 우리 엔진에 비어 있는 축(§4 신규 신호).
🎨 외형 색·모양
색·모양·브랜드. 원전 3축(맛·온도·질감)의 후속 임상 확장 — '원전이 4축'은 부정확, 색은 확장축.

출처: Fishbein·Cox·Fraker 외, Nutrition in Clinical Practice 21(2):182-184 (2006, PMID 16556929) · 단행본 Food Chaining (2007, ISBN 9781600940163) · 임상 4축 = Jenny Friedman / Northern Speech Services(core diet·flavor mapping/masking·transitional flavors).

🪜 노출 위계 (SOS) — "안 먹어도 만지면 전진이다"

Toomey의 SOS Approach. 거부 음식을 견딤→먹음 6단계(아래 32세부)로 천천히. 우리 엔진의 '진척'을 이진(먹었다/안먹었다)이 아니라 단계로 인정하는 근거.

1Tolerating 견디기같은 식탁/접시에 있어도 괜찮음
2Interacting 상호작용옮기기·놀이·도구로 만짐
3Smelling 냄새가까이 두고 냄새 맡음
4Touching 만지기입술·혀에 닿음
5Tasting 맛보기살짝 깨물기·뱉어도 OK
6Eating 먹기씹어 삼킴 → 레퍼토리 편입

출처: Toomey & Ross, ASHA Perspectives on Swallowing 20(3) (2011) · Schoen et al., Children 12(3):373 (2025, feasibility). ⚠️SOS 32단계 표는 © Toomey — 직접 복제 금지, 한국어 개념 풀이로만 재구성.

🔁 반복 노출 & 🤝 관계(책임 분담)

반복 노출 — "한 번 거부가 끝이 아니다"

새 음식은 친숙해지면 받아들여진다. 하루 1식품 8~10일 노출 시 수용도↑(USDA NESR 2019, Moderate 근거). AAP '10회 이상', 캐나다 '최대 30회'. ⭐핵심: 수용도는 같은 식품군 내로만 전이되고 다른 군으로는 안 넘어간다 — 바로 이게 '닮은 음식 사이' 다리만 작동하는 이유. Tiny Tastes RCT(UCL 200가정): 14일 한 입+스티커 → 선호 61%↑·섭취 3배.

책임 분담 (Satter DOR) — "강요는 역효과"

부모는 무엇을·언제·어디서, 아이는 얼마나·먹을지 결정. 미국 연방(Head Start §1302.44)이 의무화한 표준. 강요먹이기는 섭취량↓·자기조절 손상(Galloway 2006 랜드마크). → 우리 코칭 톤가드(채근 금지·'부모가 먼저')의 학술 근거.

출처: USDA NESR(NBK582166) · Cooke/UCL Tiny Tastes(2013) · Satter, JADA 1986;86(3) · Galloway et al., Appetite 2006(PMID 16626838). neophobia 발달곡선: 약 20개월 발현 → 4세 전후~6세 정점 → 감소(Nutrients 2024).

2

실증 현황 — 정직하게: 무엇이 탄탄하고 무엇이 논쟁인가

VERIFIED

엔진을 '검증된 임상 프로그램'이라 과장하면 신뢰를 잃는다. 근거 강도를 정직하게 구분하고, 마케팅·투자 문서의 톤도 여기에 맞춘다.

🚫 인용 금지 — 날조로 판명된 수치: 업계에 떠도는 "푸드체이닝 후 평균 5개→20.5개"는 적대 검증 결과 refuted(출처 없음). 실제 출처(Fishbein et al. 2006)는 n=10·3개월·수용 음식 1~8개 → 8~129개 범위후향적 차트 리뷰(RCT 아님)다. 모든 사내·투자·B2B 자료에서 "5→20.5" 삭제하고 정확 표현으로 교체할 것.
주제근거 강도핵심 사실 (검증 반영)
반복 노출 효과8~10일 노출 시 수용도↑(USDA NESR, Moderate). 같은 식품군 내만 전이 = 다리 설계의 직접 근거. Tiny Tastes RCT 선호 61%↑·섭취 3배.
강요먹이기 역효과압박 시 섭취↓·자기조절 손상, 성인기까지 악영향(Galloway 2006 랜드마크). 채근 금지 로직의 학술 뒷받침.
반응형 수유 (Satter DOR)강·표준정부·학회 best practice·연방 의무 채택. sDOR.2-6y 측정도구 타당화(2020). ⚠️'FDA 승인'식 강한 인증은 아님 → 'best practice 인정'으로 표기.
neophobia 발달곡선20개월 발현→4~6세 정점→감소. '4세 전후 정점=정상' 안심 멘트의 근거.
Food Chaining 효능중·논쟁임상 현장 광범위 사용·이론적 근거 탄탄. 단 단독 효능 RCT 부재. 2024 검토(Breda et al.)는 행동개입을 최강 근거로 보고 체이닝은 '정의'만. → "검증된 임상 프로그램" 단정 금지, "국제 임상 현장에서 쓰이는 접근".
SOS Approach 효능약·논쟁효능 RCT 부재. 2025 연구는 feasibility/pilot(n=12)이지 효능 입증 아님. 비교 RCT(Peterson 2016)에서 수정형 SOS는 ABA 대비 표적섭취 증가 실패(단 n=6). → '효능'이 아니라 '충실도·측정도구 검증'으로 표기.
조리법 변형의 효과조건부같은 음식 반복→권태(food jag) 예방엔 유효하나, "조리법 바꾸면 먹는다"는 아이마다 다름(Poelman: 조리법보다 식감/아삭함이 결정). → "한 형태 거부 ≠ 식재료의 끝, 형태 바꿔 재노출" 프레임으로만.
⚖️ 규제·포지션 가드: 밀프레드는 진단/처방이 아니라 '식습관 점검·노출/브릿지 코칭'이다. PFD(Goday 2019)·ARFID(AAP) 임상 정의와 명확히 분리하고, 위험신호(예: 먹는 음식 20종 미만·2년 이상 지속·전체 식감군 거부) 감지 시 '소아과 상담 권유' 게이트로 빠진다.
3

현행 추천 원리 — 지금은 어떻게 추천되나

coachRecos.ts

신규 모듈을 얹기 전에 지금 무엇이 돌고 있는지부터. 핵심 철칙 = "무엇을 추천할지는 코드가 결정론으로 정하고, 문장만 LLM이 쓴다." (괴식·환각 0 실적의 토대)

🔁 파이프라인 — 재료=결정론, 문장=LLM

1
아이 신호 집계 결정론·크론
잘 먹는 식재료(favIngFreq — 집·거부없음·기관급식 제외 P10) + 영양 거울(식품군별 결핍 신호 green/yellow/red). meal_logs에서 매일 계산.
2
추천 후보 산출 결정론·순수함수
buildIngredientPool(주간 5개 식재료 풀·supply/challenge/mixed 모드) → 일일 회전(최근 5일 제외)으로 오늘의 추천 식재료. buildRecoFacts가 그 식재료의 또래 인기 음식 이름 + 잘 먹는 것과의 궁합/사촌을 테이블에서 뽑아 사실 블록 생성.
3
두뇌 각도 선택 LLM·Sonnet
13 시나리오 안에서 오늘의 각도/타깃/무브를 고른다. 추천 '내용'을 다시 만들지 않는다 — 검수만.
4
편지 작문 LLM·손
사실 블록(검증된 추천 목록)을 받아 문장만 쓴다. 목록 밖 음식·조합 생성 금지. 조리 상세(양념·불세기) 금지(부모가 검색).

🎯 거울 추천의 5전략 — pickFoodReco

오늘의 추천 식재료(회전)를 아이의 상태에 따라 5가지 관계 프레임 중 하나로 — 전부 테이블 근거(괴식 0).

① 잘 먹는 것 한 번 더 liked
추천 식재료를 이미 잘 먹으면 → 강화/유지.
② 곁들이기 pair
잘 먹는 것에 곁들이기(강한 궁합만·약신호 차단).
예: "감자볶음에 당근 조금"(감자+당근 공출현 152)
③ 푸드체이닝 chain
잘 먹는 것의 검증된 사촌이 결핍군에 있으면 다리.
예: 단호박 잘 먹음 → 사촌 당근
④ 도전 dish
또래가 실제로 자주 먹는 인기 음식 이름으로 도전.
⑤ 그대로 plain
관계가 없으면 먹는 형태로만(밥·빵·떡).
한계 진단(왜 '엔진'으로 승격이 필요한가) — 지금은 식재료 축(사촌·궁합)만 본다. (1) 조리법 축이 추천에 없다(도감의 cookingMatrix는 일반 조리 안내일 뿐 '이 아이가 익숙한 기법'을 모름). (2) 온도 축 부재. (3) '몇 번째 노출인가' 카운팅 부재 → 8~10회 반복 효과를 못 살린다. (4) 진척이 이진(먹음/안먹음)이라 SOS 단계 전진(만짐·냄새)을 인정 못 한다. (5) 사촌이 수기 175쌍이라 안 늘어난다. → 신규 모듈은 이 다섯을 메운다.
4

⭐ 신규 모듈 설계 — 푸드체이닝 개인화 모듈

전부 결정론·LLM 0

아이의 상태를 벡터로 읽고, 한 번에 한 축만 바꾼 '다음 걸음 후보'를 랭킹한다. 출력은 §5의 두 방식으로 흐른다. 핵심 = 발제의 2축 + 리서치가 짚은 빈 신호 4종.

🧬 ① 아이 상태 벡터 — "아이를 이해한다"

F · 잘 먹는 식재료 보유
favIngFreq 상위(집·거부없음·기관급식 보정). 다리의 출발점.
M · 잘 먹는 메뉴 보유
favMenu top8. 실제로 완식한 음식.
C · 익숙 조리기법 신규·소형
M의 메뉴명을 methodOf()로 분해 → {볶음·구이·전…}. 이 아이가 편한 조리 형태.
근거: learned_menus 9,988로 즉시 검증
X · 노출 카운터 신규
(자녀×식재료) 시도 횟수. 8~10회 전=진행중, 충족+완식=다음 사촌 승급.
근거: NESR 8~10일·meal_logs 보유(수집 0)
S · SOS 노출 단계 신규
식재료별 현재 단계(견딤~먹음). 안 먹어도 만지면 전진으로 비이진 진척.
근거: SOS 6단계 · 거부원인 4분류 결합
A · 연령·neophobia 신규
2세=가까운 사촌만, 5~6세=먼 도약 허용. 도전 강도·다리 거리 조절.
근거: neophobia 곡선 · KDRI 연령 안전

🌉 ② 2축 확장 — "한 번에 한 발만"

축 1 · 새 식재료 식재료만 변형
후보 = bridge(F) ∖ F → cookingGroups[후보] ∩ C ≠ ∅
잘 먹는 것의 사촌 중 미경험 식재료를, 그 아이가 이미 익숙한 조리법으로 첫 만남. 조리법·맛 베이스는 고정 → 식재료 축만 한 칸.
"오이를 잘 먹으니, 닮은 애호박을 익숙한 으로"
축 2 · 새 조리법 조리법만 변형
후보 = cookingGroups[f∈F] ∖ C
이미 잘 먹는 식재료를, 아직 안 만난 검증된 조리법으로. 식재료 고정 → 조리 축만 한 칸. food jag 예방 + 선호 형태 발견.
"감자볶음을 잘 먹으니, 같은 감자를 으로도 (거부하면 바로 원래대로)"
⚖️ 한 번에 한 축 — 두 축을 같은 카드/편지에 섞지 않는다(novelty 과부하 차단이 구조에 내장). 두 축을 번갈아 확장. ⭐4축 벡터 DB(T154 명세) 없이도 bridge/pair + cookingGroups 교집합으로 즉시 구현 가능 — 신규 제작은 methodOf(menu) 추출기 하나뿐.

🔀 두 트랙 — 결핍 보급(supply) ↔ 다양성 확장(challenge)

추천은 '결핍 직격'만이 아니라 '잘 먹는 것에서 네트워크로 뻗기'도 필요합니다. ②추천엔진은 항상 두 트랙 후보를 함께 생성하고, 주간이 밸런스를, 일간(뇌)이 회전을 정합니다.

supply · 결핍 보급 red·yellow
부족 식품군(non-green) 대표 식재료를 직접 보급. buildIngredientPool supply 모드(red 2+).
"콩류가 비어요 → 두부조림"
challenge · 다양성 확장 사촌·공출현
잘 먹는 것의 사촌·식단 공출현으로 폭 넓히기(푸드체이닝). challenge 모드(균형 OK).
"미역국 잘 먹어요 → 같은 끼니 공출현 두부"
주간 밸런스(작전) = weekly_plans.reco_balance — 영양 심각도로 supply:challenge 비율(예: red 2+ → 0.7:0.3 / 균형 → 0.3:0.7). 일간 회전(전술) = 뇌 decision.recoTrack — 어제와 다른 트랙으로 다양성 보존. ⚠️ 타깃은 유지, 경로만 번갈아(결핍 방치 금지 — 같은 콩류라도 오늘 직접보급/내일 사촌다리). 흐름: ②(두 트랙 후보·태그) → ①뇌(밸런스+어제트랙→오늘 택1) → ⑥손.

🍲 ③ 메뉴 단위 추천 — 조리법 대신 '실존 메뉴 이름'

우리는 조리법을 지어내지 않는다(지어내면 괴식). 대신 또래(기관)가 실제로 자주 먹는 실존 메뉴 이름만 권하고, 엄마가 검색·조리한다. 메뉴엔 다른 식재료도 들어 있어 한 메뉴를 먹으면 그 안의 식재료를 자연스럽게 경험 → 폭이 넓어진다.

가 · 잘 먹는 식재료가 든 메뉴 발굴
잘 먹는 식재료가 들어간 기관 빈출(또래 검증)이지만 아이는 아직 안 먹어본 메뉴를 권한다. 익숙한 재료가 있어 진입장벽↓, 새 재료는 덤으로 노출.
예: 감자 잘 먹음 → "감자수프"(우유·양파 자연 노출)
나 · 사촌의 대표 메뉴 신규
잘 먹는 것의 사촌 식재료출현도 높은 대표 메뉴를 이름으로.
예: 감자 → 사촌 고구마 → "고구마맛탕"
다 · 타깃 식재료의 인기 음식 라이브
현행 popularDishesFor — 결핍 식재료의 또래 인기 메뉴 1~2개(이미 편지에 들어감).
freq(ingredient-recipes) → kit-matrix 폴백
괴식이 원천 차단되는 이유 — 후보가 실제 레시피/식단에 존재하는 메뉴뿐이라, 공출현이 없는 조합은 메뉴로 존재하지 않아 애초에 안 뜬다. 예: "미역국+당근"은 우리 데이터에 공출현 0 → 페어·메뉴 후보 어디에도 없음(엔진이 절대 추천 못 함). learned_menus웹 식재료 추정으로 분해해 만든 공출현(lift)·kit-dish-matrix cells가 게이트. 우리가 줄 건 검증된 '음식 이름', 조리 상세는 엄마가 검색(도감 보조).
데이터: 또래 빈도(ingredient-recipes·kit-matrix) + 기관 식단(NEIS·식약처 영유아 식단 API) + 아이 eaten set(미경험 필터). 상태: '다'는 라이브 / '가·나'(기관 빈출×미경험 발굴, 사촌 대표 메뉴)는 신규.

🌡️ ④ 신규 신호 4종 — 리서치가 짚은 빈칸 메우기

온도 축 추천 4축 완성
유일하게 비어 있던 temperature. 찬↔실온↔데움 단일 차원 변형(예: 찬 우유 거부→데운 우유). 4축 벡터 전면 구축보다 저비용.
근거: Jenny Friedman 4축(검증)
노출 횟수 안심 멘트 리텐션
"이 식재료는 지금 3/8회예요. 8~10회는 보통 필요해요(최대 30회도 정상)." 포기 대신 반복을 설계.
근거: NESR·AAP·캐나다 Food Guide
비이진 진척(SOS) 동기
"오늘 당근을 만졌어요(만지기 단계) — 먹기까지 한 발 더 왔어요." 안 먹어도 칭찬할 거리.
근거: SOS 6단계 위계
연령 기대 + 적신호 안전
"4세 전후 거부 정점은 정상이에요"(안심) + 위험신호 시 '소아과 상담' 게이트(진단 아님).
근거: neophobia 곡선·PFD/ARFID 정의

🛡️ ⑤ 안전 게이트 — 후보가 통과해야 할 하드 바닥

  • 연령별 질식 형태(2025 식약처): 2세 이하 떡류 미제공·방울토마토/포도 세로 4등분+껍질·견과 {분말3세·잘게5세·통째6세}·생당근 익히거나 채썰기.
  • 8대 알레르겐 프로필 매칭 → 해당 노드 추천 제외/대체. 꿀 만1세 금지(보툴리누스).
  • 괴식 차단: 후보는 전부 검증 테이블(cookingGroups·인기 음식·사촌/궁합) 안에서만 — 목록 밖 조합 생성 금지. 음성 lift(우연 이하) 자동 차단.
  • 요구 과부하 방지: 2축이 매일 번갈아 나오면 그것도 채근 → 주간 포트폴리오(food 유닛 주에만)·노출 주기(격일) 준수. firstServe 전 압박 금지(Galloway).
5

출력 전달 — 같은 엔진, 두 갈래

DELIVERY

엔진이 뽑은 '오늘의 다음 걸음 후보'는 두 곳으로 흐른다. 둘은 배타적이지 않다 — 편지가 방향을 주고, 도감이 상세를 펼친다.

ⓐ 코칭 편지 산입

엔진 후보 결정론
오늘의 한 후보(축·식재료·근거·노출진척) → bridgeFacts를 C(익숙기법) 필터로 정밀화.
손 작문 LLM
방향어까지만 — "익숙한 전으로", "같은 감자를 찜으로". 조리 상세는 안 줌(도감이 담당).
편지 도착 부모
예시 편지 한 줄오이를 참 잘 먹어요. 닮은 애호박을, 오이처럼 으로 한 번 부쳐보면 어떨까요? 새 채소는 보통 여러 번 만나야 친해져요 — 오늘은 3번째 만남이에요. 🙂

ⓑ 편지 → 도감 맞춤 레시피

편지에서 식재료 탭 진입
편지 속 '애호박'을 누르면 → 도감 상세로(아이 컨텍스트 전달).
도감: '이 아이 맞춤 다음 걸음' 카드 신규
cookingGroups[애호박]C(익숙기법) 우선 정렬 → "오이로 익숙한 부터" 맨 위. 노출 진척·SOS 단계·안전 형태(잘게/익혀) 표시.
맞춤 레시피 참고 부모
일반 조리법이 아니라 내 아이가 받아들일 확률 높은 순서로 본 활용법. (조리 상세·1회분 g·양념은 도감에서만)
경계(기존 결정 유지) — 편지는 방향어까지(괴식·환각 0 정책), 조리 상세는 도감. 이렇게 나누면 편지는 가볍고 따뜻하게, 도감은 깊고 정확하게 — 역할이 안 겹친다. 두 출력 모두 같은 엔진의 같은 후보를 쓰므로 메시지가 일관된다.
6

데이터 자산 — 이미 가진 것 vs 만들 것

8할 보유

신규 수집은 거의 없다. 엔진의 8할은 이미 있는 데이터를 연결만 하면 된다.

필요한 것상태가진 것 / 만들 것
잘 먹는 식재료/메뉴 판단 (F·M)보유크론 favIngFreq·favMenu (기관급식 제외 P10 보정)
식재료 사촌 / 궁합 (bridge·pair)보유food-graph.json bridge 175(수기) + pair 362(레시피 4,727 동시출현) · strongPairsOf/verifiedCousinsOf
식재료 × 조리기법보유cookingMatrix(한식 실측 + 양/중/일 cuisine 그룹) — 도감 노출 중
익숙 조리기법 집합 (C)신규·소형methodOf(menu) 추출기 — 메뉴명 접미 결정론 파싱(구이·볶음·찜·전·조림·국/탕·무침, 튀김 제외). learned_menus 9,988로 검증
노출 카운터 (X)보유→집계(자녀×식재료) 시도 횟수 — meal_logs에 이미 있는 신호를 카운팅만
SOS 단계 (S) / 거부 원인보유→분류거부 boolean → 원인 4분류(맛/식감/환경/양) + 노출 행동 라벨
사촌 자동 확장 (수기→데이터)로드맵영양 코사인(nutrient-map 226) + 감각 7축 라벨 → 후보 자동, 사람은 검수만 (data-arch Tier2)
온도 축신규식재료별 '찬/실온/데움' 변형 가능 플래그(소형 표 정규화)
안전 가드보유질식 prep·매운 제외·괴식 차단·8대 알레르겐 — 연령 컷만 보강
핵심: 진짜 신규는 methodOf(menu) 추출기 + 2축 후보 함수 + 온도 플래그 표 정도. 나머지는 이미 쌓인 1차 신호를 버리지 말고 연결하는 일이다(data-arch §6 '즉시' 로드맵과 동일).
7

구현 로드맵 — 전부 additive, 단계별 검증

PHASED

기존 코칭 v2/도감을 깨지 않고 얹는다. 작은 코어부터, 라이브 영향 없는 순서로.

A. 코어 ~0.5일 · lib 1파일
methodOf(menu) 추출기(결정론·learned_menus 검증) + 2축 후보 함수 expandCandidates(F,M,C) + 테스트. 순수 함수 — 라이브 무영향.
B. 도감 카드 (ⓑ) ~0.5일
도감 상세에 '이 아이 맞춤 다음 걸음' 카드(로그인 시) — cookingGroups를 C 우선 정렬 + 노출 진척 표시. PersonalBridge 확장.
C. 노출 카운터 + 비이진 진척 ~1일
(자녀×식재료) 노출 카운팅 + 거부 4분류 + SOS 단계 라벨 → 안심 멘트("3/8회")·"만졌어요=전진" 동기 신호.
D. 편지 산입 (ⓐ) ~0.5일
bridgeFacts에 C 필터 + 노출 진척 멘트. v2/v3 카나리아 안정 후(변수 줄이기). 아린 카나리아 → 모니터 → 전자녀.
E. 온도 축 + 사촌 자동확장 중기
온도 변형 플래그 표 + 영양 코사인/감각 7축으로 bridge 후보 자동화(사람은 검수만, data-arch Tier2).
F. 축별 학습 루프 로드맵
"기법 먼저 vs 식재료 먼저"·"몇 회 노출에 수용" 아이별 반응을 evidence에 적립 → 임계 자동 보정(리플레이 하네스 동일 패턴).
8

리스크·금지선

GUARDRAIL
이사님 결정 필요 — ① 로드맵 A·B(도감 우선) 착수 승인? ② 편지 산입(D)은 v2/v3 카나리아 안정 후로 좋은지? ③ 도감 카드 명칭 취향("우리 아이 다음 걸음" / "맞춤 첫 만남" / "오늘의 한 발")? ④ 노출 카운터 안심 멘트(8~10회) 도입 우선순위?
9

부록 — 푸드체이닝 실용 적용문서 모음

검증 URL

실제 적용 가능한 워크시트·핸드아웃·근거 논문. 웹 정독·적대 검증을 거친 것 위주(미검증은 표시).

문서/툴유형무엇을 주는가밀프레드 적용URL
Food Chaining for ARFID (BCH 4p 워크시트)워크시트좋아하는 음식 10개·질감/맛 선택·나만의 체인 4칸·미각 1~10 점수·10~20회 노출'나만의 푸드체인 만들기' 기능 직접 청사진. 미각 점수를 로깅 필드로youngwomenshealth.org
How To Use Food Chaining (Your Kids Table 3p)부모 핸드아웃부모용 3단계 실행법 + 실제 체인 예시코칭편지 '잘 먹는 것에 결핍 섞기' 카피 골격yourkidstable.com
Satter DOR (sDOR) 2025임상 가이드연령별 부모/아이 역할 분담 · '반복적 중립 노출'. 무료 복제·수정 금지코칭 톤가드 표준 근거. 무수정 한국어 핸드아웃 재배포 가능ellynsatterinstitute.org
Food Chaining (NHS Somerset 2p)임상 가이드감자튀김→매시드 8단계 체인 + 시각 차트 + '강제 아님·1개씩·10~20회''제시 방법만 살짝 바꾸기' 마이크로 스텝을 '오늘의 작은 행동' 카드로patientwebinars.co.uk
SOS 부모용 소개 (32단계)임상 가이드6단계×32세부 위계·'범위가 양을 견인'·또래 모델링. © 표 복제 금지진척을 6단계 위계로 매핑(비이진). 표 복제 말고 개념 재구성sosapproachtofeeding.com
Tiny Tastes (RCT 근거)연구14일 한 입+스티커 RCT(선호 61%↑·섭취 3배). 실물 팩은 유료'오늘의 한 입' 챌린지 + 14일 트래커 + 비음식 보상ucl.ac.uk
10 Tips for Picky Eaters (AAP)부모 핸드아웃'food bridges' 공식 용어 · '10회 이상 맛보기' · 압박 금지추천엔진 학술 백킹. 'food bridges=미국 학회 공식 용어' 정통성healthychildren.org
Repeated Exposure SR (USDA NESR)연구8~10일 노출 수용도↑(Moderate)·같은 식품군 내만 전이사촌/푸드그래프 엣지 설계 정당화 · 노출 임계(8~10+) 근거ncbi.nlm.nih.gov/NBK582166
Finish your soup (강요 역효과)연구압박 시 섭취↓·자기조절 손상(Galloway, Appetite 2006)'채근 금지·firstServe 전 압박 금지'의 학술 뒷받침pubmed · 16626838
ASD 식품선택성 개입 검토 (Breda 2024)연구행동개입=강·food chaining 정의만·SysD 근거 부재투자/효능 문서에서 '체이닝 단독 RCT 제한적' 정직 인용doi.org/10.1017/S0954422424000052
SOS Feasibility Study (Schoen 2025)연구충실도 도구·32단계 코딩·VAS/PSI(RCT 아님·feasibility)'효능'이 아니라 '충실도·측정도구 검증'으로 정확 표기. 진척 측정 설계 참고pmc · PMC11940901
친해지자 채소야 (푸드브릿지 4단계)연구(KCI)14종 채소×4단계(놀이I·II/요리I·II) 활동·효과(저연령·편식군 유의)키트 '식재료 1종→4단계 활동' 콘텐츠 골격kjcn.or.kr
USDA Two-Bite Club부모 핸드아웃'두 입씩' 그림책 + 인증서 + MyPlate 색칠(무료)'한 입 챌린지' 인증서·스티커 형식 차용fns.usda.gov
Feeding Matters ICFQ (6문항)스크리너(©)0-36개월 6문항 정상 편식 vs PFD 구분온보딩 '점검 신호'(진단 아님). 한국어 번역 라이선스 협의 가치feedingmatters.org
Solid Starts웹/DB400+ 음식 자르는 법·질식/알러지/연령 안전 DB도감 영유아 안전 스크린(질식 prep·꿀/반숙 금지) 벤치마크solidstarts.com
BetterBites (Kids Eat in Color)웹(유료)Bridging 기반 프로그램·감각 특성별 음식 목록콘텐츠 구조·도감 필터(질감/색/맛) UX 벤치마크kidseatincolor.com
어린이급식관리지원센터 포털정부교육자료·카드뉴스·식단/운영 지침서도감/코칭 가이드의 '식약처 공식 근거' 출처표기dietary4u.mfds.go.kr
⚠️ 미확보/미검증: 2006 NCP 원전(Wiley)·2011 ASHA 논문은 페이월로 서지정보만 검증(본문 미확보). WIC Food Chaining PDF는 서버 403으로 unverifiable(사용 전 원문 재확인). 'Picky Eaters vs Problem Feeders 7문항'은 사내 아카이브(공개 URL 미검증).