Commit Graph
141 Commits
Author SHA1 Message Date
eomsangdonandClaude Sonnet 5 209654f311 fix(M01): 계산 멈춤에도 수량 칸 날식 · 까닭 날글 안 찍음 — 마지막 조각 · 빈칸 · 까닭 걸러냄 (PLAN 6장 셋째 줄)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-24 14:35:19 +09:00
eomsangdonandClaude Sonnet 5 5e9df81cbd fix(M01): 자리 표시 든 요소 줄 모달 — 요소조각의 푼 키로 단가 · 날글 안 찍음 (PLAN 5장 다시 돌림 3)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-24 13:30:16 +09:00
eomsangdonandClaude Sonnet 5 c4859d6f45 feat(M01): 표 알약 모달 — 참조.줄 있으면 그 차례의 줄을 칠함 (PLAN 5장 6바퀴)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-24 12:12:25 +09:00
eomsangdonandClaude Sonnet 5 4eb81f2b7d feat(M01): 조합 미리 보기 자동값 채우기 · 견본 딱지 · 열자마자 계산 · 바꾸면 다시
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-24 11:54:47 +09:00
eomsangdonandClaude Sonnet 5 68daa24259 fix(M01): 200 원 미만 단가는 유효숫자로 — 상세 · 모달 단가 (PLAN 5장 5바퀴)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-24 11:44:34 +09:00
eomsangdonandClaude Sonnet 5 0a6bac5056 fix(M01): 서버 조각을 호표 줄 차례로 찾음 · 못 찾으면 빈칸 (PLAN 5장 2바퀴)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-24 11:17:28 +09:00
eomsangdonandClaude Sonnet 5 a523066de4 feat(M01): 몫 줄 단가 = 단가 x 몫 비율 · 줄 모달 윗줄 요소조각 · 로직 알약이 그 로직을 엶 (PLAN 5장)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-24 11:10:52 +09:00
eomsangdon cebd49980a Merge remote-tracking branch 'origin/sub_laptop_1' into main_laptop_1 2026-09-24 10:28:18 +09:00
eomsangdonandClaude Sonnet 5 a30890546c fix(M01): 빠진 원 단위 입력도 null 처럼 그 줄만 비움 (/calc · /text)
- mf.fill_empty — 화면이 안 보낸 가격 입력(단위에 원)을 null 로 채움 · Store.calc·text 에서 부름
- 시험 test_m01_auto.py 한 개 더 — 입력 둘 뺀 GF000056

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-24 10:24:43 +09:00
eomsangdonandClaude Sonnet 5 00e2b08c12 fix(M01): 시험 계산 중간 값 — 줄 묶음 숨김 · 돈 로직 큰 수 정수 (PLAN 4장)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-24 10:16:08 +09:00
eomsangdonandClaude Sonnet 5 f94bdcfc8a feat(M01): 입력 없는 로직 열 때 한 번 계산 · 비목 몫으로 갈린 줄에 몫 표시 (PLAN 4장)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-24 10:07:23 +09:00
eomsangdonandClaude Sonnet 5 bb4500b4c3 fix(M01): 자동값 응답 키 값 · 표 알약 모달 참조.행 = 찾기 조건으로 줄 찾아 칠함
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EY2vdBQkHjdih9GgCsp9Fd
2026-09-24 09:21:29 +09:00
eomsangdon 27cd10a904 Merge remote-tracking branch 'origin/sub_laptop_3' into main_laptop_1 2026-09-24 09:14:29 +09:00
eomsangdonandClaude Sonnet 5 cb1b82c1dc feat(M01): 로직 화면 — 자동값 채움 · 서버 조각 알약 · 재료 고르기 모달 · 돈 모양 한 벌 (PLAN 3-4 화면)
- 시험 계산: 로직을 열 때 GET /logic/auto 값을 빈 입력에 채우고 「견본」 딱지(사용자가
  고치면 빠짐) 뒤 바로 계산 · 텍스트 수식까지. 서버 길이 없으면 안 채움
