"모든 reading 은 자기가 근거로 삼은 정확한 말을 가리켜. rubric 을 바꾸면 history 는 다시 읽혀. 절대 다시 쓰이진 않고."
evidence 가 앵커야
reading 에서 제일 중요한 필드가 evidence 야. reading 이 근거로 삼은, 원래 언어 그대로의 verbatim span 이지. 'mild' 는 계산해서 붙인 라벨이고, '좀 시큰하다' 가 그 라벨이 나온 진짜 말이야. reading 은 라벨 바로 옆에 그 진짜 말을 같이 달아둬. 이게 typed layer 를 정직하게 지켜. 나중에 analysis 가 증상 얘기를 꺼내면, 그 evidence 를 타고 특정 날 아빠가 한 말까지 되짚을 수 있어야 해. span 으로 못 되짚는 주장은, 엔진이 할 수 없는 주장이고.
지우지 않는 normalization
severity 는 mild, moderate, severe, unspecified 네 단계로, trend 는 improving, worsening, stable, unspecified 로 normalize 돼. 그런데 normalization 은 evidence 를 대신하는 게 아니라 그 위에 얹혀. canonical 필드 값은 영어야. Track 6 의 aggregate 이 깔끔히 묶을 수 있게. evidence 는 아빠가 쓴 언어 그대로 남고. 그래서 '꽤 아팠다' 는 한국어 span 이 보존된 채 severity: moderate 가 돼. 비교 가능한 라벨이랑 citable 진실이 같이 살아. 어느 쪽도 다른 쪽 위해 안 버리고.
경계는 rubric 안에 산다
rubric 이 싣는 게 하나 더 있어. no-diagnosis 경계야. rubric 자체 안에 적혀 있고. crumb 을 읽는 지시가 같은 숨에 model 한테, 너는 관찰을 만들지 진단은 절대 아니라고 말해. Track 2 의 안전선은 reading 뒤에 붙는 게 아냐. reading 이 만들어지는 계약의 일부지. 이게 베낄 패턴이야. 규칙이 항상 성립해야 하면, 나중에 돌면서 놓침을 잡길 바라는 checker 말고 작업이 일어나는 바로 그 자리에 둬.