feat(714-1b): 장비 줄 펼침 덧칸 — 부른 기계경비 로직 계산서 줄 · 시간당 소계 · 계 · 키 · 인자

- master_sheet_line 장비(기계경비) 줄에 「펼침」 = {키, 이름, 단위, 입력, 줄[비목 · 이름 · 글 · 금액], 소계, 계} · 못 셈 = 까닭
- 셈 결과(master_text.lines)를 그대로 실음 — 조종원 환산 같은 규칙을 여기 두지 않음
- annotate 가 files 를 받음(펼침 계산서) · M01 /text · M02 /logic-lib/sheet 같은 KEYS
- 시험 test_714_1_sheet_line 펼침 · 두 길 같은 수(JSON 수 규칙)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-11-01 16:32:57 +09:00
co-authored by Claude Opus 5.5
parent 9875743181
commit 8c519c0ab2
4 changed files with 53 additions and 7 deletions
+3 -3
View File
@@ -17,11 +17,11 @@ def text(key: str, inputs: dict, row: dict | None = None, file: str | None = Non
given = {k: store._dec(v) for k, v in inputs.items()}
try:
if row is None:
master = store.loaded()[1]
files, whole = store.loaded()
else: # 저장 전 시험 — `store.text` 와 같은 메모리 사본
files = store.cm.load(folder=store.FOLDER)
key = store._swap(files, str(row.get("키") or key), row, file)
master = mf.Master(files)
return msl.annotate(master, key, mf.fill_empty(master.logic(key), given), got)
whole = mf.Master(files)
return msl.annotate(files, key, mf.fill_empty(whole.logic(key), given), got)
except (mf.FormulaError, ArithmeticError, KeyError, TypeError, ValueError):
return got