- 단가산출 상세 수량 칸: 화면 쪽 식 풀이(qtyFragments) 걷고 /text 줄의 조각으로 그림 —
  알약 글 = 조각 글 · 깊이 있는 조각은 흐리게 · 묶음별 줄 수가 안 맞으면 식 글자 그대로
- 표 알약 모달: 참조.행·열에 색(행을 못 받으면 열만)
- 재료 고르기 줄(요소가 객체): 모달이 객체를 받게 — 잡힌 품목 단가 + 후보 목록
- 돈 모양 한 벌(Logic_Money.ts): 상세·모달·텍스트 수식 소계와 계·시험 계산 결과·조합
  미리 보기 정수 · 수량·비율은 그대로
- 서버 파일은 안 만짐

검증 — typecheck 통과 · GF000160 ORCA: 알약 7 서로 다름 · 계 141,882 · 재료 줄 모달
· GF000219·GF000001 회귀 없음.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EY2vdBQkHjdih9GgCsp9Fd
2026-09-24 09:10:58 +09:00
eomsangdonandClaude Opus 5.5 79c42224e5 feat(M01): 견본 자동값 길 · 값 빈 품목은 그 줄만 비움
- GET /api/m01/logic/auto — 고르기 목록 첫째 · 범위 최솟값 · 찾기 조건 값은 그 표 가장 낮은 줄 · 나누는 수 1 · 그 밖 0 (master_auto.py)
- run — 후보 0 · 값 빈 품목(덧줄 포함)은 단가·금액 null + 까닭 · 소계·계는 빈 줄 빼고 더함 · 없는 키는 지금처럼 멈춤
- 자동값으로 로직 1,354 전부 계산 · 멈춤 0 · 시험 test_m01_auto.py

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LcqZtEzEf1sYSU4FUmVLNJ
2026-09-24 09:04:07 +09:00
eomsangdon 6eaa539fde auto: 2026-09-23 05:49 (ESD_LAPTOP) 2026-09-23 05:49:01 +09:00
eomsangdon abd37e8979 feat(M01): 로직 열자마자 텍스트 수식 왼쪽 이름 식 채움
로직을 열 때 /text 를 값 없이 한 번 불러 왼쪽 이름 식 칸만 미리 채움
오른쪽 값 식 칸은 [계산] 전까지 안내 글만 표시 · [계산] 뒤엔 지금과 같음
onText 콜백이 redraw 를 안 불러 화면에 안 닿던 것을 찾아 LogicLab.ts 한 줄도 같이 고침(onLines 와 같은 자리)
2026-09-22 20:54:25 +09:00
eomsangdonandClaude Sonnet 5 8187b0a79e fix(m01): 모달 뒷막 먹칠 없앰 — 덮개는 그대로
.m01-logic__backdrop 의 background 를 color-mix 30% 먹칠에서 transparent 로.
바깥 눌러 닫기·가운데 맞추기·z-index 는 그대로 둠 — 칠만 없앰.

검증: typecheck 통과 · ORCA 로 GF000219(13-4-1) 열어 줄 모달 띄움 —
backgroundColor rgba(0,0,0,0)·backdrop-filter none(뒤 패널 안 흐려짐) ·
바깥 클릭 닫힘 · Esc 닫힘 셋 다 확인.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-22 20:33:26 +09:00
eomsangdon 3abeb95716 Merge remote-tracking branches 'origin/sub_laptop_1', 'origin/sub_laptop_2' and 'origin/sub_laptop_3' into main_laptop_1 2026-09-22 20:02:32 +09:00
eomsangdonandClaude Sonnet 5 f7dd866876 feat(m01): 단가산출 상세 수량 칸 알약화 — 표 찾기만 알약 · 나머지는 글자
수량 칸을 「알약 + 사칙연산 글자」로 그림 — 찾기(...) 표 호출만 알약(조각 계약
`ref/_분석_알약_상세줄.md` ㉮ 표대로) · 나머지(숫자·연산기호·중간값·설계입력
이름)는 글자. 서버 조각 API 는 아직이라 화면에서 임시로 쪼갬(Logic_Note.ts
찾기() 규칙과 같음) — 서버가 붙으면 걷어냄. 단가·금액 칸은 안 건드림.

