docs(B08): 옵션 키 어긋남 대조 — face_slope_ratio 는 칸 자체가 없음

`back_len_cm` 사고(레지스트리 키와 엔진이 읽는 키가 달라 저장값이 영영 안 닿던 것)
뒤 전수 훑기. B08 이 읽는 옵션 키 7개를 레지스트리와 대조한 결과 어긋남은 하나뿐이고
그것은 이름 어긋남이 아니라 **칸 자체가 없는 것**임(`face_slope_ratio` — 전면 기울기,
늘 기본 0.3 으로 돎). 「칸이 생기면 받는다」는 뜻으로 남겨 두고 코드에 그 사실을 적음.

대조를 시험으로 둠(`tmp/tests/test_b08_option_keys.py`) — 「이름으로 알아보는 코드는
정본과 대조하라」의 데이터 키 판. 칸이 생겼는데 목록만 남는 것도 잡음.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-09-08 04:23:17 +09:00
co-authored by Claude Opus 5
parent 3741f8919f
commit b06ae123aa
@@ -218,7 +218,7 @@ def boulder_masonry(
f"품셈 13-6 갈래는 {list(BOULDER_DIAMETERS)}"
]
slope_ratio = _num(options.get("face_slope_ratio"), 0.3)
slope_ratio = _num(options.get("face_slope_ratio"), 0.3) # 레지스트리에 칸 없음 — 기본 0.3
constants = BOULDER_MASONRY
face_area = height_m * length_m
slope_area = face_area * math.hypot(1.0, slope_ratio)
@@ -290,6 +290,9 @@ def stone_masonry(
back_cm = _back_length(options)
table = STONE_BACK_LENGTH_TABLE[back_cm]
# ⚠ `face_slope_ratio` 는 **레지스트리에 없는 키**다 — 즉 지금은 늘 기본 0.3 으로 돈다.
# 상수로 두는 것이 아니라 「칸이 생기면 바로 받는다」는 뜻으로 남겨 둔다.
# (키 이름 어긋남으로 저장값이 안 닿던 `back_len_cm` 사고와 구별할 것 — 이쪽은 **칸 자체가 없다**.)
slope_ratio = _num(options.get("face_slope_ratio"), 0.3) # 전면 기울기 1:0.3 (교본 7-3)
constants = STONE_MASONRY