Commit Graph
4855 Commits
Author SHA1 Message Date
eomsangdon 165901d58d Merge remote-tracking branch 'origin/sub_laptop_6' into sub_laptop_4 2026-09-28 16:09:19 +09:00
eomsangdonandClaude Opus 5.5 eed7ffaf42 feat(cad): 구조물 도면 미리보기 좌측 패널은 접힌 채로 엶 · 리본 접힘 모드에서 탭으로 편 리본은 밖을 누르면 다시 접힘
- M02 미리보기: 특성 · 도면층 패널을 숨기던 스타일에서 .cad-inspector 뺌 · load 곁값 panelsCollapsed: true 로 접힌 채 시작(› 누르면 펼침)
- cad_host CadLoadExtra · 다리에 panelsCollapsed 칸 · B07 은 안 보냄 = 지금처럼 펼침
- 좌측 패널 접힘 상태를 ui-state 로 옮김
- 리본: 접힘 모드에서 탭 = 도면 위에 겹쳐 잠깐 펼침 · 리본 밖 누름 = 다시 접힘 · 접기 단추 = 고정 펼침

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EUypcnp5d1gU2aeKh9F2H7
2026-09-28 16:08:57 +09:00
eomsangdonandClaude Sonnet 5 15715c2bda feat(spreadsheet): C 격자 — 엑셀 「자동」 색(검정 글 · 검정 선 · 흰 채움)이 테마를 따름
엑셀에서 붙여넣은 칸의 글자색 #000000 · 테두리색 검정이 저장돼 어두운 테마에서 검정 글이
안 보이던 문제. 그릴 때만 「자동」으로 봄(저장 값은 그대로).
- 글자색 · 테두리색: #000 · #000000 · #FF000000 · rgb(0,0,0) · black · windowtext · auto →
  테마 글자색(--aislo-grid-fg) 을 따름