알약을 누르면 그 표만 바로 모달로(모달 안 알약 목록은 없앰) · 줄을 누르면 그
줄의 단가·다른 로직을 바로 보임(알약 없이 한 가지만). 인력·재료·경비 세 표를
table-layout: fixed + 같은 칸 폭으로 맞춤 · 알약은 칸 폭 기준 줄바꿈.

원 단위 소수점 0 — 돈 자리(단가·금액·소계·계)만 정수 · 수량·비율은 그대로 ·
조합 미리 보기(Combo_Preview)도 같이 고침.

검증: typecheck 통과 · ORCA 로 13-4-1·12-4·12-17-1 열어 확인(알약 클릭·행
클릭·칸 폭 동일 729.57px·정수 표시 확인, data-sum 은 원래 값 그대로 유지).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-22 19:59:48 +09:00
eomsangdonandClaude Sonnet 5 644cd170c6 feat(M01): 시험 계산 입력 2열 · 자재·기계·직종 키를 이름으로
시험 계산 입력 칸을 요소 표(기본정보)가 쓰는 auto-fill 그리드(m01-logic__head)로
감싸 여러 칸이 나란히 놓이게 함 — 짧은 고르기 줄은 2열로 붙고, 이름이 긴 줄만
한 칸을 다 씀(m01-logic__field--wide).

고르기 값이 자재(MT)·기계(EQ)·직종(LB) 키(2글자+6자리)면 /elements 를 키
그대로 물어(부분일치라 그 줄만 걸림) 이름+규격으로 바꿔 보임 — 보내는 값은
키 그대로라 계산은 그대로. 같은 키는 모듈 캐시로 한 번만 물음.

「그릇 폭 280px 고정」은 옛 테스트 컨테이너(UI_Test*, 2-3에서 걷힘)의 죽은 CSS
규칙이라 지금 쓰는 LogicLab 화면엔 안 걸림(실측 730px) — 따로 안 풂.

검증 — GC000031 ORCA: 공기·철선 나란히 2열 · 철선 고르기가
「어닐링철선,서울 #8, 4.0mm」 등 이름으로 뜸 · 계산 15,020.927(고침 전과 같음) ·
typecheck 통과 · 로직 전체 키형 고르기 179줄이 자재품목에 다 있어 이름 못
바꾸는 자리 0(100건 상한은 키 하나씩 물어 안 걸림).

Pick.ts(재료·기계 바꿔 고르기)는 이미 이름으로 보여 안 고침.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-22 19:37:20 +09:00
eomsangdonandClaude Sonnet 5 0eebf357fa feat(M01): PLAN 7-1 — 「로직 개선 시험」을 「단가산출 로직」 하나로 합침
소요량·계수의 쓰는 로직 · 조합 화면 로직 이름 · 패널 제목 세 자리를 모두
새 컨테이너(UI_LogicLab)로 돌림 · 옛 컨테이너(UI_Logic_Page)는 old_code/M01_MasterData/
로 옮김(지우지 않음 · import 경로만 고침 · 통째 복사 아님) · 정본 GC·GF 를 화면에서
바로 고쳐 저장 · 정본 파일에 빈 줄 더하기 두 길은 사용자 확정으로 버림.
분석 = resources/master_data/ref/_분석_로직컨테이너_통합.md.

typecheck 통과 · M01 시험 107 통과 · ORCA — 패널에 「단가산출 로직」 하나만
· 소요량 표 쓰는 로직 키(GF000002 · GF000051) 클릭 각각 그 로직이 새 컨테이너에서 열림
· 조합 화면 로직 이름도 같은 컨테이너로 이어짐.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-22 12:08:54 +09:00
eomsangdon 6a2925a9ec auto: 2026-09-22 03:10 (EOMSANGDON-HOME) 2026-09-22 03:10:31 +09:00
eomsangdon 5a80dc4eb2 fix(마스터화면): 화면 글 고침 — 자재→재료·결과단위 띄어쓰기·죽은 글 지움
_검증_화면글.md 의 「사용자 확정 필요 없는 것만」 고침(브레인 판정) —
「단가산출 상세」 대 「호표」·「키」는 확정 거리라 그대로 둠.

