Commit Graph
2606 Commits
Author SHA1 Message Date
eomsangdon dd60b6a1cb Merge remote-tracking branches 'origin/sub_laptop_1', 'origin/sub_laptop_2', 'origin/sub_laptop_3' and 'origin/sub_laptop_4' into main_laptop_1 2026-09-25 12:16:18 +09:00
eomsangdonandClaude Opus 5.5 07953fa523 feat(M02): 옛 표 틀 새 판으로 갱신 — Migrate --refresh-tables · 손 값 · 변수 · 보기 지킴 · _initial 도 같은 판 (브레인 최종 확인)
- 계산 열에 바인딩이 붙은 옛 틀만 골라 시스템 새 판으로
- 손댄 것이 없으면 시스템 파일 그대로 복사(판이 시스템과 같음) · 있으면 고쳐 쓰고 manifest 에 출처 판
- 기존 프로젝트 6개 작업본 · _initial 갱신 완료

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015LuapLYqN1GGFD8Y1PStD5
2026-09-25 12:03:10 +09:00
eomsangdonandClaude Opus 5.5 6cc98d68f1 fix(sheet): 마스터 딱지는 식 먼저 · 식 줄은 열 이름 · 머리 글 안 잘리는 최소 폭 · 쪽 나눔 시험 (M02 브레인 확인)
- 식 있는 열 = 계산 · 바인딩만 = 설계값(펼침이면 값마다 열) · 손 = 손 입력
- 식 줄은 [열id] 대신 머리 글 이름 · 같은 종류는 짧게 · 풍선은 긴 이름 + id 식 · 변수도 이름
- 열 폭 최소 = 머리 글 · 단위 폭(캔버스로 잼) · 들어갈 것 · 식 줄은 세 줄로 자르고 풍선에 전문 · 머리 칸도 풍선
- 쪽 나눔을 pagePlan 으로 떼어 시험 test_sheet_pages.py(줄 120 → 쪽 3 · 합계 마지막 쪽만)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tjoit7rxvpLMM7cafeVTo1
2026-09-25 12:02:13 +09:00
eomsangdonandClaude Opus 5.5 abd0d4b126 fix(M02): 구조물집계표 묶음 열은 값마다 한데 · 빈 설계값 머리는 「높이 미입력」 꼴 · 계산 열 설계값 딱지 뗌 (브레인 최종 확인)
- 관공 등 묶음 열 차례 = 관종·관경마다 관매설 · 커플링 짝 — 머리 합치기가 값마다 묶임
- 머리틀은 맨 자리표 + 값꼴(H={} · T={}cm · Φ{}) · 빈 값은 빈값 글 · 열 id 는 그대로(빈 값 -)
- 포장 A · 수축줄눈 · 커플링 · 큰돌쌓기 면적 = 바인딩 대신 펼침틀(묶음 · 머리틀 · 식틀)
- 식틀 자리 값이 비면 식을 빼고 설명에 적음

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015LuapLYqN1GGFD8Y1PStD5
2026-09-25 12:00:54 +09:00
eomsangdonandClaude Opus 5.5 b87bac729b fix(M02): 프로젝트 표 저장은 양식 + 손 값만 — 설계값 · 펼친 열은 서버가 걸러 버림 · 없어진 측점 손 값은 맨 아래 비고 줄 (PLAN 10-4)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015LuapLYqN1GGFD8Y1PStD5
2026-09-25 10:12:55 +09:00
eomsangdon 76904e7c89 Merge remote-tracking branch 'origin/sub_laptop_4' into sub_laptop_1 2026-09-25 09:55:33 +09:00
eomsangdon f981ec1f51 Merge remote-tracking branch 'origin/sub_laptop_3' into sub_laptop_1 2026-09-25 09:55:32 +09:00
eomsangdon 838e76e66f Merge remote-tracking branch 'origin/sub_laptop_2' into sub_laptop_1 — Router_Drawing 은 sub2 것 · Router_Layers 는 sub4 것 2026-09-25 09:55:32 +09:00
eomsangdon 8a051194cd Merge remote-tracking branch 'origin/sub_laptop_2' into sub_laptop_4 2026-09-25 09:49:11 +09:00
eomsangdonandClaude Opus 5.5 fd3d5aba51 feat(M02): 옛 프로젝트 양식 넣기 도구 — 없는 것만 더함 · 폴더 없으면 건너뜀 · 목록 보고 (PLAN 10-5)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015LuapLYqN1GGFD8Y1PStD5
2026-09-25 09:47:54 +09:00
eomsangdonandClaude Opus 5.5 05226dd9e5 feat(B07): 도각 읽는 차례 = 프로젝트 작업본 → 없으면 시스템 · [도각 편집] 저장은 작업본 · [기본 도각으로] = 프로젝트 _initial (PLAN 10-3 · 10-5)
- Engine_Template — M02_Template_Layers 자리 함수로 읽고 씀 · 회사 층(storage/{회사}/templates/) 읽기 뺌
- use_project_templates · save_project_template · reset_project_template(_initial 없으면 작업본 지움) · is_project_template_customized
- Router · Router_Frame — 프로젝트 폴더를 넘김
- 도각 편집 띠 · 되돌리기 글을 프로젝트 도각으로
- 시험 test_m02_drawing_area.py — 옛 프로젝트 · 씨앗 뿌린 프로젝트 저장 · 되돌리기

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PxvYb5ufV1kWdBvZbpDfu6
2026-09-25 09:47:30 +09:00
eomsangdonandClaude Opus 5.5 a4e8e43e1a feat(B02): 프로젝트 만들 때 시스템 양식 전부를 작업본 · _initial 로 복사 (PLAN 10-5)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015LuapLYqN1GGFD8Y1PStD5
2026-09-25 09:46:57 +09:00
eomsangdonandClaude Opus 5.5 ab810c4a4a feat(M02): 구조물 집계표 설계값 채우기 — 펼침 열 · 측점 줄 · 관 줄 나눔 · 손 값 지킴 · 채운 표 길에 B06 관 연장 (PLAN 10-4)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015LuapLYqN1GGFD8Y1PStD5
2026-09-25 09:46:20 +09:00
eomsangdon 4e9e431eb2 Merge remote-tracking branch 'origin/sub_laptop_4' into sub_laptop_2 2026-09-25 09:43:49 +09:00
eomsangdonandClaude Opus 5.5 9b9f3e15ba feat(M02): 구조물 집계표 마스터 — 머리 4층 · 설계값 묶음 21 · 손 열 10 · 계산 열 4 · 바인딩 · 일위대가 후보 (PLAN 10-4)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015LuapLYqN1GGFD8Y1PStD5
2026-09-25 09:41:37 +09:00
eomsangdon 138fdb73a2 Merge remote-tracking branch 'origin/dev' into sub_laptop_3 2026-09-25 09:41:33 +09:00
eomsangdonandClaude Opus 5.5 1778dbb505 feat(M02): 도면 양식 서버 길 둘 — POST /api/m02/drawing-import · GET /api/m02/drawing-fields (PLAN 10-3)
- M02_MasterTemplete_Router_Drawing.py — B07 Engine_Frame_Import · title_block_fields 다시 씀
- 자리표 키 목록 18 개(프로젝트 14 · 도면 4) · project_id 를 주면 표제란 값 함께
- main.py include 는 sub1 몫
- 시험 test_m02_router_drawing.py

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PxvYb5ufV1kWdBvZbpDfu6
2026-09-25 09:37:04 +09:00
eomsangdonandClaude Opus 5.5 7d01d62f1b feat(M02): 양식 층 길 — 층 읽기·쓰기 · 초기화 · 적용 · 저장 · 가져올 것 · 채운 표 · 층마다 권한 (PLAN 10-5)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015LuapLYqN1GGFD8Y1PStD5
2026-09-25 09:36:59 +09:00
eomsangdonandClaude Opus 5.5 02ba8cbf02 feat(sheet): 표 식 풀이 한 벌 — 화면 · 서버 Node 가 같이 씀 (PLAN 10-2)
- 옛 B08 식 풀이기(git 8472fc9f)의 분수 · 파서를 ui_template/sheet/ 로 되살림 — 필요한 함수만
- 열 참조 [열id] · 셀 참조 [열id@줄id] · 변수 [$이름] · SUM · INT · ROUND · ROUNDUP · ROUNDDOWN · MIN · MAX · IF
- 한 칸만 다른 식(줄.식) · 합계 줄 열마다 다른 식 · 끝수(반올림 · 올림 · 버림) · 순환은 그 칸만 오류
- 서버 껍데기 common_util_sheet_recalc.py · build:formula 가 새 진입점을 가리킴(깨진 B08 경로 고침)
- 시험 — 실무 울진 2공구 구조물집계표 합계 캐시값 · 파이썬 Decimal 거울 40문서

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Tjoit7rxvpLMM7cafeVTo1
2026-09-25 09:36:54 +09:00
eomsangdonandClaude Opus 5.5 df0b7d0aa2 feat(M02): 도면 양식 작도 영역 칸 drawing_area — 박힌 _A1_INNER 대신 양식에서 읽음 (PLAN 10-3)
- 00_template_A1.json 에 drawing_area [42, 47, 812, 567]
- Engine_Template drawing_area(이름) · 칸이 없거나 어긋나면 A1 기본값 · usable_area · usable_bbox · frame_entities 가 씀
- 도각 저장은 고치기 전 양식의 작도 영역을 이어 받음
- 시험 test_m02_drawing_area.py

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PxvYb5ufV1kWdBvZbpDfu6
2026-09-25 09:36:07 +09:00
eomsangdonandClaude Sonnet 5 a0787a7859 feat(M02): 시스템 층 서버 길 · 층·도면 빈 틀 · 저장소(판·409·원자 쓰기) (PLAN 10-1)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0148XFUpPfpiuTjxF1EK9c95
2026-09-25 09:31:51 +09:00
eomsangdonandClaude Opus 5.5 93e1512387 refactor(M02): 도면 기본 양식을 resources/master_template/drawing/ 으로 옮김 · 읽는 자리 고침 (PLAN 10-0 · 10-3)
- resources/template_2dDrawing → resources/master_template/drawing (안 쓰는 01_template_Longitudinal 둘 포함)
- B07 도각 엔진 _TEMPLATE_DIR · 도각 편집 주석 · 표지 시험 경로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PxvYb5ufV1kWdBvZbpDfu6
2026-09-25 09:30:59 +09:00
eomsangdonandClaude Opus 5.5 0a31a77909 knowledge(단가산출): 보류했던 일위대가 조합 12개 넣음 — 있는 로직만으로 · 로직 1개여도 넣음 (PLAN 9-4)
- UA000026~UA000037 · 로직 1개 2 · 2개 7 · 3개 2 · 4개 1 · 빈 조합 0
- 옛 판 값 줄은 이름 핵심이 맞으면 담음 · 이름이 다른 짝과 우리 로직에 없는 줄은 비고
- 이미 넣은 24개는 그대로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QENJAMbjcnKJNq5n9k1fDU
2026-09-24 23:47:50 +09:00
eomsangdonandClaude Opus 5.5 405541178c knowledge(단가산출): 일위대가 조합에 옛 판 값 줄의 로직 더함 — 이름 핵심이 맞는 것만 · 이름이 다른 짝은 비고에 「이름이 달라 뺌」 (PLAN 9-4)
- 옛 판 값 107줄 중 73줄을 담은 로직으로 옮김 · 조합 21개에 로직 49개 더함 · 메모 「(실무 수는 옛 판 값)」
- 이름이 다른 짝 34줄은 비고 줄 끝에 「이름이 달라 뺌」
- 「우리 로직에 없음」 28줄은 이름 뜻 + 직종·기계 구성으로 다시 찾았으나 더함 0 — 그대로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QENJAMbjcnKJNq5n9k1fDU
2026-09-24 23:30:24 +09:00
eomsangdon f9ecbeb647 Merge remote-tracking branch 'origin/sub_laptop_4' into main_laptop_1 2026-09-24 23:12:32 +09:00
eomsangdonandClaude Opus 5.5 8244919312 knowledge(단가산출): 실무 일위대가 조합 24개 넣음 — 거창 · STC 호표를 우리 로직 조합으로 · 단위 둘은 나눔 (PLAN 9-2)
- 일위대가조합.json UA000002~UA000025 · 담은 로직 = 계산이 같아진 로직(실무 줄 차례) · 메모 = 실무 품명
- 비고 = 못 맞춘 줄 「품명 규격 — 까닭」 + 실무 호표
- 횡단개거 · 기초 콘크리트 · 콘크리트포장은 단위별로 나눔 · 횡단개거(m) 은 로직 1개라 보류
- _키대장.json UA 다음 번호 26 · 대장 키 차례 정렬

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QENJAMbjcnKJNq5n9k1fDU
2026-09-24 23:08:46 +09:00
eomsangdonandClaude Sonnet 5 b57fa9bd46 fix(M01): 목록 검색이 양쪽 띄어쓰기를 떼고 맞댐 — 골 함 석 ↔ 함석 (PLAN 8-5)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-24 22:32:33 +09:00
eomsangdon 6d4e812604 Merge remote-tracking branches 'origin/sub_laptop_2' and 'origin/sub_laptop_3' into sub_laptop_1 2026-09-24 22:12:26 +09:00
eomsangdonandClaude Sonnet 5 4c58783e0f feat(m01): /text 재료 줄 요소조각 = 잡힌 품목 이름 · MT 참조 (PLAN 8-5)
- 검색어로 찾은 줄 · 고름으로 바꾼 줄 · 대표 줄 모두 — 글 = 자재품목 이름(지역 포함) · 참조 = MT · 그 키
- 새 master_text_item.py(700줄 안 넘기려 나눔) · 기계 · 인력 요소조각 그대로 · 금액 변화 0
- 시험 2개 추가(결속선 GF000159 · 고름)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 22:11:38 +09:00
eomsangdonandClaude Sonnet 5 2e9d457f94 feat(M01): /calc 재료 줄마다 품목 칸(키·이름·규격·단위·값칸) 더함 (PLAN 8-5)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-24 22:04:30 +09:00
eomsangdon 3f7d2b386f Merge remote-tracking branches 'origin/sub_laptop_1' and 'origin/sub_laptop_2' into sub_laptop_4 2026-09-24 21:25:02 +09:00
eomsangdonandClaude Sonnet 5 d611aac675 feat(m01): 단위 후보 같은 성격인 빈 줄만 검색어로 (PLAN 8-3)
- 혼화제(GC000684) g ↔ kg — 검색어 「무수축혼화제」 · 단가 0 → 5 · 금액 변화 0(수량 0)
- 성격이 다른 11줄 · 값 빈 자리표 14줄은 그대로
- 도구: 빈 줄은 후보 단위가 같은 성격일 때만 바꿈 · 1,354 자동값 금액 변화 0 · check_master 로직 0 · 단위 16 → 15

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 21:13:57 +09:00
eomsangdonandClaude Sonnet 5 c1eeede597 feat(M01): 기계 입력이 EQ 키로 와도 원문 분류번호로 풀어 받음 (PLAN 8-2)
- 고르기 목록(원문번호)과 같은 꼴로 풀어 계산 · 없는 키는 그대로 막힘
- 시험 1개 더함

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-24 21:12:29 +09:00
eomsangdonandClaude Opus 5.5 3f581ca41b feat(m01): 로직 재료 줄 키 → 기본 검색어 바꿔 넣기 (PLAN 8-3)
- 재료 줄 591 → {구분, 상세구분, 검색어} · 재료 입력 키 목록 76 걷음 · 넘기던 인자 뗌
- 결속선 등 원문대로 고른 품목(어닐링철선)이 검색 첫째 그대로
- 1,354 자동값 금액 변화 0 · 계산전부 멈춤 0 · check_master 로직 0 · 단위 16 그대로
- 못 맞춘 26줄은 옛 대표 · 조건 그대로: 값 빈 자리표 MT0306… 14 · 같은 단위 후보 0 빈 줄 12
- 도구: 빈 줄은 안 바꿈 · 판정은 서버 찾기(master_pick.search) · 시험 test_m01_search_words

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 21:05:58 +09:00
eomsangdon 1eed93bb1d Merge remote-tracking branch 'origin/sub_laptop_1' into sub_laptop_2 2026-09-24 20:46:55 +09:00
eomsangdon 9df0731799 Merge remote-tracking branch 'origin/dev' into sub_laptop_2 2026-09-24 20:46:53 +09:00
eomsangdonandClaude Opus 5.5 62b7cd972a feat(m01): 재료 기본 검색어 바꿔 넣기 도구 (PLAN 8-3)
- 대표 키 · 대표가 재료 입력인 줄 · 조건만 있는 줄 → {구분, 상세구분, 검색어}
- 검색어 = 이름 핵심 + 규격 핵심 + 지역 낱말 · 지금 품목이 8-1 차례로 첫째가 될 때까지 낱말 더함
- 재료 입력 키 목록 걷음 · 넘기던 인자 뗌 · GC000211 소모자재 MT:{합판} 자리는 줄 금액으로
- 글 모양 그대로(바뀐 값 자리만) · 기본은 마른 돌리기 · --쓰기 로 씀

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 20:46:43 +09:00
eomsangdonandClaude Sonnet 5 18549146b4 fix(m01): 값 빈 · 표에 없는 줄 시험을 그 줄만 비움 규칙에 맞춤 (test_masterdata_check)
- 범위규칙 마지막칸 — 101 은 멈춤 대신 그 줄이 비고 까닭「인 줄이 없음」
- 미공표 준용 — 값도 준용도 없는 직종은 그 줄이 비고 노무비 0
- 100 · 준용 값 확인은 그대로

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-24 20:29:12 +09:00
eomsangdon 4b92dc2863 Merge remote-tracking branches 'origin/sub_laptop_3' and 'origin/sub_laptop_4' into sub_laptop_1 2026-09-24 20:28:32 +09:00
eomsangdonandClaude Sonnet 5 af842c0337 feat(M01): 재료 기본 검색어 찾기 · 고름 받기 · 단위 환산 · 단위 경고 (PLAN 8-2)
- 새 master_pick.py — 검색어 찾기(지역 낱말은 차례만) · 고름(호표 줄 차례 → 자재 키) · 같은 성격 단위 환산 · 단위경고 칸 · 기계 목록 밖 원문 분류번호 받기
- Router 몸에 고름 칸 · check_master 검색어 후보 0 · 단위 경고
- 검색어 없는 줄은 옛 길 그대로 — 1,354 자동값 금액 변화 0
- 시험 test_m01_pick 8개

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-24 20:24:43 +09:00
eomsangdonandClaude Opus 5.5 e210e87075 knowledge(단가산출): 재료·기계 고르기 계약 — 기본 검색어·고름·단위 환산·단위경고·모달 검색 (PLAN 8-1)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QENJAMbjcnKJNq5n9k1fDU
2026-09-24 20:16:30 +09:00
eomsangdonandClaude Sonnet 5 51af428b5c fix(m01): /text 도 풀리지 않는 중간값은 비우고 그 줄만 금액 비움 (PLAN 6장 넷째 줄)
- _env_of 가 EmptyInput 을 Blank 로 받아 /calc 와 같은 빈 줄 규칙
- 멈춤(calc) 46 로직 329 조합: /text 멈춤 309 → 0 · 계는 /calc 와 같음

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 15:18:16 +09:00
eomsangdon 400c34c1f8 Merge remote-tracking branches 'origin/sub_laptop_1' and 'origin/sub_laptop_3' into sub_laptop_2 2026-09-24 15:08:25 +09:00
eomsangdonandClaude Sonnet 5 3ef2ba566f fix(M01): 표 찾기 실패는 그 찾기를 쓰는 줄만 비움 · 까닭 글 날글 없앰
- NoRow · Blank — 표에 맞는 줄이 없으면 중간값을 거쳐 쓰는 줄까지 단가·금액 null + 까닭 · 소계·계는 빈 줄 빼고 더함
- 까닭 「표 QC001869(1-2-3)에 시공구분 기계시공 · … 인 줄이 없음」 · 재료 고르기 후보 없음도 같은 규칙
- 시험 한 개 더 (test_m01_auto.py)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-24 15:07:19 +09:00
eomsangdonandClaude Sonnet 5 760c5233b6 fix(m01): 빈 줄 값 조각 None · 만약 갈래 괄호 · 로직 조각 이름 (PLAN 6장 둘째 줄)
- 덧줄이 부른 빈 호표 줄 값 조각 글 None → 그 줄 이름
- 만약() 이 고른 갈래가 덧셈이면 곱셈 안에서 괄호로 묶음(× (1 + 60 %))
- 식 안 로직 부르기 조각 글 = 그 로직 이름(별칭 아님)
- GF000185 · GC000376 · GC000111 자동값 + 고르기 후보 66번 점검: 날글 · 산수 어긋남 0

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 14:53:20 +09:00
eomsangdonandClaude Sonnet 5 c1181bc9b5 fix(m01): 자리 표시 든 참조를 조각 · 이름 식에서 이름 + 입력값으로 (PLAN 5장 다시 돌림 2)
- MO:휘발유:{지역} 날글 대신 「휘발유 · 전국평균」 · 입력이 비면 「휘발유 · 지역」
- 조각 참조 = 입력으로 풀린 실제 키 · 못 풀면 참조 없음
- 요소조각 · 조각 · 이름 식 같은 규칙 · 값 식 · 되돌리기는 그대로
- 자동값 · 빈 입력 14,490줄: 날글 48줄(로직 13) → 0 · 금액 변화 0

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 13:20:40 +09:00
eomsangdonandClaude Sonnet 5 a9199550d9 fix(m01): 표 조각 참조에 줄 = 엔진이 찾은 줄 차례 (PLAN 5장 6바퀴 서버)
- find 가 고른 줄의 차례(그 표 줄 배열 · 0부터)를 참조.줄 로 더함
- 줄에 없는 조건 칸은 맞음으로 보는 엔진 규칙을 화면이 흉내 내지 않게
- 시험: GC000010 크레인 줄 · GF000160 합판 줄 · 금액 변화 0

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 12:13:34 +09:00
eomsangdonandClaude Opus 5.5 f808b67285 fix(m01): 이름 식 별칭 = 짧은 표 제목 + 찾은 줄 값 · 긴 품명은 앞 핵심만 (PLAN 5장 5바퀴)
- 표 키(QC…) 대신 표 제목을 짧게 — 규격·코드 뗌 · 길면 첫 + 끝 낱말 · 제목 없으면 공종 · 상세구분
- 같은 표 여러 번은 번호 대신 서로 가르는 인자 값만(낙석방지망설치재료_철망 · 합판거푸집_각재)
- 호표 줄 이름도 짧은 품명 · 한 로직 안에서 겹치면 꼬리 _2
- 자동값 7,008줄: 표 키 1,188→0 · 번호 별칭 982→4 · 붙인 20자 넘는 이름 108→0 · 금액 변화 0

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 12:04:39 +09:00
eomsangdonandClaude Sonnet 5 0d81acc7d3 fix(m01): 값 식 작은 수를 유효숫자 4 자리로 · 200 원 미만 단가도 (PLAN 5장 4바퀴)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 11:31:18 +09:00
eomsangdonandClaude Sonnet 5 53c23d2739 feat(m01): /text 줄마다 요소조각 — 로직 부르기 이름 + 인자 글 (PLAN 5장)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-24 11:13:20 +09:00