Commit Graph
120 Commits
Author SHA1 Message Date
eomsangdonandClaude Opus 5 3c6e68231c perf(M01): 로직·조합 목록이 마스터를 한 번만 읽고 막힘은 미리 세어 둠 (일감 32)
- `_Store_Cache` 신설 — 자국(시각·크기)이 바뀐 파일만 다시 읽음 · 목록은 검사를 돌리지 않고 세어 둔 막힘을 씀
- 요소·표가 바뀌면 모든 로직을, 로직 파일이 바뀌면 그 파일과 그 로직을 부르던 줄만 다시 셈
- 저장 뒤에는 고친 파일을 바로 다시 읽게 알려 줌 — 저장 직후 목록 2.5초 → 0.06초
- `/logics` 둘째 번부터 2.5초 → 0.02초 · `/combos` 0.3초 → 0.01초 · 켠 뒤 첫 번만 3.4초
- 시험 `test_m01_cache.py` 다섯 — 세어 둔 막힘이 줄마다 검사한 값과 같음 · 거름 그대로 · 저장 직후 비침

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-22 02:17:49 +09:00
eomsangdonandClaude Sonnet 5 3b94c5e6a5 fix(M01): 재료 처음 펼치면 자재품목 목록 바로 열림 · 좁은 화면 넓은 표 안내 한 줄 (일감 30)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PAdA5ThqmtVSsbzjusk1cJ
2026-09-22 01:44:44 +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
eomsangdon 7379379bd7 Merge remote-tracking branch 'origin/dev' into main_desktop_1
# Conflicts:
#	M01_MasterData/M01_MasterData_Router.py
#	resources/master_data/_화면_계약.md
2026-09-21 20:22:00 +09:00
eomsangdonandClaude Sonnet 5 e9447ae72f feat(M01): 로직 개선 시험 「식으로 새로 만들기」 화면 — 식 적기 · 분석 · 변수 정하기 · 막힌 자리 짚기 · 시험 계산 · 저장 (PLAN 3-3)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PAdA5ThqmtVSsbzjusk1cJ
2026-09-21 20:13:05 +09:00
eomsangdon 87fc0ab52e Merge remote-tracking branch 'origin/sub_desktop_1' into main_desktop_1 2026-09-21 20:04:51 +09:00
eomsangdon c57f0ea06d feat(M01): 복사해서 만들기 엔진·서버 — 정본 로직을 별칭 꼴 식으로 펴고 되돌려 자체 로직으로 저장
- `scripts/master_copy.py` — `찾기()`·`로직()` 한 덩이를 별칭 이름으로 · 원문은 별칭표에 그대로
  (자르기는 `master_formula` 파서 그대로 · 완전 같은 부르기는 합침 · 인자가 갈리면 등장 차례로 번호)
- `GET /logic/formula` · `POST /logic/formula/save` — 저장은 별칭을 원문으로 되돌린 뒤 `logic/new` 재사용
- 계약 `_화면_계약.md` 7장 · 시험 `test_m01_copy.py` 8 통과(로직 1,354줄 되돌리기 전수 포함)
2026-09-21 20:02:12 +09:00
eomsangdon b639726e11 Merge remote-tracking branch 'origin/sub_laptop_2' into sub_laptop_4 2026-09-21 19:52:45 +09:00
eomsangdonandClaude Opus 5 be8868ca52 feat(M01): 식으로 새 로직 만들기 — 줄로 적은 식의 변수 뽑기·검사·단위 맞춤과 로직 틀로 옮기기
· 해석기 scripts/master_draft.py — 「이름 = 식」 줄에서 변수(처음 나온 줄 · 정의됨/미정)와
  변수마다 정할 것(무엇 = 마스터요소·설계입력·고정값·표찾기 · 단위 · 비목)을 뽑음
· 검사 — 두 번 정의 · 서로 물고 돎 · 안 쓰임(결과가 하나인지) · 못 읽음 · 비목 합 이름
· 단위 검사 — 곱셈은 곱하고 나눗셈은 나누고 덧셈·뺄셈·만약·최소·최대는 같아야 함 ·
  어긋나면 그 줄과 글자 자리 · 「m * m」 과 「㎡」 는 같게 봄 · 비율(%)은 무차원