① 자재 → 재료(LogicLab_Text.ts G_material) — 왼쪽 패널 묶음 이름과 맞춤.
② 결과단위 → 결과 단위 — Logic_Text.ts Head_Unit 뿐 아니라 화면을 열어
   실제 표 머리글로 쓰이던 Logic_List.ts COLS 하드코딩 글자도 같이 고침
   (점검 문서엔 안 적혀 있던 자리 — 화면 확인 중 찾음).
③ 죽은 글 지움 — locale_m1.ts M01_GroupTest(부르는 화면 코드 없음) ·
   Logic_Text.ts Edit_OwnOnly·Edit_Copy·Edit_Copied·Edit_CopySoon
   (API 라는 프로그래머 말 포함, 다 같은 안 쓰이는 무리 — grep 으로
   재확인 뒤 지움. 같은 이름의 로직개선시험 쪽 버튼은 살아 있어 안 건드림).

typecheck(tsc --noEmit) 전후 0건. ORCA 로 화면 열어 확인 — 4곳 다 바뀐 글
그대로 보임. 390px 확인은 ORCA CLI 에 뷰포트 폭을 바꾸는 명령이 없어 못 함
(CSS 로 흉내내면 실제 media query 가 안 걸려 참값이 아님) — ref 문서에
그 사정과 글자수 견줌(줄바꿈 위험 낮음)을 적어 둠.
2026-09-22 01:40:10 +09:00
eomsangdonandClaude Sonnet 5 fb503d6b5f fix(M01): 일위대가 조합 — 첫 펼침 불러오는 중 · 늦은 답 버림 · 열어 둔 상세 기억 · 로직 상세 이동 전 확인
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-22 00:59:19 +09:00
eomsangdon 8c2751ca96 Merge remote-tracking branch 'origin/main_desktop_1' into sub_laptop_3 2026-09-22 00:55:48 +09:00
eomsangdon db519dcbd9 fix(M01): 조합 메모·이름 검사 흠 둘 고침
메모 칸이 글자 아닌 값(수량 등)을 받아도 저장되던 것 · 이름이 글자 아니어도
저장되던 것을 막음(sub2 검증 `ref/_검증_조합.md` 일감 24). 메모는 글자·null만,
이름은 서버 400(글자 아님) + check_combo_form 422(빈 이름·60자 넘음·겹침)로
까닭과 함께 거절. _틀.md 10장 갱신 · 재현 시험 포함 4건 추가(21 통과).
2026-09-22 00:54:20 +09:00
eomsangdonandClaude Sonnet 5 c4d6ba3949 fix(M01): 일위대가 조합 — 390px 에서 담은 로직 표·미리 보기 표가 넘치던 것을 옆 스크롤로 · 사용자 경로 검증 기록
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-22 00:53:06 +09:00
eomsangdonandClaude Sonnet 5 fc6bb7240e feat(M01): 로직 개선 시험 알약에서 마스터 화면으로 잇기 · 단가 없는 재료 알약에 이유 한 마디 (PLAN 5-3 · 5-4)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PAdA5ThqmtVSsbzjusk1cJ
2026-09-22 00:09:49 +09:00
eomsangdon 6cb6baabd6 Merge remote-tracking branch 'origin/sub_laptop_3' into sub_laptop_4 2026-09-22 00:03:48 +09:00
eomsangdonandClaude Sonnet 5 ca805b3076 fix(M01): 일위대가 조합 화면 — 계약 9장대로 맞춤 · 수량은 저장하지 않고 미리 보기 때만 보냄
- 담은 로직 줄 = {로직, 메모} 뿐 · 입력값(수량)은 화면 안 메모로만 두고 조합에 안 저장
- 서버 길 실제 이름으로 맞춤: /combo/new · /combo/edit(판본) · /combo/delete(판본) · 422 검사 글·409 낡은 판본 안내
- 미리 보기는 화면이 로직마다 부르지 않고 POST /combo/preview 한 번에 받아 비목별 합계를 찍음

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-22 00:01:48 +09:00
eomsangdonandClaude Sonnet 5 c4a5087fb1 feat(M01): 로직 개선 시험 텍스트 수식 두 칸 — 왼쪽 변수 이름 식 · 오른쪽 값 식 · 짝 번호 줄 맞춤과 밝히기 (PLAN 5-1)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PAdA5ThqmtVSsbzjusk1cJ
2026-09-22 00:00:50 +09:00
eomsangdon 2aeb3d4937 Merge remote-tracking branches 'origin/main_desktop_1' and 'origin/sub_desktop_1' into sub_laptop_1 2026-09-21 23:51:51 +09:00
eomsangdonandClaude Sonnet 5 a4b3e7d77a feat(M01): 일위대가 조합 마스터 — 데이터 · 엔진 · 서버 길(화면은 아직)
PLAN 4-2. 조합 = 관리자가 이름을 붙이고 단가산출 로직을 골라 담은 묶음.
마스터에는 담은 로직 목록만 두고 수량·비율·계산은 두지 않음(4-0 확정 · 계산은 프로젝트 몫).

