9badcbf80ec82a7569421323abf540649aae0a3c
일감 4·5 의 엔진 덩어리. PLAN 8-11·8-3·8-7. 프로젝트 설정 (common_util/common_util_project_settings.py) 자리 = <project_root>/project_settings.json, 루트의 project_manifest.json 옆. 매니페스트 stages 는 단계 산출물 목록이고 설정은 두 페이지가 함께 읽는 프로젝트 값이라 단계 폴더에 넣으면 주인이 애매해짐. 구획 quantity(B08) · estimation(B09) — 남의 구획은 읽기만. ⚠ 경계를 코드로 막음 — save_section() 이 이름 붙은 한 구획만 갈아 끼우고 통째로 쓰는 함수를 두지 않음. 두 페이지가 같은 파일을 쓰므로 통째로 덮으면 상대 값이 사라짐(오늘 main.py 에서 같은 모양의 사고를 이미 겪음). ⚠ *_override 기본은 None — 「안 정했으면 config 정본을 씀」. 기본값을 복사해 넣으면 정본이 바뀌어도 옛 프로젝트가 안 따라옴. ⚠ dataset_versions 는 기록이지 정본이 아님 — 되살릴 때 쓰는 정본은 프로젝트 스냅샷이고 어긋나면 스냅샷이 이김. estimation.rate_dataset 은 「연도」가 아니라 판을 가리킴 — 제비율은 연중에도 개정됨(현행판 2026-04-13). B09 확정 반영. 토공집계표 (열 = 구분·공종·규격·단위·계·비고, 거창 실무 시트 그대로) ⚠ 암 갈래 개수를 코드에 안 박음 — 울진 2 · 거창 5 · BOM 1 로 공사마다 다름. 프로젝트 설정의 세트를 받아 그만큼 줄을 냄. 비율이 아직 없으면 지어내지 않고 「암」 한 줄로 냄. 비율 합이 100 이 아니어도 준 비율끼리 안분해 총량 보존. ⚠ 반영률 기본 100 % — 실무 관측 80/50/80 은 참고이지 기본값 아님(법대로). 바꾼 경우에만 비고에 「80 % 반영」이 남음 — 누가 정한 값인지 보이게. 운반 가중평균 ((운반수단 x 지반유형)별 1줄) 실무 울진이 도자 토사/암 · 덤프 토사/암 4줄을 올림. 가중평균 = Σ(토량x거리)/Σ토량 으로 단순평균이 아님. 개별 구간은 근거로 함께 냄 — 어느 구간이 그 평균을 만들었는지 되짚게. 입력은 이미 있는 HaulPlan — 띠·장거리이동에 equipment·haul_distance_m· 지반유형별 물량(ea/rr/br)이 다 있어 다시 세지 않음. ⚠ 무대(free_haul)는 in_bill=False — 품셈 1-2-7 로 품에 포함이고 인력운반 10-6 도 「소운반 20m 초과분」이라 붙일 단가가 없음. 값은 내되 내역 줄만 뺌 — 「무대+도자+덤프 = 총 운반토량」 검산에 씀. 검증 — 28건 통과 (토공집계·설정 19 + 운반 9). 가중평균이 단순평균과 다름을 못 박음(도자 토사 600@40+400@50 → 44m, 45 아님). 울진2·거창5 두 세트가 같은 코드로 서는 것, 무대가 내역 줄이 아닌 것, 구획을 따로 저장해도 상대 값이 안 지워지는 것을 각각 시험함. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Aislo
Aislo 웹앱
Languages
Lasso
99.4%
Python
0.3%
TypeScript
0.3%