· 옮기기 — 돈 로직은 결과 식을 항으로 갈라 호표 줄(마스터요소 하나 + 나머지 곱이 수량)과
  덧줄로 · 나머지 정의 줄은 중간(쓰는 차례) · 돈 아닌 로직은 중간 + 결과 식
· 표 찾기는 글자로 안 침 — 변수 하나로 두고 「찾기」 묶음을 모달이 채울 자리만
· 서버 길 POST /api/m01/logic/draft — 검사·미리보기 · save 면 자체 로직(키 GX)으로 저장
· 계약 _화면_계약.md 7장 · 시험 test_m01_draft.py 13개(자재비 식 · 단위 어긋난 식 · 물고 도는 식)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V1MKKZKpUHTPKb513FneU8
2026-09-21 19:50:27 +09:00
eomsangdonandClaude Sonnet 5 448ef6080f feat(M01): 로직 개선 시험 「텍스트 수식」 컨테이너 — 서버 /text 가 준 줄(비목 묶음 · 소계 · 끝수 · 까닭 옅게)을 그대로 찍음
- `runText` API + 시험 계산 때 `/calc` 와 같은 몸으로 같이 부름 · 화면은 다시 계산하지 않음
- 멈추면 서버 까닭 한 줄
- ORCA 13-4-1 · 12-4 · 12-17-1 소계 합이 호표 계와 같음 · 모달 표 뜸

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 19:46:56 +09:00
eomsangdon b99585da59 Merge remote-tracking branches 'origin/main_desktop_1' and 'origin/sub_laptop_1' into sub_laptop_3 2026-09-21 19:41:49 +09:00
eomsangdon e36376d6f6 Merge remote-tracking branch 'origin/dev' into sub_laptop_3 2026-09-21 19:41:46 +09:00
eomsangdonandClaude Opus 5 d12f471c93 feat(M01): 사람이 읽는 식 줄 API — 비목 묶음마다 「단가 * 수량식 = 금액」 과 소계
- 엔진 `resources/master_data/scripts/master_text.py` — 식 마디를 그 자리에서 나온 수로 풀어 한 줄 글로(찾기·로직·만약·중간 값·요소는 글자로 안 나감 · 「… / 100」 은 「… %」 · 수는 화면과 같은 자릿수)
- `POST /text` — 몸은 `/calc` 와 같음 · 답 `{ok, groups: [{비목, 줄, 소계, 끝수}], 계}` · 멈추면 까닭 한 줄
- 중간 값·끝수는 따로 줄로 안 보임(끝수는 소계 옆 한 마디) · 덧줄은 그 비목의 한 줄 · 하위 로직 줄은 비목마다 한 줄
- 단가 0 이거나 안 쓰는 줄은 까닭 한 마디
- 시험 `resources/tester/test_m01_text.py` 6 통과(13-4-1 · 12-4 · 12-17-1 · 계가 `/calc` 와 같음) · M01 시험 41 통과 · typecheck 통과 · 일괄 시험 계산 1,291 그대로

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JgUhN55Z3BCYhUJTjwTNfj
2026-09-21 19:37:55 +09:00
eomsangdonandClaude Sonnet 5 4a93cfdf8c feat(M01): 로직 개선 시험 상세 화면을 컨테이너 넷으로 · 호표를 인력·자재·경비 묶음과 소계로 · 줄을 누르면 쓰는 자료(표·단가) 모달
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 19:36:07 +09:00
eomsangdon f062e51e0d Merge remote-tracking branch 'origin/sub_laptop_4' into sub_laptop_1 2026-09-21 19:30:00 +09:00
eomsangdonandClaude Sonnet 5 77887c1bf4 fix(M01): 재료 컨테이너를 닫았다 다시 열면 기억된 거름과 목록이 어긋나던 것 — 마지막 거름으로 목록 되살림
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PAdA5ThqmtVSsbzjusk1cJ
2026-09-21 19:29:51 +09:00
eomsangdonandClaude Sonnet 5 5b69324207 feat(M01): 「로직 쉽게 보기·만들기」·「로직 흐름 보기」 컨테이너와 계산 코드 걷음 · 정본 로직 화면 복사본 「로직 개선 시험」 컨테이너 더함
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 19:26:58 +09:00
eomsangdonandClaude Sonnet 5 472a63cfde fix(M01): 좁은 화면에서 거름을 고르면 왼쪽 패널이 접혀 목록이 바로 보이게
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PAdA5ThqmtVSsbzjusk1cJ
2026-09-21 16:57:32 +09:00
eomsangdonandClaude Sonnet 5 a6097d2ce2 fix(M01): 좁은 화면에서 일위대가 로직 목록·호표 표가 안 보이던 것 고침
시험 계산 칸이 없어도 그리드가 280px 빈 칸을 남겨 390px 에서 본문 폭이 0 이 되던 것을
시험 계산 칸이 보일 때만 두 칸으로 하고, 900px 이하는 본문 위 · 시험 계산 아래로 쌓음.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PAdA5ThqmtVSsbzjusk1cJ
2026-09-21 12:30:57 +09:00
eomsangdonandClaude Sonnet 5 ce5184348d feat(M01): 로직 컨테이너를 셋으로 — 「로직 흐름 보기」(예전 C형 단독 · 읽기 + 시험 계산) 되살림 · 거름 기억과 캐시 열쇠 셋이 따로
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 12:22:05 +09:00
eomsangdonandClaude Sonnet 5 83752f8698 feat(M01): 옛 일위대가 로직 컨테이너는 호표 표 그대로 · 아래에 「로직 쉽게 보기·만들기」 컨테이너를 더해 방식 C + 새로 만들기 모달을 담음
- 일위대가 로직 컨테이너 = 로직을 누르면 옛 호표 표 + 시험 계산 칸이 바로 열림 · 보기 전환 단추와 보기 캐시 값 없앰 · 「새로 만들기」 는 옛 초안 방식
- 새 컨테이너 = 같은 목록·API 를 쓰되 거름 기억과 저장 안 한 것 캐시를 따로 둠 · 로직을 고르면 흐름 그림 · 새로 만들기 모달 · 본떠 만들기 · 상자 고치기

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 12:12:16 +09:00
eomsangdonandClaude Sonnet 5 5bef49df88 fix(M01): 일위대가 로직 컨테이너를 열 때 목록이 오기 전 「0 줄」 빈 표가 보이던 것을 「불러오는 중」 으로
- 첫 목록이 오기 전에는 표를 숨기고 「불러오는 중」 만 보임 · 목록이 오면 전체가 바로 뜸
- 새 탭에서 로그인 → 마스터 데이터 → 일위대가 로직 → 로직 열기 → 방식 C 기본 보기 · 새로 만들기 · 본떠 만들기 · 고급 단추가 보이는지 확인

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 11:28:24 +09:00
eomsangdonandClaude Sonnet 5 f458da7f20 feat(M01): 로직 화면에 「새로 만들기」 단추 · 저장 뒤 방식 C 로 열기 · 테스트 컨테이너와 방식 A·B 화면 걷음
- 로직 화면 바의 새로 만들기 단추가 모달을 엶 · 저장·본떠 저장 뒤 새 자체 로직을 흐름 그림으로 바로 엶
- UI_Test* 다섯 파일 삭제 · 왼쪽 「테스트」 줄 제거 · 모달의 까닭 글은 UI_Logic_Text 것을 씀
- 견본 10개 키 목록은 시험(test_m01_test_container)으로 옮김 · 흐름 그림 시험의 옛 파일 이름을 바로잡음

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016WRFJmmhPi4exAzHgPZHMT
2026-09-21 09:57:17 +09:00
eomsangdon e2d3eb5737 Merge remote-tracking branch 'origin/sub_laptop_4' into sub_laptop_3 2026-09-21 09:46:54 +09:00