- 새 파일 `일위대가조합.json`(빈 채 · 줄은 사용자가 화면에서 만듦) · 테이블ID `UA`
  · 원문이 없어 머리 `원문` 과 줄 `원문번호` 를 두지 않음(`mk.NO_NUMBER` 에 `UA`)
- 엔진 `scripts/master_combo.py` — 검사 넷(없는 로직 키 · 같은 로직 두 번 · 빈 조합
  · 조합이 조합을 담음) · 「이 로직을 쓰는 조합」 거꾸로 찾기 · 미리 보기 계산
- `check_master.py` 에 「조합」 갈래 더함 · 저장 전 검사(`check_saved`)에도 얹어 422 로 막음
- 서버 `M01_MasterData_Store_Combo.py` — `GET /combos`·`/combo`·`/logic/combos`
  · `POST /combo/new`·`/edit`·`/delete`·`/preview`(저장 없음)
- 조합은 요소 그룹이 아님 — `/groups` 는 여덟 그대로 두고 제 길로만 다룸
- 틀 `_틀.md` 10장 · 계약 `_화면_계약.md` 9장 · 시험 `test_m01_combo.py` 17

검증 — 견본 조합(13-4-1 · 13-4-2 · 13-2-1) 미리 보기 합계가 그 로직 셋의 시험 계산을
비목별로 더한 값과 같음 · 못 도는 줄은 그 줄만 멈추고 나머지 합계는 그대로 ·
저장 전 조합 줄로도 미리 보기 되고 아무것도 안 생김 · 검사 넷 다 422 · 낡은 판본 409 ·
정본 로직 안 바뀜 · `check_master 틀`·`조합` 0건 · pytest 44 통과(조합 17 + api 27)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WaS48Nvs26o3aFUpcfJxVv
2026-09-21 23:50:42 +09:00
eomsangdon fca258ab38 Merge remote-tracking branches 'origin/sub_laptop_1' and 'origin/sub_laptop_4' into sub_desktop_1 2026-09-21 23:36:42 +09:00
eomsangdonandClaude Sonnet 5 cd2e8df39a feat(M01): 로직 개선 시험 줄 모달 — 한 줄 풀이와 알약 단추(누른 자료 하나만 펼침·접힘) (PLAN 5-3)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PAdA5ThqmtVSsbzjusk1cJ
2026-09-21 23:34:17 +09:00
eomsangdonandClaude Sonnet 5 ca5c2649e3 feat(M01): 일위대가 조합 화면 뼈대 — 왼쪽 컨테이너 · 목록 · 상세 · 로직 더하기 · 미리 보기
- 왼쪽 패널 「일위대가 조합」 컨테이너(단가산출 로직 아래) · 구분/상세구분 거름 · 새 조합 · 지우기 · 저장
- 상세: 이름·구분·단위·비고 + 담은 로직 표(올리기/내리기/빼기) · 로직 줄을 누르면 단가산출 로직 상세로 감
- 로직 더하기 창: 구분 → 상세구분 → 찾기로 하나씩 고름
- 미리 보기: 담은 로직별 입력값으로 계산해 노무비·재료비·경비 합계(보기만)
- 서버 길(조합 목록·저장·지우기)은 아직 없어 Combo_Api 한 곳에 가정 이름으로 둠

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 23:27:47 +09:00
eomsangdonandClaude Sonnet 5 7009a94e7c fix(M01): 로직 개선 시험 — 상세 컨테이너 넷의 바깥 간격 · 안쪽 칸 간격 · 제목 크기를 한 양식으로
- 컨테이너 사이 12px · 안쪽 칸 사이 8px · 제목 16px 굵게(넓은 화면 · 340px 폭 모두 같은 규칙)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 23:18:46 +09:00
eomsangdonandClaude Sonnet 5 f6c3e25c5d fix(M01): 이름 맞추기 — 「일위대가 로직」 → 「단가산출 로직」 · 「일위대가 호표」 → 「단가산출 상세」 (화면 문구와 주석만)
- 키(GF·GC·GX) · 파일 이름 · 데이터 안의 말은 그대로
- _틀.md 의 같은 말도 바꿈

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 23:16:40 +09:00
eomsangdon 08ac0f7614 Merge remote-tracking branch 'origin/sub_laptop_3' into main_laptop_1 2026-09-21 22:02:51 +09:00
eomsangdon be80dbf2a8 Merge remote-tracking branch 'origin/dev' into main_desktop_1
# Conflicts:
#	M01_MasterData/M01_MasterData_UI_LogicLab.ts
#	M01_MasterData/M01_MasterData_UI_LogicLab_Style.css
#	M01_MasterData/M01_MasterData_UI_Logic_Api.ts
#	resources/master_data/ref/_검증_별칭_복사.md
2026-09-21 21:37:11 +09:00
eomsangdonandClaude Sonnet 5 42243ba19b fix(M01): 로직 개선 시험 — 호표 묶음을 서버 비목 몫으로 나눔 · 「표 찾기 찾기」 겹침 · 모달 걸린 줄 맞힘
- 호표 묶음 소계가 텍스트 수식 소계와 같아짐(로직을 부르는 줄도 노무비·재료비·경비로 나뉘어 「그 밖」이 사라짐)
- 표 줄의 빈 칸은 조건에서 빼 서버 찾기()와 같게 걸린 줄을 맞힘
- 표 꼬리표를 「표」로 줄이고 걸린 줄 없음 안내글을 바로잡음

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 21:35:19 +09:00
eomsangdonandClaude Sonnet 5 f7ecefa2fc fix(M01): 로직 개선 시험 — 자체 로직 상세의 호표 중복 정리 · 고치는 중 커서 유지
- 자체 로직은 고치는 자리를 편집기 하나로 두고 읽기용 묶음 소계 표는 접어 둠
- 자동 재계산으로 다시 그려도 고치던 칸에 커서와 선택 위치가 남음

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 21:13:10 +09:00
eomsangdon e73ef5d3a0 feat(M01): PLAN 3-4 복사해서 만들기 화면 — 별칭 꼴 식 편집·표 바꾸기·로직 부르기 갈래·시험 계산·저장
- 새 M01_MasterData_UI_LogicLab_Copy.ts — [본떠 만들기] → GET /logic/formula(별칭 폼) 편집
  → 표 바꾸기 모달(소요량·계수 검색) · 로직 부르기 그대로/같이 복사 갈래 · 식 줄 고치기·덧줄 더하기
  → POST /logic/formula/preview 로 되돌린 실제 식을 buildCalc 로 재사용해 시험 계산
  → POST /logic/formula/save 로 자체 로직(GX) 저장 · afterSave 로 LogicLab 이 새 키를 바로 엶
