판정 기준
무엇을 따르는가
명리에는 유파가 있고 같은 생년월일시에서 다른 결과가 나옵니다. 이 엔진은 한 가지 규칙 집합을 골라 그대로 계산합니다. 무엇을 골랐는지 여기 적습니다.
응답의 data.ruleset.version 이 이 기준의 버전입니다.
규칙이 바뀌면 같은 입력의 결과가 바뀔 수 있어 응답에 싣습니다.
어느 전통인가 — ko-standard
한국 통용 실무를 바탕으로 자평 원전(자평진전·삼명통회·궁통보감)으로 검증한 기준입니다. 다른 만세력과 결과가 갈릴 수 있는 자리에서 무엇을 택했는지만 적습니다.
| 갈리는 자리 | 채택 |
|---|---|
| 자시(子時) 경계 | 정자시 — 23:00~00:59 를 자시로 보되 날짜는 00:00 에 넘깁니다 |
| 12운성 | 음포태 — 음간은 역행합니다 |
| 출생 시각 | 진태양시 기본 — 경도차와 균시차를 반영합니다. timeMode 로 표준시 관행 선택 |
| 역사 표준시 | 출생 시점의 실제 표준시 — 표준시 전환과 서머타임 시행 연도를 따로 다룹니다 |
| 허자(虛字) | 쓰지 않습니다 — 원국에 드러난 여덟 글자로 판정합니다 |
이 선택들 때문에 다른 곳과 결과가 다를 수 있습니다. 어느 쪽이 맞다기보다 고른 기준이 다른 것이며, 저희는 고른 기준을 끝까지 일관되게 적용합니다.
무엇으로 검증했나
| 대상 | 방법 | 결과 |
|---|---|---|
| 절기·사주 네 기둥 | DE440s 천체력 계산을 한국천문연구원 공표값과 대조 | 일치 |
| 음양력·윤달 | KASI 음양력 정보와 대조 | 일치 |
| 대운 순역·간지열·대운수 | 외부 독립 구현과 22,296건 대조 | 설명되지 않는 불일치 0 |
| 해설이 판정과 맞는가 | 모든 문장을 판정값과 기계 대조 | 불일치 0 |
| 같은 입력 → 같은 출력 | Node 와 실제 Cloudflare 런타임에서 해시 대조 | 배포마다 일치 |
신강약·격국·용신처럼 유파에 따라 답이 갈리는 영역은 외부 정본이 없습니다. 그 부분에서 저희가 보장하는 것은 고른 기준을 일관되게 적용했다는 것입니다.
데이터 출처
| 무엇 | 출처 |
|---|---|
| 절기·합삭 계산 | NASA JPL DE440s 천체력 |
| 역법 검증 | 한국천문연구원 음양력·특일 정보 (공공데이터포털) |
| 시간대 | IANA tz database |
| 원전 | 三命通會 · 淵海子平 · 子平真詮 · 窮通寶鑑 — 저작권 만료 고전의 전사본 |
진단 코드
응답의 diagnostics[] 에 담기는 알림입니다.
몇 분 차이로 답이 갈리는 자리를 그때그때 알려 줍니다 — 결과만 주고 넘어가지 않습니다.
| 코드 | 뜻 | 발생 범위 | 분 수치가 실리는 자리 |
|---|---|---|---|
CITY_FALLBACK | 지원하지 않는 도시라 서울 기준으로 계산했습니다 | — | — |
LONGITUDE_TZ_MISMATCH | 경도와 시간대가 서로 맞지 않습니다 — 경도 부호(동경 +, 서경 −)를 확인하세요 | ±180분 | — |
HOUR_UNKNOWN | 출생 시간 없이 계산 — 시주가 빠지고 시지 판정이 제외됩니다 | — | — |
LUNAR_COMPUTED | 2051년 이후 음력은 자체 천문계산값입니다 | — | — |
DST_APPLIED | 출생 시점에 서머타임이 시행 중이어서 표준시로 환산했습니다 | — | — |
ERA_LMT | 한국 표준시 도입(1908-04-01) 전 출생 — 지방평균시로 보았습니다 | — | — |
LOCAL_TIME_AMBIGUOUS | 그 날 두 번 존재하는 시각입니다 — 다른 해석이면 시주가 갈립니다 | — | — |
LOCAL_TIME_GAP | 실제로 없는 시각입니다 — 전환 후 기준으로 보았습니다 | — | — |
IPCHUN_NEAR | 입춘 경계 출생 — 연주와 월주가 갈릴 수 있습니다 | ±30분 | fourPillars.yearBoundary.minutesFromIpchun |
JEOLIP_NEAR | 절입 경계 출생 — 월주가 갈릴 수 있습니다 | ±30분 | fourPillars.monthTerm.minutesFromJeol · minutesToNextJeol |
HOUR_MODE_SENSITIVE | 진태양시 적용 여부에 따라 시주가 갈리는 출생입니다 | — | — |
HOUR_BOUNDARY_NEAR | 시 경계 출생 — 시주가 갈릴 수 있습니다 | ±10분 | fourPillars.hourBoundary.minutesFromStart · minutesToNext |
경계까지의 분은 진단이 붙지 않아도 항상 실립니다 —
위 '분 수치가 실리는 자리' 를 직접 읽으면 임계를 스스로 정하실 수 있습니다.
±30분 은 저희가 "알려 줄 만하다" 고 본 폭이지 계산이 갈리는 폭이 아닙니다.
전체 목록과 발생 조건은 OpenAPI 스키마에 있습니다.