Files
Aislo/docs/wiki/concepts/multi_environment_safety.md
T

37 lines
2.1 KiB
Markdown

---
type: concept
status: stable
related_pages: ["[[architecture/shared_resources]]", "[[storage_paths]]", "[[workflow_state]]"]
last_updated: 2026-09-09
source: ["docs/raw/verification/2026-09-09d_OWNERS_이력.md"]
---
# 다중 환경 저장소·공용 DB 안전
## 확인된 위험
- 저장소 전체가 Synology로 PC 사이에 동기화되어 커밋 전 파일도 시간차를 두고 전달된다. 등록 파일만 먼저 도착하면 `ModuleNotFoundError` 같은 반쪽 상태가 생길 수 있다.
- 네 환경이 원격 DB 한 벌을 사용하므로 다른 창의 저장·확정·노선 확인이 같은 프로젝트의 종횡단·수량 결과를 바꿀 수 있다.
- `[저장]``[확정]`은 전 측점을 현재 서버 코드로 다시 계산한다. 노선 `[확인]`은 배수유역부터 전체 재설계 체인을 실행한다.
- 저장된 정본 수치는 입력 자료뿐 아니라 계산 당시 코드 버전에도 매인다.
## 운영 규칙
1. 신규 공용 파일을 먼저 동기화·push한 뒤 그 파일을 부르는 등록 줄을 반영한다.
2. 자동 커밋 전에 `git status`로 다른 환경의 편집이 섞였는지 확인한다.
3. 반쪽 상태에서는 먼저 원격 동기화 상태를 확인하고, 남의 변경은 지우지 않는다.
4. 환경마다 별도 검증 프로젝트를 사용하고 다른 환경 프로젝트에서 저장·확정을 실행하지 않는다.
5. 저장·확정·노선 확인 전에 영향을 받을 작업자에게 알린다.
6. 수량 대조 전후 스냅숏에는 자료 시각과 `/api/health``code_mtime`을 함께 기록한다.
7. `tmp/`는 PC 사이 동기화를 보장하지 않으므로 검증 도구 존재 여부를 환경별로 확인한다.
## 재계산 영향
| 조작 | 영향 |
|---|---|
| 노선 확인 | 배수유역·관·종횡단·유토를 포함한 전체 재설계 |
| 저장·확정 | 전 측점 재계산 후 정본 기록 |
| 개발용 다음 단계 이동 | workflow 상태만 변경, 계산 없음 |
구체적인 환경별 프로젝트 ID와 과거 사고 시점은 변동 가능한 운영 기록이므로 source 원문과 현재 `OWNERS.md` 장부를 함께 확인한다.