Commit Graph
9472 Commits
Author SHA1 Message Date
eomsangdonandClaude Opus 5.5 83d38681df fix(530-2): D 분석 지점 0.1 mm 반올림 — 노선 끝점 = 지점 · 연도 경계 정확히 맞물림 · 복도 300 m 실측 근거 주석
- 엔진 출력 자리수(4)로 지점을 맞춰 넣음 · 저장본 지점 대조 1 mm
- 실측(검증_sub3 근처 두 구간): 복도 100 · 200 · 300 m 못 지킨 곳 5 · 8 · 1

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:47:30 +09:00
eomsangdon e250e0fde0 Merge remote-tracking branch 'origin/sub_laptop_2' into sub_laptop_3 2026-10-25 19:39:50 +09:00
eomsangdonandClaude Opus 5.5 eefc241ba4 chore(merge): dev 받기 — 528 공통 백엔드 · DB 020 · main.py 라우터 import 충돌 풂(D01 · D03 · E01 모두 살림)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:39:38 +09:00
eomsangdonandClaude Opus 5.5 a08dd82112 feat(529-1): D01 예정노선 등록 · E01 안정성평가 만들기 화면
- D01 칸: 사업연도 시작 · 끝 · 사업지역 · 종류 「노선 계획」 고정 · 임도 종류(B02 값) · 설계속도(종류별 고를 값 · 기본 최저 = resolve_design_speed) · 프로젝트명(B02 이름 조합기 · 연도 자리 「시작~끝」) · 노선 시작 · 종료 누가거리 · 도면 칸 없음
- E01: 대상 임도(source-candidates = B06 완료만) · 이름(손대기 전 「원본 이름 안정성평가」)
- [등록] = POST /api/d01/project · /api/e01/project → 현재 프로젝트 · 첫 단계(D02 · E02) · 공용 createGroupProject
- 설계속도 선택지 = B05 SPEED_CHOICES(파이썬 거울 시험 있음) · 모양 = B02 등록 CSS 그대로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:39:20 +09:00
eomsangdon 61c3d66d23 Merge remote-tracking branch 'origin/안티그래비티' into sub_laptop_3 2026-10-25 19:39:03 +09:00
eomsangdon 76a8752b0b Merge remote-tracking branch 'origin/sub_laptop_8' into sub_laptop_3 2026-10-25 19:39:02 +09:00
eomsangdon 545701604a Merge remote-tracking branch 'origin/sub_laptop_6' into sub_laptop_3 2026-10-25 19:39:01 +09:00
eomsangdon cdfcd09604 Merge remote-tracking branch 'origin/sub_laptop_4' into sub_laptop_3 2026-10-25 19:39:01 +09:00
eomsangdon 5d5e8d4849 Merge remote-tracking branch 'origin/sub_laptop_2' into sub_laptop_3 2026-10-25 19:39:00 +09:00
eomsangdonandClaude Opus 5.5 17534a01ad feat(530-1 · 530-2): D 예정노선 지형 받기 · 2단계 분석 서버 — B05 엔진 인자 셋(models_dir · cache_dir · 복도 반폭) · D03 지형 서비스 · 분석 · API
- B05 지형 로더 models_dir · cache_dir=None · 비용면 cache_dir=None · 탐색 복도 corridor_m(기본 100 m · 기본이면 묶음 열쇠 그대로)
- D03_PlanAnalysis_Terrain — 지점 + 1 km 표본 3×3 도엽 · prune 없음 · 병합 옛 ∪ 새 · 위성 합집합 · 연도별 models_<연도> DEM · plan.prj
- D03_PlanAnalysis_Analyze — 연도 구간마다 갈래 넷 · 법정 기준 · 누가 이어 셈 · 파생 저장본(입력 지문)
- D03_PlanAnalysis_Router — POST plan/terrain · plan/analyze(뒤에서 · 진행률) · GET plan/progress · plan/analysis · PUT [저장]
- 지킴 시험 test_530_1_plan_terrain · test_530_2_plan_analyze · test_530_2_plan_router

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:38:40 +09:00
eomsangdon 55cc9ea93c Merge remote-tracking branch 'origin/dev' into main_laptop_1 2026-10-25 19:35:54 +09:00
eomsangdonandClaude Opus 5.5 786b0d8394 chore(요구): 요구 352 — ORCA 브라우저 탭 하나 재사용
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:35:47 +09:00
eomsangdon c3083ba50b Merge remote-tracking branch 'origin/dev' into sub_laptop_2 2026-10-25 19:34:48 +09:00
eomsangdonandClaude Opus 5.5 dc124d3108 feat(528-2): 대시보드 [+] 고르기 모달 — 카드 넷(예정노선 · 임도설계 · 사방설계 · 안정성평가)
- [+] 세 자리(시스템관리자 · 회사관리자 · 사용자) = 고르기 모달
- 그림 = SVG 직접(선 = 글자 색 · 밝음/어두움) · 산림청 아니면 예정노선 흐림 + 까닭 툴팁 · 누름 = 같은 알림
- 사방 = 준비 중 · 임도 = B02 · 예정노선 = D01 · 안정성평가 = E01
- 세션 is_forest_service 칸(SessionUser)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:34:39 +09:00
eomsangdon 7434f10c7a Merge remote-tracking branches 'origin/sub_laptop_1' and 'origin/sub_laptop_2' into main_laptop_1 2026-10-25 19:33:12 +09:00
eomsangdon acf55f37fe Merge remote-tracking branch 'origin/안티그래비티' into main_laptop_1 2026-10-25 19:32:55 +09:00
eomsangdonandClaude Opus 5.5 ff8a8bad08 feat(528): 신규 프로젝트 그룹 공통 백엔드 — 종류 칸 · 산림청 판정 · D01 · E01 생성 API · 공유 GET 만 · 가입 go.kr = 산림청
- DB 020(추가만): projects 종류 · 사업연도 끝 · 설계속도 · 원본 칸 · plan_route_years · plan_route_assignees · 회사 「산림청」 행
- is_forest_email · is_forest_service · /api/auth/session 에 is_forest_service
- require_project_access 한 곳 — 지정 회사 = GET · HEAD 만 · 그 밖 403
- POST /api/d01/project(산림청만 · PLAN · 설계속도 기본 = resolve_design_speed) · GET /api/dashboard/plan-routes/assigned
- GET /api/e01/source-candidates · POST /api/e01/project(B06 완료만 · STABILITY · 원본 칸 · 자료 복사는 528-4)
- 종류별 단계 시드(PLAN 3 · STABILITY 4) · storage 허용 D0x · E0x · B01 목록에 project_kind
- 가입 인증 — 메일 *.go.kr = 회사 산림청 · ACTIVE · 화면 회사 칸 「산림청」 잠금 표시
- 지킴 시험 test_528_project_groups.py

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:32:25 +09:00
eomsangdonandClaude Opus 5.5 a1069f270a feat(529-1): 단계 틀 인자(아이콘 · [<][>] 묶음 · 도움말 이름) · D · E 단계 빈 길 일곱
- createWorkflowLayout icons 인자(없으면 B 일곱 아이콘 그대로)
- [?] [<] [>] 묶음 = B05~B09 · D02~D04 · E02~E05 · 묶음 안에서만 오감 · 설명서 이름 B0N/D0N/E0N
- 서버 설명서 주소 D01~D04 · E01~E05 허용 · 우클릭 막기 · 돋보기 d · e 주소
- ROUTES D01~E05 · PLAN_STEP_ROUTES · STAB_STEP_ROUTES · A00_Common/group_workflow(빈 단계 = 틀 · 좌측 [?] 줄 · 단계 막대)
- 페이지 폴더마다 draft/<폴더>_Route.ts · tsconfig 에 D0* · E0* · 문구 ui_template_locale_de
- 시험: 280-2 대역에 D · E 묶음 · 54-2 D · E 설명서 길

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:32:09 +09:00
eomsangdon 6a19ad195b knowledge(안정성평가): 상용 사면안정 SW 기능·검증예제 및 지반물성치 원문 근거 추가 (351) 2026-10-25 19:32:05 +09:00
eomsangdon 173b961494 Merge remote-tracking branch 'origin/sub_laptop_2' into main_laptop_1 2026-10-25 19:27:06 +09:00
eomsangdonandClaude Opus 5.5 c2876aef60 refactor(529-2): 카카오 지도 부품 B08 → ui_template 공용 이전 · 키 길 공용(/api/map/kakao-key)
- ui_template_kakao_map.ts(editMap · loadKakaoMaps) · 지도 CSS 공용 이름(ui-kakao-map*)
- B08 거리이정표 네 곳은 공용을 부름 · projectId 인자 걷음(키가 프로젝트 무관)
- B08 /quantity/milestone/map-key 걷음 → common_util_map_router 로 옮김
- B08 이정표 시험 파일 경로 · fetch 가짜 · 공용 CSS 로 고침(동작 판정 그대로)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:26:34 +09:00
eomsangdon 280072a16d Merge remote-tracking branch 'origin/dev' into sub_laptop_6 2026-10-25 19:25:48 +09:00
eomsangdonandClaude Opus 5.5 9c6ef7ca1e feat(534-1): 내장 엑셀 계약 더함 — 시트 인쇄 설정 · 그림 칸 · 행열 넣기 때 따라감
- spreadsheet_types: Sheet.인쇄(용지 · 방향 · 배율/맞춤 · 여백 · 머리행 · 쪽나눔) · Sheet.그림(열쇠 · 닻) · 머리 금지 규칙을 요구 347-5 로 고침
- spreadsheet_commands: 행열 넣기 · 지우기 때 그림 닻 · 쪽 나눔 · 머리 행 옮김
- 견본 JSON 에 인쇄 · 그림 · 엔진 시험 다섯 줄

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:25:37 +09:00
eomsangdon 4730edba31 Merge remote-tracking branch 'origin/sub_laptop_8' into sub_laptop_5 2026-10-25 19:24:10 +09:00
eomsangdonandClaude Opus 5.5 9add13ccbc refactor(535-1): PDF 엔진 공용화 — common_util_print_pdf(render_html_to_pdf · render_htmls_to_pdfs · merge_pdfs · 엑셀 인쇄 설정) · B09 표 인쇄는 부르기만
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:23:42 +09:00
eomsangdonandClaude Opus 5.5 eb29e753fd feat(E03): 안정성평가 공용 꼴 — 물성 · 지하수 · 지진 kh · 상재하중 (532-2 · sub5 3D 공용)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:22:49 +09:00
eomsangdonandClaude Opus 5.5 bc39953fbd chore(요구): 요구 351 — 구현 진행 · 브레인 자율 · PDF 라이브러리 결정 · 안정성평가 품질
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:14:35 +09:00
eomsangdonandClaude Opus 5.5 9af2c53e8e chore(요구): 요구 350 — 상용 라이센스 조건 · 요구서 345 9장 쓰는 라이브러리(자체 엔진 · BSD · MIT · Apache 만)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:05:53 +09:00
eomsangdonandClaude Opus 5.5 b23cb15bbb chore(요구): 요구서 345 — E 3D 해석 방법(Hungr 3D Bishop · Scoops3D 방식 탐색) · 내장 엑셀 보고서 구성 · 분석 F
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:03:59 +09:00
eomsangdon ab0a82d38a Merge remote-tracking branch 'origin/안티그래비티' into main_laptop_1 2026-10-25 19:00:00 +09:00
eomsangdonandClaude Opus 5.5 e5d61d5569 chore(요구): 요구 349 — 예정노선 등록에 임도 종류 · 설계속도(기본 최저 속도) · 완료 메일 파일 첨부
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 19:00:00 +09:00
eomsangdon 70056054be knowledge(안정성평가): 3D 사면안정해석 논문·기술정보 조사 및 참고문헌 추가 (347-1) 2026-10-25 18:58:23 +09:00
eomsangdonandClaude Opus 5.5 37e856c9c9 chore(요구): 요구 347 · 348 — 요구서 345 확정 답 반영(3D · 물성값 · 기준안전율 · 노면 하중 · 내장 엑셀 보고서 · 회원가입 산림청) · PLAN 519~527 완료 이관
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 18:54:36 +09:00
eomsangdonandClaude Opus 5.5 68a38ff429 knowledge(임도 계산정보): 「프로그램은 안정계산 안 함」 결정 지움 — 요구 347-6 · E 안정성평가 모듈
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 18:51:58 +09:00
eomsangdonandClaude Opus 5.5 f4017adfb4 chore(요구): 요구 347 — 요구서 345 확정 답(3D 진행 · 물성값 · 기준안전율 · 노면 하중 · 내장 엑셀 보고서 · 회원가입 산림청)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 18:50:35 +09:00
eomsangdonandClaude Opus 5.5 9c86243d1e chore(요구): 요구서 345 — D 예정노선 · E 안정성평가 요구서 · 분석 넷(등록권한공유 · 틀노선추천 · 내보내기양식 · 안정성평가제안)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 18:43:02 +09:00
eomsangdonandClaude Opus 5.5 d8d68605b9 chore(요구): 요구 346 — 예정노선 역할 이름 산림청 · B 그룹 로직 재활용
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 18:29:39 +09:00
eomsangdonandClaude Opus 5.5 d045042f9a chore(요구): 요구 345 — 신규 프로젝트 그룹 D 예정노선 · E 안정성평가 원문
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 18:20:33 +09:00
eomsangdonandClaude Opus 5.5 0aaf78f2df chore(요구): 요구 344 — 안티그래비티 재해·사면안정성 사전조사 초안 메인 합침 · 대기
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 18:09:14 +09:00
eomsangdon 7695153429 Merge remote-tracking branch 'origin/안티그래비티' into main_laptop_1 2026-10-25 18:09:03 +09:00
eomsangdon 6005d5d8be docs(original): 계획노선 폴더명을 예정노선으로 변경 (resources/knowledge/original/예정노선) 2026-10-25 17:14:43 +09:00
eomsangdon 227fac180e docs(original): 임도 재해·사면안정성 평가 사전조사 초안 추가 (계획노선·안정성평가 분리) 2026-10-25 17:12:32 +09:00
eomsangdon 40df9f4db4 Merge remote-tracking branches 'origin/sub_laptop_3' and 'origin/sub_laptop_6' into main_laptop_1 2026-10-25 14:45:33 +09:00
eomsangdonandClaude Opus 5.5 1dddb5185c fix(523-1): B07 설정 모달 좁은 폭 머리 한 줄 · 단추 줄 한 규격 · 밖에서 누르고 안에서 떼도 안 닫힘
- 공용 모달 바깥 닫기 = 뗌 자리도 배경일 때만(누름 바깥 · 뗌 안 = 안 닫힘)
- 360 px 모달 제목 · [원본에서 다시 그리기] · [닫기] 줄바꿈 없앰 · 단추 줄 [안내선 숨기기]도 같은 키(32 px)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 14:44:46 +09:00
eomsangdonandClaude Opus 5.5 a2c3c0fc1f fix(526-1): B07 횡단 장 인쇄 칸선 지움 · 칸마다 안내선 · 처음 맞춤 작도 영역까지
- 횡단 장 칸 격자선(도각 층 인쇄 개체) 지움 — 칸은 화면 안내선 겹판(guide.cells · 단면마다 점선)
  · 안내선 숨기기에 함께 꺼짐 · 넘친 칸 붉은 틀은 그대로