- 서버: POST /logic/formula/preview 새로 더함(저장 없이 별칭만 원문으로 되돌림) · 계약 7장 반영
- LogicLab.ts 는 「본떠 만들기」 단추 한 줄만 붙임(정본 로직 화면·New 화면은 안 건드림)
- ORCA 로 13-4-1 을 본떠 저장 — 안 고치면 79,279.668 로 원본과 같음 · 석공 줄 곱 2배로 고치면
  131,716.728 로 바뀜 확인 · 시험 흔적(GX000001·로직_자체.json·키대장 GX 번호) 지움·되돌림
- 시험 `test_m01_copy.py` 에 미리보기 시험 둘 더함 · M01 시험 130 통과 · typecheck 통과
2026-09-21 21:12:43 +09:00
eomsangdon 12a37ee67e Merge remote-tracking branches 'origin/sub_laptop_2' and 'origin/sub_laptop_3' into sub_desktop_1 2026-09-21 21:02:27 +09:00
eomsangdonandClaude Sonnet 5 96e58106bb feat(M01): 로직 개선 시험 — 자체 로직(GX) 상세도 정본과 같은 컨테이너 넷 · 고치면 호표 소계와 텍스트 수식이 다시 계산됨
- 기본정보 칸(번호·이름·단위·출처)을 자체 로직이면 고칠 수 있게 · 호표 묶음·소계 아래에 편집기(입력·호표·중간 값·덧줄·끝수)를 폄
- 고친 뒤 0.7 초 쉬면 시험 계산을 다시 눌러 소계 · 텍스트 수식을 새로 그림 · 편집기 칸은 다시 그려도 그대로 씀
- ORCA 본뜬 GX — 컨테이너 넷 정본과 같음 · 증가율 고침 203,281.2→223,609.32 소계·텍스트 수식 계 같이 바뀜 · 시험 자료·키 대장 되돌림

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 20:58:38 +09:00
eomsangdonandClaude Opus 5 8a91fa3cca fix(M01): 식 해석기 흠 셋 — 단위 없는 맨 수 · 「식 = 이름」 꼴 · 비목 안 고른 덧줄
· 단위 칸에 「없음」(맨수 · - · % · 빈 글)을 골라 무차원으로 둘 수 있게 함 —
  횟수·배율을 「회」 로 두어 「원/회」 가 남던 덧셈 검사 걸림을 풂 ·
  같은 단위끼리 나누면 맨 수가 되는 것도 맞음
