안전하게 수정할 위치와 확인 순서
진료시간, 예약 설정, 홈페이지 화면은 고칠 위치가 서로 다릅니다. 작업 전에 운영 데이터만 바꾸면 되는지, 병원 전용 기능으로 분리할지, 모든 설치본이 함께 쓰는 코드를 바꿔야 할지 구분하면 업데이트 충돌과 데이터 손실을 줄일 수 있습니다.
먼저 세 가지 수정 위치를 구분하세요
| 수정 위치 | 주로 바꾸는 것 | 적용 전 확인 |
|---|---|---|
| 운영 데이터 | 진료시간, 의료진, 서비스, 문자 문구 | 기존 예약·표시 내용과 충돌하는지 |
| 병원 전용 플러그인 | 병원에만 필요한 기능과 화면 | 해당 기능을 껐을 때 기존 업무가 유지되는지 |
| 공통 코드 | 로그인, 권한, 공통 API, 데이터베이스 구조 | 다른 기능과 향후 업데이트에 미치는 영향 |
대부분의 일은 운영 데이터나 병원 전용 플러그인에서 해결할 수 있습니다. 공통 코드 변경은 다른 방법이 없을 때 검토합니다.
1. 운영 데이터 변경
관리자 화면에서 입력하거나 수정하는 병원별 정보입니다.
- 서비스와 프로그램
- 직원과 의료진 정보
- 진료시간과 예약 일정
- 문자·알림톡 문구
- 캠페인 설정
변경 자체는 비교적 간단하지만 실제 환자 안내와 예약에 바로 반영될 수 있습니다.
| 바꿀 일 | 함께 확인할 일 |
|---|---|
| 새 서비스 추가 | 기존 서비스와 이름·가격이 겹치지 않는지 |
| 가격 수정 | 과거 결제 기록과 홈페이지 표시 가격이 구분되는지 |
| 문자 문구 수정 | 미리보기와 실제 발송 대상이 맞는지 |
| 진료시간 수정 | 이미 잡힌 예약과 충돌하지 않는지 |
2. 병원 전용 플러그인 변경
다른 병원에는 필요하지 않은 기능이나 화면은 플러그인으로 분리합니다. ClinicOS 본체와 파일을 나누면 문제가 생겼을 때 해당 기능만 끄고 원인을 확인할 수 있습니다.
주요 위치는 다음과 같습니다.
- 플러그인 코드:
src/plugins/local/ - 플러그인 전용 테이블:
custom_접두사를 사용한 테이블 - 플러그인 API:
/api/hub/{plugin}/ - 플러그인 관리자 화면:
/admin/hub/{plugin}/
설치·삭제 전에는 연결된 화면과 데이터가 있는지 확인하고, 수정 뒤에는 해당 기능뿐 아니라 함께 노출되는 공용 화면도 테스트합니다.
에이전트에게는 이렇게 요청할 수 있습니다.
진료 뒤 3일째에 후기 안내 문자를 준비하고,
발송 대상과 문구는 관리자가 확인한 뒤 보낼 수 있게 해줘.
기존 예약과 문자 기능을 직접 바꾸지 말고 병원 전용 플러그인으로 가능한지 먼저 확인해줘.
3. 공통 코드 변경
모든 설치본이 함께 쓰는 로그인, 권한, 공통 API와 데이터베이스 구조입니다. 이 영역은 한 화면만 고치려다가 다른 기능이나 다음 업데이트에 영향을 줄 수 있습니다.
대표 위치는 다음과 같습니다.
- 핵심 페이지와 API:
src/pages/,src/pages/api/ - 공통 기능:
src/lib/ - 데이터베이스 변경:
migrations/ - 로그인과 권한 관련 코드
기존 테이블의 열을 없애거나 API 응답 형식과 로그인 규칙을 바로 바꾸지 마세요. 필요해 보이더라도 에이전트에게 먼저 다른 방법이 있는지 확인하도록 요청합니다.
현재 바꾸려는 일이 공통 코드 수정까지 필요한지 확인해줘.
운영 데이터나 병원 전용 플러그인으로 해결할 수 있으면 그 방법을 먼저 제안하고,
공통 코드를 바꿔야 한다면 영향받는 화면과 되돌리는 방법을 알려줘.
새 기능은 이 순서로 판단하세요
- 관리자 화면의 기존 설정이나 데이터 변경으로 끝나는지 확인합니다.
- 병원에만 필요한 기능이면 플러그인으로 분리할 수 있는지 확인합니다.
- 두 방법으로 해결되지 않을 때 공통 코드 변경 범위와 영향을 확인합니다.
- 미리보기, 백업, 관련 기능 테스트를 마친 뒤 운영 사이트에 적용합니다.
적용 전 마지막 확인
- 바뀌는 파일·데이터·화면의 범위를 받았는가
- 기존 예약과 환자 안내에 영향을 주는지 확인했는가
- 필요한 데이터 백업이나 되돌리는 방법이 준비됐는가
- 모바일과 데스크톱 미리보기를 확인했는가
- 배포 뒤 실제 주소에서 같은 기능을 다시 확인했는가
어느 위치를 바꾸는지 모르겠다면 명령어부터 정하지 말고, 현재 상황과 원하는 결과를 에이전트에게 설명하세요. 에이전트가 수정 위치와 확인 순서를 먼저 제안하도록 하면 됩니다.