- 옛 확정 · 저장본 장은 열 때 칸선만 걷고 칸 안내선은 지금 배치로(refresh_saved_sheet)
- CAD 처음 맞춤 · 전체 맞춤 = 내용 + 작도 영역(가이드) — 표준 횡단도가 내용에만 확대돼
  도면 한 장 안 자리가 안 보이던 흠
- 낡은 시험 고침: test_169 칸선 단언 → 칸선 없음 + 칸 안내선 · test_212_3 「남는 검은 선 =
  인쇄 칸선 지우지 않음」(212-3 결정) → 요구 343-4 로 칸선 지움 · guide-area 시험 칸 그리기

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 14:39:18 +09:00
eomsangdonandClaude Opus 5.5 871174d214 feat(523-1): B07 설정 모달 공용 고침 — 끌기 닫힘 막음 · 폭 절반 · 그룹 상자 · 단추 줄 하나 · 자동 체크 없앰
- 공용 모달 바깥 누르기 = 누름 · 뗌 둘 다 배경일 때만 닫음(숫자 칸 끌기로 안 닫힘 · 평면도 ⚙ 포함 모든 openModal)
- ⚙ 설정 모달(종단 · 횡단 · 토적 · 구조물 · 전개도) 폭 720 → 360 px · 그룹 상자(legend) · 맨 아래 단추 줄 하나([안내선 숨기기] [기본값] [취소] [확인])
- [확인] = 바뀐 것만 저장(축척 → 배치) 뒤 다시 그림 · 붉은 칸이면 꺼짐 · 횡단 [이 장] [모든 장] [배율 적용] 단추 → 「적용」 고르기 + [확인]
- 축척 「자동」 체크 걷음 — 기본 = 지정값(종단 평면도 1/5,000 · 토적 X 1/2,000 · 전개도 X · Y 1/50) · 옛 null = 기본으로 읽음
- 낡은 시험 고침: 153-1(지운 buildCrossLayoutControls 대신 ⚙ 횡단 모달) · 212-3 · 180-3(안내선 단추 자리) · 280-5(자동 체크 · 단추 판정) · 485 축척 · 토적 · 종단 평면 칸(옛 자동 축척 값 → 지정 기본값)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 14:34:31 +09:00
eomsangdon 624a3e0aaa Merge remote-tracking branches 'origin/sub_laptop_2', 'origin/sub_laptop_4' and 'origin/sub_laptop_5' into sub_laptop_3 2026-10-25 14:29:05 +09:00
eomsangdonandClaude Sonnet 5.5 3b2cb65e1e feat(524-1 덧): B07 평면도 모달 「확정 / 확정 전」 배지 지움 — 도면 확정 없앰(527)에 따름
- 모달 머리 배지 · 배지 글꼴 규칙 지움
- 낡은 시험 수선: 배지만 보는 시험을 배지 없음 확인으로 바꿈

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-25 14:28:56 +09:00
eomsangdonandClaude Opus 5.5 5a1490ddaa fix(527-1): B07 확정 표시 걷음 — 정보칸 「확정/잠정」 배지 · CAD 보기 전용 알림 옛 「확정한 도면 · [수정]」 글 · 저장 실패 글 「확정」 → 「저장」
- [>] 「도면 저장」 단계는 요구 281 · 520-3 그대로(고친 도면만 서버 저장 → 단계 완료 → 이동)
- 서버 끝점 · manifest confirmed 키 = 안쪽 이름이라 그대로(브레인 정함)
- 평면도 설정 모달 배지는 sub5(524) 몫

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 14:28:28 +09:00
eomsangdonandClaude Opus 5.5 1398625d2d feat(B07): 종단도 장 = 일반측점 30 간격 600 m · Y축 여유 10 mm · 그림 자리 +50 mm (525-1 · 요구 343-3)
- 장 나눔 = 추가 · MC 측점 안 세고 일반측점 30 간격(20 m 면 600 m) · 경계 측점 나눠 가짐 · 넘치면 줄이는 규칙 그대로
- Y축 · 측점표 머리 = 첫 측점 왼쪽 10 mm
- 그림 = 작도 영역 좌하단에서 오른쪽 50 · 위 50 mm(도각 · 평면 칸 · 넘침 판정이 같은 장 bbox)
- 장 나눔 · 도각을 Engine_Cad_LongSheet.py 로 뗌(Engine_Cad_Long.py 700줄 한도)
- 옛 종단 확정본 풂 = 칸 층 찾기 → 매니페스트 long_sheet_rule(2) 비교 — 521-2 뒤 확정본도 자리가 바뀌어 한 번 더 풂 · 낡은 시험(칸 층 기준) 고침

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 14:25:57 +09:00