Commit Graph
618 Commits
Author SHA1 Message Date
eomsangdon 354eb577bd Merge remote-tracking branch 'origin/dev' into sub_laptop_7 2026-10-05 20:53:40 +09:00
eomsangdonandClaude Opus 5.5 0b11333942 feat(M02): 단가승격 · 사전조합 문서 구분 · 상세구분 · 연결 칸 — 51-12 서버
- 단가승격 = 저장 때 원 로직의 구분 · 상세구분 · 연결 {로직 키, 출처 글} 적음(화면 값 안 받음)
- 사전조합 = 화면이 고른 구분 · 상세구분 저장(빈 글 허용 · 처음 값은 화면 몫)
- 서고 목록 길 · 고르기 길(층 양식 목록) 줄에 구분 · 상세구분 · 연결 실음 · 양식 읽기 길도
- 옛 문서(칸 없음) = 읽을 때 채움 — 승격은 원 로직 것 · 사전조합은 빈 글
- 시험 test_m02_labor_ref 23 통과 · 층 읽기 시험 9 통과

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
2026-10-05 20:48:54 +09:00
eomsangdonandClaude Opus 5.5 28e535f490 feat(M02): 로직 고르기 창 구분 · 상세구분 거름에 단가승격 · 사전조합 줄 포함 (51-12 화면)
- 구분 · 상세구분 고르기 칸 = 로직 구분 + 서고 줄(승격 · 조합) 구분 · 같은 값은 한 칸
- 구분을 고르면 서고 줄도 같은 값으로 걸러짐(이전 = 서고 줄 숨김)
- 서고 줄 보조 글에 구분 · 상세구분 · 사전조합 상세 [추가] 창도 같은 창
- 확인 시나리오 resources/tester/ui_checks/51-12_고르기_구분.js

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W4uKaV4ZBhsJN4GHG7yRj4
2026-10-05 20:47:49 +09:00
eomsangdon d495f78759 Merge remote-tracking branch 'origin/sub_laptop_7' into sub_laptop_1 2026-10-05 20:31:15 +09:00
eomsangdonandClaude Opus 5.5 bec4258bd3 feat(M02): 사전조합 [로직 추가] = 일위대가 상세와 같은 고르기 창 · 같은 줄 동작(51-11 화면)
- 고르기 창 서고 줄만 거름(only) 없앰 — 단가산출 · 단가승격 · 일위조합 모두 · 구분 · 상세구분 거름
- 사전조합 단가산출 로직 줄 = [옵션] · 수량(손 · 기본 1) · 위로 · 아래로 · 삭제 · 하위 행 일위대가 상세와 같음
- 시험 기대 글 고침(card_shell) · 화면 시나리오 51-11

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
2026-10-05 20:31:11 +09:00
eomsangdonandClaude Opus 5.5 31874ea3a6 feat(m02): 사전조합 담은로직에 단가산출 로직 줄 허용 — 51-11 서버
- 줄 = {참조, 수량, 메모} | {로직, 입력값, 메모, 수량} · 수량 기본 {손: 1}
- 검사 = 일위대가 labor.clean 같은 길(모르는 로직 · 같은 로직 · 같은 참조 두 번 · 입력값 꼴)
- 펼침 계산 = 로직 줄 run_line 기준 ÷ 배 × 수량 · 안 줄에 로직 줄
- 로직 지우기 검사에 사전조합 포함 · 굳힘 로직 목록에 사전조합 로직 포함
- 시험 test_m02_labor_ref 22 통과(섞인 사전조합 합 = 손셈 · 지우기 409)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
2026-10-05 20:29:39 +09:00
eomsangdon 68de87645c Merge remote-tracking branch 'origin/sub_laptop_1' into sub_laptop_6 2026-10-05 20:07:17 +09:00
eomsangdonandClaude Opus 5.5 9443a0371f feat(M02): 서고 목록표 M01 표 양식 · 사전조합 [로직 추가] 같은 고르기 창(51-10)
- 서고 목록표(단가산출 승격 · 일위대가 사전조합) = M01 단가산출 로직 목록 양식 — 찾기 줄(buildHeadFilters) · 쪽(buildPager · 30줄) · 표 m01-master__grid · 줄 m01-master__table-row 를 M01 에서 import
- 머리 단추 꼴 = M01 [신규 로직] · [로직 복사/생성] · [로직 지우기] 와 같음(filled · ghost · danger 빨강) · 단추 틈 8px(m01-head 와 같음)
- 사전조합 상세 [추가] 따로 단추 없앰 — 일위대가 상세와 같은 [로직 추가] · 같은 고르기 창(Labor_Pick · only = 서고 줄만)
- 시험 기대 글 고침(card_shell 늘 참이던 assert) · 화면 시나리오 51-10 · 51-6 단추 이름

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
2026-10-05 20:05:32 +09:00
eomsangdon 9a0d68bc0b Merge remote-tracking branch 'origin/sub_laptop_3' into main_laptop_1 2026-10-05 20:02:22 +09:00
eomsangdonandClaude Opus 5.5 2a914e11eb feat(ui): 공용 찾기 목록 양식 · 로직 고르기 창 적용 — 구분 · 상세구분 2열 · 이름 왼쪽 맞춤 (51-9)
- ui_template_find_list(.ts · .css) 새로 둠 — 거름 칸 2열 격자 · 찾기 칸 · 알림 줄 · 한 줄 결과 목록(꼬리표 · 이름 · 흐린 보조 글 · 단위) · 고름 하이라이트 · ↑ ↓ Enter
- M02 로직 고르기 창(Labor_Pick)이 이 양식을 씀 — 구분 칸 · 층 단추 · data-pick 표지 그대로
- 확인 시나리오 resources/tester/ui_checks/51-9_고르기_찾기양식.js

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W4uKaV4ZBhsJN4GHG7yRj4
2026-10-05 19:59:05 +09:00
eomsangdonandClaude Opus 5.5 2cb820a2e8 fix(M02): 51-7 덧 일위대가 하위 행 — 이름 글자 키움 · 줄 촘촘
- 하위 행 이름 12 → 14px · 줄 높이 61 → 40px · 칸 여백 12/16 → 4/8px (위 줄 16px · 85px 그대로)
- ui_checks 51-2 시나리오 — 하위 행 글자 · 높이 px 전후 적음 · font · h · topH 잼

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MgChuAcyBqUkhHMTXomQC7
2026-10-05 19:52:57 +09:00
eomsangdonandClaude Opus 5.5 74c20420c4 fix(M02): 51-7 일위대가 표 줄 이름 앞 ▸/▾ 화살표 없앰 — 줄 누름 펼침 · 같은 줄 다시 누름 접힘 그대로
- 카드 · 상세 같은 표(logicTable) — 화살표 span · .m02-labrow__fold 스타일 걷어냄
- ui_checks 51-2 시나리오 — 열림 = 고른 줄 수 · 화살표 = 0 기대

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MgChuAcyBqUkhHMTXomQC7
2026-10-05 19:50:28 +09:00
eomsangdon 9e589cf7e3 Merge remote-tracking branch 'origin/sub_laptop_2' into main_laptop_1
충돌 = Labor_Text 글 키 둘 다 남김(50-4 상세 글 · 51-3 사전조합 글) · docs 수정요구 = 메인 판
2026-10-05 19:45:06 +09:00
eomsangdon e51bb99c4c Merge remote-tracking branch 'origin/sub_laptop_6' into sub_laptop_1 2026-10-05 19:43:46 +09:00
eomsangdonandClaude Opus 5.5 a1673aeb10 feat(M02): 서고 사전조합 상세 줄 넣기 — [추가] · 수량 손 입력 · 자기 참조 422(51-6)
- 사전조합 상세 머리 [추가] = 고르기 창 서고 줄만(단가승격 · 사전조합 · 위 층만 · 구분 거름 없음)
- 새 줄 수량 기본 손 1 · 수량 창은 손 입력만(면적산출 시트 없음) · 위로 · 아래로 · 삭제 · [저장]
- 서버: 사전조합이 자기 자신을 담으면 422 「순환 — 자기 자신」 · 단가승격 상세는 한 줄 고정 그대로
- 시험 한 개 · 화면 시나리오 51-6(가짜 응답 · 서고 쓰기 없음)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
2026-10-05 19:42:39 +09:00
eomsangdon 2818b5ff99 Merge remote-tracking branch 'origin/sub_laptop_3' into sub_laptop_1 2026-10-05 19:39:42 +09:00
eomsangdonandClaude Opus 5.5 9d9955631f feat(M02): 일위대가 조합 서고 — 좌측 항목 둘 · 상세 목록표(51-4)
- 좌측 컨테이너 = 층 단추 + 「단가산출 승격」 · 「일위대가 사전조합」 항목만 · 새로 · 본떠 · 지우기 단추 없앰
- 항목 누름 = 상세 칸 목록표(고름 · 키 · 이름 · 단위 · 기준 금액 · 고친 날) · 줄 누름 = 그 문서 상세
- 머리 [생성] · [복사](고른 줄) · [삭제](고른 줄 · 쓰는 곳 있으면 서버 까닭 알림)
- 층 목록 서고 줄에 1 단위 기준 계(`기준금액`) 실음 · 시험 한 개 · 화면 시나리오 51-4

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
2026-10-05 19:39:07 +09:00
eomsangdonandClaude Sonnet 5.5 9aeefd44dc feat(M02): 로직 고르기 창 한 목록 — 찾기 단추 · 탭 없앰 · 구분 칸 · 치는 대로 걸러짐 (51-3)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W4uKaV4ZBhsJN4GHG7yRj4
2026-10-05 19:35:01 +09:00
eomsangdonandClaude Sonnet 5.5 4a4cdc8aa9 fix(ui): 51-5 단위 고르기 단추 = 공용 기본 크기([저장]과 같은 높이 · 글자)
- 공용 UnitPick 한 곳 — 작은 크기 지정 제거
- 시험: ui_checks/51-5_단위단추_크기.js

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NPJGtfXo6GMbcpiboQC4uK
2026-10-05 19:33:10 +09:00
eomsangdonandClaude Opus 5.5 ab599ce334 fix(M02): 51-2 일위대가 줄 상세 — 표 아래 따로 상자 대신 고른 줄 바로 아래 하위 행(접고 폄)
- 줄 누름 = 그 줄 아래 하위 행(같은 표 · 같은 칸 · 이름 앞 ▸/▾ · 한 줄만 · 다시 누름 = 닫힘)
- 단가산출 · 승격 = 그 로직 재료 · 노무 · 경비 줄 · 사전조합 = 안 줄 · 금액 칸 = 기준 / 반영 두 줄 꼴
- 서버 승격 줄 = 1 단위로 나눔(하위 합 = 위 줄 기준)
- 50-4 M01 시험계산 상자 · 안 쓰는 글 걷어냄
- 시험: 승격 줄 합 = 기준 · ui_checks 51-2 시나리오

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MgChuAcyBqUkhHMTXomQC7
2026-10-05 19:31:01 +09:00
eomsangdonandClaude Opus 5.5 f2b5c3b44d fix(M02): 합친 뒤 LaborRow 참조 칸 두 번 — 하나로(50-3 ③ · ④ 이음)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FJqWQpoB1RE7hiaQ2wH8qV
2026-10-05 19:10:40 +09:00
eomsangdon 5317802b33 Merge remote-tracking branch 'origin/sub_laptop_1' into main_laptop_1
충돌(Labor_Detail.ts 한 줄) = 같은 식 · 주석 붙은 쪽(sub1) 취함
2026-10-05 19:09:26 +09:00
eomsangdon 408d2721f9 Merge remote-tracking branch 'origin/sub_laptop_3' into sub_laptop_1 2026-10-05 19:08:37 +09:00
eomsangdon 29ccf4a94e Merge remote-tracking branch 'origin/sub_laptop_7' into sub_laptop_1 2026-10-05 19:04:05 +09:00
eomsangdon 3feb56b190 Merge remote-tracking branch 'origin/dev' into sub_laptop_2 2026-10-05 19:00:33 +09:00
eomsangdonandClaude Opus 5.5 90d27128e1 feat(M02): 50-3 ④ 로직 고르기 창 서고 탭 · 참조 줄 표 · 줄 상세
- [로직 추가] 창 탭 단가산출 · 단가승격 · 사전조합 — 서고 탭은 층 단추(위 층만 · 기본 = 가장 가까운 층) + 그 층 목록 · 고르면 참조 줄 더함(같은 참조 두 번 막음)
- 담은 로직 표 참조 줄 — 줄 가름 lineId · 키 · 이름 · 단위 = 가리킨 문서 것 · 구분 = 참조 키 머리 · [옵션] 없음(넣을 값은 승격 때 고정)
- 줄 상세 — 단가승격 = 원 로직 키 + 원 로직 표 + 기준(1 단위) · 사전조합 = 안 줄 목록 한 층(구분 · 이름 · 수량 · 금액 넷) + 기준 · 아래 반영 합
- 문서 정리 · 보기 패널 · 다이어그램이 참조 줄을 받음(다이어그램은 단가산출 줄만)
- 시험: 승격 줄 원 로직 · 표 · 사전조합 안 줄 · ui_checks 50-3-4 시나리오(목록 · calc 는 탭 안 가짜 · 공유 마스터 안 씀)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MgChuAcyBqUkhHMTXomQC7
2026-10-05 18:59:40 +09:00
eomsangdonandClaude Opus 5.5 7e24c5aaec Merge origin/sub_laptop_7 (50-3 ①②⑤ 서고 서버) into sub_laptop_2
- 충돌 M02_Labor_Doc.calc — sub7 run_line 을 취하고 50-4 「줄」 실음을 run_line 으로 옮김
- 단가승격 펼침 · 참조 줄 답에 원 로직 키 · 「줄」 실음(50-3 ④ 줄 상세용)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MgChuAcyBqUkhHMTXomQC7
2026-10-05 18:53:01 +09:00
eomsangdonandClaude Opus 5.5 9ee6c9f3fd feat(M02): 50-3 ①②⑤ 일위대가 조합 서고 서버 — 단가승격 SP · 사전조합 SC · 참조 펼침 · 굳힘
- 층 양식 길 새 종류 promote · precombo(키 = 파일 이름 · 층마다 다음 번호) · 새로 · 복사 길 POST /layers/{층}/library/{종류}
- 참조 {층 · 주인 · 키} — 위 층만 · 같은 참조 두 번 400 · 순환 422 · 쓰는 곳 있으면 지우기 409(모든 층 일위대가 · 사전조합 훑음)
- calc 가 참조 줄 펼침(재귀 · 캐시 · 깊이 상한 8 · 까닭) · 알약 키 「참조|층|주인|키」 · 분모 = 가리킨 문서 단위 · 배 1 · settle TS 짝 lineId
- 층 사이 복사 = 못 읽는 참조 같이 복사(본뜬) · 프로젝트 가져오기 = 참조사본으로 굳힘 · 로직 지우기 검사에 단가승격 더함 · 새 프로젝트 씨앗은 서고 뺌
- 시험 test_m02_labor_ref.py(펼침 · 순환 · 층 규칙 · 409 · 복사 · 굳힘 · 거울)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
2026-10-05 18:47:02 +09:00
eomsangdonandClaude Opus 5.5 027ad3da98 feat(M02): 50-3③ 서고 새로 · 복사를 서버 키 길로 — POST /layers/{층}/library/{종류} · 참조 줄 보존
- 새로 = 서버가 그 층 다음 SP · SC 키 · 복사 = 본뜬 원본 → 고른 이름으로 고쳐 씀
- 일위대가 문서 줄의 참조 {층, 주인, 키} 를 화면 캐시에서 안 버림 · 로직 입력 받기에서 참조 줄 건너뜀

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
2026-10-05 18:45:01 +09:00
eomsangdon 897083893c Merge remote-tracking branch 'origin/sub_laptop_2' into sub_laptop_6 2026-10-05 18:42:50 +09:00
eomsangdonandClaude Opus 5.5 b1a5f38a16 feat(M02): 50-3③ 일위대가 조합 서고 화면 틀 — 좌측 컨테이너 · 단가승격 · 사전조합 목록 · 상세 서고 모드
- 구조물 조합 아래 「일위대가 조합」 컨테이너 · 층 단추(진입 open=일위대가조합) · 새로 · 복사 · 지우기
- 단가승격 새로 = 로직 고르기 → SP- 키 저장 · 사전조합 새로 = 이름만 → SC- 키
- 상세 = 일위대가 상세 서고 모드(이름 칸 · 로직 표 · 원문만 · 자재 · 면적 · 다이어그램 없음)
- 낡은 글 찾기 시험 셋을 지금 코드에 맞춤

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
2026-10-05 18:42:50 +09:00
eomsangdonandClaude Opus 5.5 7b28cb42d3 feat(M02): 50-4 일위대가 줄 누르면 표 아래 상세 · 구분 열
- 서버 calc 답 줄마다 그 로직 재료 · 노무 · 경비 「줄」 실음(버리던 것)
- 상세 · 카드 표 줄 누름 = 표 아래 M01 시험계산 표(answerView 다시 씀) + 반영 합 · 한 줄만 · 같은 줄 다시 누름 = 닫힘
- 이름 왼쪽 「구분」 열 — 키 머리에서 읽음(SP- 단가승격 · SC- 일위조합 · 그 밖 단가산출 · 저장 안 함)
- 시험: 줄 실림 · 합 = 기준 · ui_checks 50-4 시나리오

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MgChuAcyBqUkhHMTXomQC7
2026-10-05 18:41:23 +09:00
eomsangdonandClaude Sonnet 5.5 28f399bc2d feat(M02): 면적산출 알약 · 보낸 범위 표시 — 도면 보낸 범위 점선 + 이름표 · 칸 고르면 알약 강조 · 남은 알약 ⚠ + ×
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W4uKaV4ZBhsJN4GHG7yRj4
2026-10-05 18:40:05 +09:00
eomsangdon 6438a9858b Merge remote-tracking branch 'origin/dev' into sub_laptop_2 2026-10-05 16:39:19 +09:00
eomsangdonandClaude Sonnet 5.5 72881c20e7 feat(M02): 49-8 구조물 조합 찾기 칸 없앰 — 분류 표 · 카드가 위로 붙음
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MgChuAcyBqUkhHMTXomQC7
2026-10-05 16:38:40 +09:00
eomsangdon 8210cf16a3 Merge remote-tracking branch 'origin/dev' into sub_laptop_1 2026-10-05 16:34:16 +09:00
eomsangdonandClaude Sonnet 5.5 4ff81f43f1 feat(M02): 49-7 상세 셋(도면 · 일위대가 · 면적산출) 머리 제목 옆 [?] 도움말 — 카드와 같은 글 한 벌 · 상세 전용 줄(파일 불러오기 · 도면으로 보내기 · 돌아가기) 더함
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
2026-10-05 16:33:40 +09:00
eomsangdonandClaude Sonnet 5.5 ff85704a05 feat(M02): 49-6 구조물 조합 일위대가 카드 자재목록 [자재 추가] 숨김 — 상세는 그대로
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MgChuAcyBqUkhHMTXomQC7
2026-10-05 16:32:02 +09:00
eomsangdonandClaude Opus 5.5 f0745f714d test(M02): 48-2 정의 화면 시나리오 · 종류 줄 · 배치 줄 안 접힘 · 48-1 시나리오 새 화면 고름
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
2026-10-05 16:22:25 +09:00
eomsangdonandClaude Opus 5.5 4b79e7f39c feat(M02): 48-2 지난 판 목록 · 한 벌 읽기 길 · 정의 화면 시험
- GET /api/m02/structure-definition/history · /history/{판}(로그인 누구나 · 없는 판 404)
- 화면이 만드는 고침 한 벌을 서버가 받음 · 판 +1 · 403 · 422 시험(사본 정의)
- 옛 옵션 보이기 · 그룹 시험의 화면 글 검사를 정의 화면 자리로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
2026-10-05 16:17:00 +09:00
eomsangdon ef6faaaf20 Merge remote-tracking branch 'origin/sub_laptop_7' into sub_laptop_1
# Conflicts:
#	M02_MasterTemplete/StructOptions/M02_SO_Api.ts
#	M02_MasterTemplete/StructOptions/M02_SO_Options.ts
2026-10-05 16:15:27 +09:00
eomsangdonandClaude Opus 5.5 8ca2f1cd6e feat(M02): 48-2 구조물 옵션 정의 편집 화면 — 군 · 종류 · 옵션 · 선택지 · 배치 격자 · 그룹 형상 · 규칙 · 판 이력
- 옛 「옵션 보이기 · 그룹」 화면을 정의 편집 화면으로 넓힘(시스템 관리자 고쳐 씀 · 다른 역할 읽기만)
- 자료 손질 = M02_SO_Def_Model.ts(정의 틀 48-1 꼴) · 시험 test_m02_so_def_model.py

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016PSXsvyDxjNmufteN5bqmt
2026-10-05 16:15:10 +09:00
eomsangdonandClaude Opus 5.5 bf1fa50817 feat(M02): 48-1 구조물 정의 한 벌 — 정의 틀 문서 · 판 1 옮김 · 읽기 길
- 정의 틀 = docs/raw/M02_구조물옵션정의/정의_틀.md (담는 것 · 키 규칙 · 꼴 · 배치 · 그룹 형상 · 규칙 · 동작 · 판 이력)
- resources/master_template/구조물정의.json 판 1 = 옛 B05 레지스트리(37종 · 옵션 235) + 옵션표시 + 옵션그룹 키 그대로 옮김
- GET /api/m02/structure-definition(로그인) · PUT(시스템 관리자만 · 판 +1 · 이력 판_N) · 검사(꼴 · 키 겹침 · 규칙 대상)
- GET /structure-types · B05 구조물 검사가 새 정의를 읽음(응답 꼴 그대로) · 옵션 보이기 · 그룹 저장도 정의 칸으로
- 프로젝트 structures.json 에 저장 때 정의 판 · 정의에 없는 키 값은 남김(오류 없음)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EYJJRCfHfdCGNhmXTjQKV7
2026-10-05 16:09:33 +09:00
eomsangdon 5884c7f0bd Merge remote-tracking branch 'origin/sub_laptop_3' into main_laptop_1
충돌(DrawingCard.ts) = 47-6 mountStructure 한 벌을 취하고 47-2 noImport 를 그 안에 옮김
2026-10-05 13:49:13 +09:00
eomsangdon 78f436b136 Merge remote-tracking branch 'origin/sub_laptop_2' into main_laptop_1
시험 충돌(test_m02_card_shell.py) = 47-1 · 47-2 시험과 47-5 시험 둘 다 남김
2026-10-05 13:48:45 +09:00
eomsangdon 26399f0dd8 Merge remote-tracking branch 'origin/sub_laptop_2' into sub_laptop_3 2026-10-05 13:47:53 +09:00
eomsangdon 03c13dacf7 Merge remote-tracking branch 'origin/main_desktop_1' into sub_laptop_3 2026-10-05 13:47:52 +09:00
eomsangdonandClaude Opus 5.5 fff2845117 feat(M02): 47-6 면적산출 상세 오른쪽 = 공용 접는 패널 둘(일위대가 · 도면)
- 옛 접기 손잡이 · 폭 손잡이 · 사이드바 카드 틀을 공용 오른쪽 접는 패널(47-3)로 갈음 — 하나만 열림 · 폭 공유 · 모두 접힘
- 「도면」 패널 = 그 열 구조물 도면 보기만(확대 · 이동) · 처음 펼 때 읽고 그림
- DrawingCard 미리보기 한 벌(mountStructure)을 카드 · 도면 패널이 같이 씀
- 시험: test_m02_structure_panel 기대를 공용 패널로 · ui_checks/47-6 시나리오

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01W4uKaV4ZBhsJN4GHG7yRj4
2026-10-05 13:47:07 +09:00
eomsangdon ecccaa2a33 Merge remote-tracking branch 'origin/main_desktop_1' into sub_laptop_2 2026-10-05 13:46:47 +09:00
eomsangdonandClaude Opus 5.5 66cb7afbab feat(M02): 47-4 일위대가 상세 오른쪽 「원문」 접는 패널 — 고른 줄 로직의 품셈 원문
- 공용 오른쪽 접는 패널(ui_template_side_panels · 47-3 부품) · 취향 키 m02-labor-side · 카드 갈래엔 없음
- 고른 줄 없음 = 안내 한 줄 · 고르면 그 로직 출처 원문(GET /m01/logic/source)
- 원문 보기를 M01_MasterData_UI_LogicLab_Source 로 떼어 M01 로직 상세와 한 벌로 씀(M01 동작 그대로)
- 입력 목록 길(GET /m02/logic-lib/inputs)에 로직 출처 칸 추가
- 시험: test_m02_labor_values 출처 확인 · 화면 시나리오 ui_checks/47-4_일위대가_원문패널.js

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MgChuAcyBqUkhHMTXomQC7
2026-10-05 13:45:53 +09:00