- 채움: #fff · #ffffff · white · window → 채움 없음(테마 바탕이 비침)
- 다른 색(#c00000 · #FFFF00 · #1F3864 등)과 조건부 서식 색은 그대로
- 테두리 기본색을 currentColor 에서 --aislo-grid-fg 로 — 글자색이 빨강이어도 선은 자동색
- 숫자 형식 [Black] 색도 자동으로 봄

ORCA(시험 틀 · localhost:5181 과 100.72.32.27:5181 둘 다) — 밝은: 자동 칸 글 rgb(51,51,51) ·
바탕 rgb(255,255,255) · 선 rgb(51,51,51). 어두운: 글 rgb(228,224,240) · 바탕 rgb(37,31,56) ·
선 rgb(228,224,240). 지정색 칸(#c00000 글 · #FFFF00 채움 · #0000FF 선 · #1F3864 · #D9E1F2)은 두
테마에서 값 그대로. 붙여넣기 쪽은 안 바꿔도 됨(저장 값 그대로 두고 그릴 때만).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VVM3xZ1aUPcUTuW2WZSnwg
2026-09-28 16:01:21 +09:00
eomsangdon fa572cd0b7 Merge remote-tracking branches 'origin/sub_laptop_1' and 'origin/sub_laptop_2' into main_laptop_1 2026-09-28 15:47:42 +09:00
eomsangdonandClaude Sonnet 5 ac83e1b550 feat(M02): 집계표 아래 카드 — 도면 정보 · 면적산출 · 재료산출 3열 같은 폭 · 카드 최소 300px 아래로 좁으면 2열 → 1열 자동
- grid auto-fit/minmax 한 규칙 · 도면 정보 전체 폭 고정 제거 · 높이는 통일 변수 그대로

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
2026-09-28 15:37:58 +09:00
eomsangdonandClaude Opus 5.5 ec41d50d92 fix(A00·B07 CAD): http + IP 주소(Tailscale)에서 CAD 가 죽던 것 — crypto.randomUUID 대체
보안 문맥이 아닌 http + IP 에서는 crypto.randomUUID 가 없어 CAD 개체 만들기에서 멈춤.
앱 본체(A00_Common/main.ts)와 CAD(openwebcad/src/main.tsx) 진입 맨 앞에서
getRandomValues 로 v4 UUID 를 채움 · 이미 있으면 그대로.
crypto.subtle(B03 지문) · serviceWorker(B03) 는 이미 없을 때 건너뜀 · navigator.clipboard 는 안 씀.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K7JS47SacjPxZ718QsZKyr
2026-09-28 15:37:22 +09:00
eomsangdonandClaude Sonnet 5 fedc860365 feat(M02): 집계표 아래 카드 — 도면 정보 CAD 높이 = 면적산출 · 재료산출 표 높이(한 값 · 창 높이에 맞춰 함께 변함)
- 세 카드 내용 높이를 CSS 변수 하나(clamp 18rem · 60vh · 40rem)로 통일 · 한 줄씩일 때도 같음

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
2026-09-28 15:36:05 +09:00
eomsangdonandClaude Sonnet 5 93c817658a feat(M02): 집계표 아래 카드 — 창 크기에 맞춰 자동 분할(두 열 최대 · 카드 최소 360px) · 카드 높이도 창 높이에 맞춤
- 칸 폭 728px 이상이면 면적산출 · 재료산출 반반 · 그보다 좁으면 한 줄에 하나씩 · 창 크기를 바꾸면 바로 반영
- 미리보기 · 표 높이를 창 높이 비율(clamp)로 · 작은 창에서 카드가 화면을 다 먹지 않게

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
2026-09-28 15:28:49 +09:00
eomsangdonandClaude Sonnet 5 73040246ae feat(M02): 집계표 아래 카드 — 면적산출 · 재료산출 두 카드 + 간격이 도면 정보 폭과 같음 · 카드 최소 폭 520px
- grid auto-fit/minmax 한 규칙 · 카드 하나가 520px 안 되면 한 줄에 하나씩(각각 도면 정보와 같은 전체 폭)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
2026-09-28 15:13:12 +09:00
eomsangdonandClaude Opus 5.5 c608b9554f test(M02): 구조물 번호 시험이 실제 구조물집계표 대신 견본 표를 읽음
- 사용자가 화면에서 제목 · 열을 고쳐도 번호 시험이 안 밀림 · 번호 규칙 시험은 그대로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EUypcnp5d1gU2aeKh9F2H7
2026-09-28 14:52:52 +09:00
eomsangdonandClaude Opus 5.5 ec8812e829 Merge remote-tracking branch 'origin/main_laptop_1' into sub_laptop_2 — 사용자 열 c2~c5 살림
- 구조물집계표.json 충돌: 이쪽 4칸 제목(분류 없는 열 빈칸)을 바탕으로 사용자 열 c2~c5 를 사용자 자리 · 값 그대로 넣음 · rv · c1 제목 · 열 너비(h_soil_ditch)도 사용자 것
- 번호: c2 SD15010000 · c3 SD02010600 · c4 SD01010101 · c5 SD01020000(Store 규칙과 맞음 · 파일 셋씩 · 셋 같은 8자리)
- area/rv.json 사용자 것 그대로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
2026-09-28 14:43:57 +09:00
eomsangdon 7b62305e12 Merge remote-tracking branch 'origin/sub_laptop_8' into main_laptop_1 2026-09-28 14:41:14 +09:00
eomsangdon 2388d02da9 Merge remote-tracking branch 'origin/sub_laptop_1' into main_laptop_1 2026-09-28 14:41:13 +09:00
eomsangdon 3660924f80 auto: 2026-09-28 14:40 (ESD_LAPTOP) 2026-09-28 14:40:18 +09:00
eomsangdonandClaude Opus 5.5 789b62be9d fix(M02): 집계표 [저장] 뒤 새 열 도면 정보가 안 열리던 것 — 번호 다시 받고 카드 새로
- 원인: 새 열은 [저장] 때 서버가 구조물 · 면적산출 · 재료산출 파일과 번호를 만드는데 화면은 번호 목록을 처음 한 번만 받음 · 같은 열을 다시 고르면 카드를 안 다시 읽어 「도면 없음」 · 번호 빈칸이 다시 열 때까지 남음
- [저장] 뒤 번호 다시 받기 · 도면 · 면적산출 · 재료산출 줄 다시 그림 · 보던 열 카드 다시 읽음
- 같은 열을 다시 고르면 이름만 새로(머리 고친 열)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
2026-09-28 14:39:39 +09:00
eomsangdonandClaude Opus 5.5 ccd9bc89c7 feat(M02): 집계표 아래 카드 — 도면 정보 한 줄 전체 · 면적산출 · 재료산출 나란히 두 열
- 좁은 화면(카드 폭 30rem 안 됨)에서는 한 열

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
2026-09-28 14:29:20 +09:00
eomsangdonandClaude Opus 5.5 3869852d3d chore(tools): 오토캐드 WEBCLIP LISP 지움 — 별도 설치 없이 WBLOCK·DXFOUT 파일 끌어다 놓기로 바꿈
끌어다 놓기 길(서버 /api/projects/dxf-clip/file · CAD 흐린 테두리 · 안내 글)은 8ebb5532(auto:)에 함께 올라감.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K7JS47SacjPxZ718QsZKyr
2026-09-28 14:27:56 +09:00
eomsangdon 1d35254c90 Merge remote-tracking branch 'origin/sub_laptop_8' into sub_laptop_2 2026-09-28 14:26:15 +09:00
eomsangdon 17e0e92604 Merge remote-tracking branch 'origin/dev' into sub_laptop_2 2026-09-28 14:26:14 +09:00
eomsangdonandClaude Opus 5.5 f33fa9dac0 feat(M02): 구조물집계표 분류 없는 열도 제목 4칸(종류 · 분류1 · 분류2 · 분류3)
- 소단 · 대피소 · 폐기물처리 등 머리 한 칸 열 · 세월교 · 골막이 · 기타 · 돌붙임 — 세로로 합치던 빈 층을 각각 빈칸으로(빈값 = 분류 없음)
- 글 열(NO · 측점 · 비고)은 그대로 합침 · 번호(도번 · 면적번 · 재료번)는 빈칸도 00 으로 읽어 그대로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
2026-09-28 14:26:06 +09:00
eomsangdonandClaude Sonnet 5 a927ae64bc feat(spreadsheet): 엑셀 수식 복사 안내 · 값만 온 붙여넣기 세션 알림
- 도구 모음 오른쪽 끝에 흐린 글씨 안내 추가 — 「엑셀 수식까지: 엑셀에서 Ctrl+`
  → 복사 → 여기 Ctrl+V · 끝나면 엑셀 Ctrl+` 다시」 · 누르면 왜 그런지 두세 줄
  설명(엑셀 Ctrl+` = 「수식 표시」 켜기 · 그 상태로 복사해야 수식이 실림 · 그냥
  복사하면 값만 옴 · 붙인 뒤 엑셀에서 Ctrl+` 다시 눌러 원래대로)
- 도구 모음은 readOnly 면 안 붙는 기존 길을 그대로 써 보기 전용 카드에서는
  자동으로 숨음(새 분기 없음)
- 엑셀 HTML 붙여넣기(출처: "excel")인데 뭉치 전체에 식이 하나도 없으면 세션에
  한 번만 토스트 — 「값만 들어왔음 — 수식까지는 엑셀 Ctrl+` 뒤 복사」
  (sessionStorage 로 한 번 표시 기억 · 못 쓰면 매번 뜰 수 있으나 치명적이지 않음)
- ORCA 로 확인 — 안내 글 그대로 보임 · 눌러 설명 펼침/접힘 · 식 없는 엑셀
  붙여넣기 첫 번은 토스트 뜨고 세션 안 지운 채 두 번째는 안 뜸 · 식이 있으면
  (「=A1+B1」) 애초에 안 뜸 · 기존 클립보드 회귀 시험(TSV) 통과

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AeeQRLknEpP4SFjVkjDWDs
2026-09-28 14:24:04 +09:00
eomsangdon 8ebb553259 auto: 2026-09-28 14:23 (ESD_LAPTOP) 2026-09-28 14:23:39 +09:00
eomsangdon 1b229fa4a7 Merge remote-tracking branches 'origin/sub_laptop_1' and 'origin/sub_laptop_8' into main_laptop_1 2026-09-28 13:58:09 +09:00
eomsangdonandClaude Sonnet 5 c5ad429dc3 fix(spreadsheet): 회계 형식 따옴표 CSS 유니코드 이스케이프(\0022) 안 풀리던 것 고침
- 사용자 실제 엑셀 견본(resources/tester/spreadsheet/fixture_excel_user_won.html,
  origin/main_desktop_1)으로 붙여넣기 시험 중 회계류 형식(예: `.xl126`)의
  `\0022` — 진짜 CSS 유니코드 이스케이프(16진 1~6 자리, 따옴표 `"` 를 이렇게
  실음) — 가 한 글자만 풀리고(`\0` → `0`) 나머지 `022` 가 그대로 남아 형식에
  글자 "0022" 가 끼던 것 발견 · `unescapeMsoNumFmt` 가 `\x` 한 글자 이스케이프
  앞에 `\` + 16진 1~6 자리 이스케이프를 먼저 찾게 고침
- 고친 뒤 회계 4구역 형식이 `_-* #,##0.00_-;\-* #,##0.00_-;_-* "-"??_-;_-@_-`
  처럼 온전히 들어옴(글자 "0022" 없음 · 남는 홑 역슬래시 없음 · ₩ 없음)
- ORCA 로 이 견본 통째 붙여넣기 확인 — 칸 133개 값 · 병합 9개 · Fixed·0·General·
  0% 이름 형식 그대로 넘김 · 「 =」(앞에 공백 있어 원래도 식 아님) · 「1식」·
  「3식」 글자 칸 모두 글로 남음(식으로 안 잡힘), 기존 회계 형식 견본 회귀 없음
- 수식 흔적(x:fmla) 없음 재확인 — 이 실 견본에도 x:str/x:num 만 있고 수식은
  칸 글 자체가 「=...」 로 시작하는 형태(HTML 클립보드엔 수식이 안 실림)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AeeQRLknEpP4SFjVkjDWDs
2026-09-28 13:45:41 +09:00
eomsangdonandClaude Opus 5.5 5fdd5f8a4e feat(tools): 오토캐드 WEBCLIP 명령(AutoLISP)
고른 개체만 DXFOUT(ASCII) → %TEMP%\aislo_webclip.dxf → PowerShell Set-Clipboard 로
파일 글을 클립보드 글로(LISP 로 읽으면 UTF-8 한글이 깨져서) → 명령줄에 「N개 복사됨 ·
웹 CAD 에서 Ctrl+V」. 설치(APPLOAD · 시작하기 세트)는 파일 머리 주석.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K7JS47SacjPxZ718QsZKyr
2026-09-28 13:44:48 +09:00
eomsangdonandClaude Opus 5.5 e3a9cb65d0 feat(B07 CAD): Ctrl+V 로 오토캐드 DXF 붙여넣기 · 오른쪽 위 WEBCLIP 안내
Ctrl+V 기본 동작을 막지 않아 paste 이벤트로 시스템 클립보드 글을 읽음 — DXF 면 서버에서
도형으로 바꿔 원좌표 그대로 붙이고 고른 상태로 둠(같은 이름 층은 기존 층 · 없는 층은 DXF
층 색으로 새로 · id 는 모두 새로). DXF 가 아니면 앱 안 클립보드 붙여넣기(PASTECLIP).
볼 수만 있는 도면은 안 붙임. 캔버스 오른쪽 위 흐린 안내 「오토캐드에서 WEBCLIP → 여기서
Ctrl+V」 · 누르면 설치 한 줄(보기 전용이면 숨김 · B07 · M02 양식 둘 다).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K7JS47SacjPxZ718QsZKyr
2026-09-28 13:44:48 +09:00
eomsangdonandClaude Opus 5.5 be4f3d33ac feat(B07): 클립보드 DXF 글을 웹 CAD 도형으로 바꾸는 서버 길
오토캐드 WEBCLIP 이 클립보드에 넣은 DXF 글을 받는 POST /api/projects/dxf-clip 추가
(프로젝트 무관 · M02 양식도 씀 · 저장 안 함). 변환은 기존 도각 불러오기 엔진을 그대로 쓰고
dxf_text_to_entities 만 더함 — 엔티티 layerId 는 DXF 도면층 이름 그대로 · 쓰인 층 이름과
층 색을 함께 돌려줌. 시험 = 견본 DXF(선 · 폴리선 · 원 · 글 · 도면층 둘) 3건.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01K7JS47SacjPxZ718QsZKyr
2026-09-28 13:44:47 +09:00
eomsangdon 289daf899a Merge remote-tracking branches 'origin/main_desktop_1' and 'origin/sub_laptop_5' into sub_laptop_8 2026-09-28 13:41:03 +09:00
eomsangdon fa01245b8b Merge remote-tracking branch 'origin/dev' into sub_laptop_8 2026-09-28 13:41:02 +09:00
eomsangdonandClaude Opus 5.5 8739027872 test(spreadsheet): 엑셀 칸 범위 복사 원본 fixture(HTML·글)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017cTe8U3dnigRfEmiscHHpp
2026-09-28 13:39:56 +09:00
eomsangdonandClaude Sonnet 5 41a717f62b fix(spreadsheet): 형식 끝·구역 나눔 앞 홀로 남은 역슬래시가 ₩ 로 보이던 것 고침
브레인이 증거로 찾은 rv.json(사용자 붙여넣기 저장분)의 형식 문자열이 끝에
역슬래시 하나만 남아(`_-* #,##0.00_-\` 등) 있었음 — 엑셀 mso-number-format
의 `\;`(구역 나눔 이스케이프) 자르기가 깨진 자투리. numfmt 가 이 홀로 남은
역슬래시를 글자로 찍었고 굴림 등 한글 글꼴은 역슬래시(0x5C)를 ₩ 모양으로
그려 사용자 화면에 ₩ 가 붙어 보였음. 세 자리(splitSections · tokenize ·
detectDateFormat)에서 ① 형식 끝에 다음 글자가 없는 역슬래시 ② 구역 나눔
`;` 바로 앞 역슬래시를 모두 버림(뒤 `;` 는 그대로 나눔으로 처리)으로 고침.
이미 저장된 rv.json 의 13 곳도 자투리 역슬래시를 지움. 사용자 견본값
2.20 · 1.70 · -6.82 로 회귀 시험 세 건 더함 — 시험 196건 전부 통과.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RrQ65VtGZbae2VKgYVMhmc
2026-09-28 13:39:50 +09:00
eomsangdonandClaude Opus 5.5 137796158b chore: 남은 엑셀 잠금 파일 2개 저장소에서 뺌
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017cTe8U3dnigRfEmiscHHpp
2026-09-28 13:37:41 +09:00
eomsangdonandClaude Sonnet 5 e0f9df9ba9 fix(spreadsheet): 엑셀 회계 숫자 형식 끝 역슬래시 남던 것 고침
- mso-number-format 처럼 값 안에 이스케이프된 `\;`(구역 나눔 자리표시, 회계·통화
  형식처럼 구역이 여럿인 형식에 흔함)를 선언 나눔 `parseStyleAttr` 가 진짜 `;`
  로 착각해 값을 그 자리서 잘라 버리던 것 고침 — `\` 뒤 글자는 통째로 건너뛰고
  이스케이프 안 된 `;` 에서만 나누는 `splitDecls` 로 바꿈
- 잘리면 값 끝에 역슬래시 하나만 남고 뒤 구역이 통째로 날아가던 것(사용자 저장본
  material/rv.json 서식 형식 끝 '\' 로 나타남)이었음 — 고친 뒤 4구역 회계 형식
  (양수·음수·0·글자)이 통째로 살아 들어옴
- resources/tester/spreadsheet/fixture_excel_accounting_fmt.html 새 견본으로
  ORCA 실 엔진 확인 — 형식이 `_-* #,##0.00_-;-* #,##0.00_-;_-* "-"??_-;_-@_-`
  로 온전히 들어옴(역슬래시 없음), 기존 fixture_excel_style_paste.html 회귀
  없음 확인
- 수식 흔적(x:fmla) 확인 — 기존 견본엔 x:str/x:num 만 있고 x:fmla 없음(수식 칸도
  x:str 이 `=...` 글 그대로 담아 기존 「=」 앞머리 잡기로 이미 됨). 사용자 실제
  클립보드 견본(main_desktop_1)은 아직 안 옴 — 오면 그걸로 다시 봄

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AeeQRLknEpP4SFjVkjDWDs
2026-09-28 13:35:18 +09:00
eomsangdonandClaude Opus 5.5 b98fbccdd0 fix(spreadsheet): 크기 예산 합 128 KB — 엔진 48 · 화면 72 · css 8 KB(사용자 지시)
- 계약 머리 주석 · 크기 시험 숫자 같이 올림 · 지금 크기 엔진 31.5 · 화면 28.8 · css 2.9 KB(합 63.2 KB)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
2026-09-28 13:30:50 +09:00
eomsangdon 91cc795102 Merge remote-tracking branches 'origin/main_laptop_1' and 'origin/sub_laptop_5' into sub_laptop_2 2026-09-28 13:29:02 +09:00
eomsangdon 7eacf332ee auto: 2026-09-28 13:28 (ESD_LAPTOP) 2026-09-28 13:28:17 +09:00
eomsangdonandClaude Sonnet 5 c4edc751be fix(spreadsheet): 회계 0 구역 '?' 자리 빈칸 처리 · 통화 로캘 태그 대조 확인
브레인이 짐작한 [$-412](로캘만 · 기호 없음) 이 통화 기호로 잘못 바뀌는지
여러 실제 꼴(단순 태그·회계 네 구역·접두/접미 위치)로 대조해 봤으나 지금
코드는 이미 옳게 기호를 안 보임(회귀 시험으로 고정). 그 김에 회계 0 구역의
`"-"??` 관용구가 진짜 0 값에서 정수부 `?` 를 「0」 으로 채우던 것을 고쳐
엑셀처럼 빈칸으로 보이게 함. 사용자가 보고한 ₩ 는 이 두 경로로는 재현이
안 돼 — main_desktop_1 의 fixture_excel_user_won.html 이 아직 안 와서
실제 원문으로는 대조 못 함(오면 바로 대조).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RrQ65VtGZbae2VKgYVMhmc
2026-09-28 13:15:24 +09:00
eomsangdon a268859540 Merge remote-tracking branch 'origin/dev' into main_desktop_1 2026-09-28 13:10:12 +09:00
eomsangdonandClaude Opus 5.5 bb0bd97c84 chore: 엑셀 잠금 파일 무시 규칙 더함
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017cTe8U3dnigRfEmiscHHpp
2026-09-28 13:10:05 +09:00
eomsangdonandClaude Opus 5.5 d1f627ea31 chore: 엑셀 잠금 파일 저장소에서 뺌
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017cTe8U3dnigRfEmiscHHpp
2026-09-28 13:09:46 +09:00
eomsangdonandClaude Opus 5.5 b813de897f fix(M02): 식 없는 계산 열(pv_a · pv_jt · pp_cp)은 빈 값 — 줄눈 간격 줄 식도 열 식이 있을 때만
- 값은 면적산출 알약 연결로 받음(PLAN 13장) · 표 채우기 시험을 새 규칙으로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EUypcnp5d1gU2aeKh9F2H7
2026-09-28 12:47:09 +09:00
eomsangdonandClaude Opus 5.5 023c5838c4 refactor(M02): Api_Fetch 옛 이름 별칭 지움 — copyBasis · 표번 · Kind basis
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EUypcnp5d1gU2aeKh9F2H7
2026-09-28 12:47:09 +09:00
eomsangdon 0ca69fbc47 Merge remote-tracking branches 'origin/sub_laptop_2' and 'origin/sub_laptop_8' into sub_laptop_4 2026-09-28 12:45:10 +09:00
eomsangdonandClaude Opus 5.5 b60c10e73e feat(M02): 집계표 카드 = 도면 정보 · 면적산출 · 재료산출 · 편집 화면 알약 막대
- 집계표 아래 카드 셋(보기 + [수정] → 전체 편집) · 번호 = 도번 · 면적번 · 재료번
- 면적산출 · 재료산출 줄 조회 후 선택 = 다른 열 것 복사해 가져오기(copyArea · copyMaterial · 덮어쓰기 확인)
- 면적산출 · 재료산출은 표(스프레드시트) 편집 화면으로 엶(좌측 줄 · 카드 [수정] 둘 다 · 옛 CAD 로 뜨던 것 고침)
- 알약 막대 — 면적 = 그 열 일위대가 입력값(fetchComboInputs · 없으면 안내 글) · 재료 = 자재DB 찾기(searchMaterials)
- 옛 산출근거 이름(표번 · copyBasis) 안 씀

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019Kyw9qnkJ94pC1A4PfpDtA
2026-09-28 12:16:25 +09:00
eomsangdon 9ae91ea5da Merge remote-tracking branch 'origin/sub_laptop_3' into sub_laptop_2 2026-09-28 12:13:16 +09:00
eomsangdonandClaude Opus 5.5 ba91e9e63d feat(M01): fetchComboInputs · searchMaterials 알약 자료 함수
- fetchComboInputs(조합 코드) → {키, 이름, 물량: [{키, 이름, 단위, 로직, 배?}], 조건}
- searchMaterials(글) = /pick?kind=price 감쌈 → [{코드, 이름, 규격, 단위}]

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TULoa94ZFL26KU6ZqVpjkF
2026-09-28 12:11:49 +09:00
eomsangdonandClaude Opus 5.5 32d73aa2c9 feat(M01): 조합 알약 물량 길 GET /combo/{키}/inputs
- 담은 로직 결과단위 분모(원/㎥ → ㎥)가 물량 하나 · 설계 조건은 안 넣음(조건 자리만)
- 이름 = 로직 이름 끝 괄호 뗀 것 · 같은 이름·단위는 합침 · 원/10㎡ 은 배 10
- 시험 test_m01_combo_inputs.py(UA000004 · 031 · 002 · 없는 조합 404)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TULoa94ZFL26KU6ZqVpjkF
2026-09-28 12:11:49 +09:00
eomsangdon 14092e715b Merge remote-tracking branch 'origin/sub_laptop_7' into sub_laptop_2 2026-09-28 12:11:09 +09:00
eomsangdon 017d559401 Merge remote-tracking branch 'origin/sub_laptop_4' into sub_laptop_2 2026-09-28 12:09:33 +09:00
eomsangdonandClaude Opus 5.5 5de2f75828 test(spreadsheet): D 알약 연결 — 행열 따라가기 · 되돌리기 규칙 시험 · 시험 틀(harness_links)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L6KXAabDTenEU7hrDQmCKY
2026-09-28 12:09:33 +09:00