· 줄을 「이름 = 식」 과 「식 = 이름」(A * B = C) 둘 다 받음 — 한쪽이 값 이름 하나면 그쪽이 이름 ·
  양쪽이 다 식이면 그 줄의 등호 자리를 짚음 · 괄호 안 등호와 비교 기호는 안 가름
· 비목 안 고른 덧줄을 「못 옮김」 으로 막지 않고 그 값의 「정할것」 에 「비목」 을 얹어 짚어 줌 ·
  돈 아닌 로직은 덧줄이 없어 안 물음
· 계약 _화면_계약.md 8장(다른 창이 7장을 먼저 씀) · 시험 test_m01_draft.py 18개

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-21 20:57:43 +09:00
eomsangdonandClaude Sonnet 5 8a9721fa8f fix(M01): 로직 개선 시험 — 자체 로직(GX)에는 「기본 로직은 고치지 못함」 문구 대신 고치는 편집기를 냄
- `isOwnLogic`(키 GX…)이면 기본정보 · 호표 자리에 정본 화면과 같은 편집기 · 정본 로직은 그대로 읽기 전용
- ORCA 견본 GX 초안 — 문구 없음 · 입력칸 51개 · 정본 13-4-1 소계 203,281.2 그대로

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 20:53:04 +09:00
eomsangdon 45746c9ed7 Merge remote-tracking branches 'origin/main_desktop_1', 'origin/sub_laptop_1' and 'origin/sub_laptop_4' into sub_laptop_2 2026-09-21 20:50:38 +09:00
eomsangdon edbfd846a2 Merge remote-tracking branches 'origin/main_desktop_1', 'origin/sub_laptop_1' and 'origin/sub_laptop_4' into sub_laptop_3 2026-09-21 20:50:36 +09:00