Initialize gitea-agent harness
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
# 데이터 모델 작성 방법
|
||||
|
||||
데이터 모델 문서는 승인된 Discovery와 구현 결과를 근거로 구현 완료 후의 정본 데이터 구조를 설명한다.
|
||||
|
||||
## 저장 위치
|
||||
|
||||
완성된 데이터 모델 문서는 대상 저장소 루트 기준 `docs/data-model.md`에 저장한다. 파일이 이미 존재하면 별도 문서를 만들지 않고 이 정본 문서를 갱신한다.
|
||||
|
||||
이 디렉터리의 [`README.md`](README.md)와 [`TEMPLATE.md`](TEMPLATE.md)는 하네스의 작성 규칙과 템플릿이며 대상 저장소에 저장하는 산출물이 아니다.
|
||||
|
||||
## 작성 방법
|
||||
|
||||
1. [`TEMPLATE.md`](TEMPLATE.md)를 복사하고 섹션 순서를 유지한다.
|
||||
2. 목적과 포함·제외 범위를 먼저 확정한다.
|
||||
3. `정본 엔터티`의 H3 블록을 엔터티 수만큼 복제하고, 각 엔터티의 필드 행을 실제 필드 수만큼 복제한다.
|
||||
4. 모든 `${lowercase_snake_case}` placeholder를 실제 값으로 교체한다. `${stable_section_id}`에는 고유한 소문자 케밥 표기법을 사용한다. 엔터티 이름이 바뀌어도 ID는 유지하며 삭제된 ID를 재사용하지 않는다.
|
||||
5. 각 필드 행에 필드명, 타입, 필수 여부, 기본값, 허용 값·형식, 단위·정밀도 및 민감정보 여부를 기록한다. 해당 값이 없으면 `없음`으로 기록한다.
|
||||
6. 관계의 방향과 카디널리티, 소유권, 삭제 규칙 및 항상 유지해야 하는 불변조건을 기록한다.
|
||||
7. 저장 위치와 직렬화 형식, 기존 데이터 마이그레이션, 하위 호환성 및 롤백 조건을 기록한다.
|
||||
8. 정상·경계·오류 데이터와 저장 후 재조회·마이그레이션 검증 방법을 기록한다.
|
||||
|
||||
근거 없이 엔터티나 필드를 추측하지 않는다. 해당 사항이 없으면 `없음`으로 기록하고, 완성 문서에는 placeholder나 작성 안내 문구를 남기지 않는다.
|
||||
@@ -0,0 +1,51 @@
|
||||
# ${data_model_title}
|
||||
|
||||
## 목적과 범위
|
||||
|
||||
${purpose}
|
||||
|
||||
- 포함 범위: ${included_scope}
|
||||
- 제외 범위: ${excluded_scope}
|
||||
|
||||
## 정본 엔터티
|
||||
|
||||
### ${stable_section_id} — ${entity_name}
|
||||
|
||||
- 책임: ${entity_responsibility}
|
||||
- 식별자: `${identifier_field}`
|
||||
- 생명 주기: ${entity_lifecycle}
|
||||
|
||||
#### 필드
|
||||
|
||||
| 필드 | 타입 | 필수 여부 | 기본값 | 허용 값·형식 | 단위·정밀도 | 민감정보 |
|
||||
|---|---|---|---|---|---|---|
|
||||
| `${field_name}` | `${field_type}` | ${required_or_optional} | ${default_value_or_none} | ${allowed_values_and_format} | ${unit_and_precision_or_none} | ${sensitivity_or_none} |
|
||||
|
||||
## 관계와 불변조건
|
||||
|
||||
### 관계
|
||||
|
||||
| 출발 엔터티 | 관계 | 대상 엔터티 | 카디널리티 | 필수 여부 | 소유권 | 삭제 규칙 |
|
||||
|---|---|---|---|---|---|---|
|
||||
| `${source_entity_id}` | ${relationship} | `${target_entity_id}` | `${cardinality}` | ${required_or_optional} | ${ownership} | ${deletion_rule} |
|
||||
|
||||
### 불변조건
|
||||
|
||||
- ${invariant}
|
||||
|
||||
## 저장과 마이그레이션
|
||||
|
||||
- 저장 위치: ${storage_location}
|
||||
- 직렬화 형식: ${serialization_format}
|
||||
- 스키마 버전: ${schema_version}
|
||||
- 기존 데이터 처리: ${existing_data_migration}
|
||||
- 하위 호환성: ${backward_compatibility}
|
||||
- 롤백 조건: ${rollback_conditions}
|
||||
|
||||
## 검증
|
||||
|
||||
- 정상 데이터: ${normal_data_validation}
|
||||
- 경계 데이터: ${boundary_data_validation}
|
||||
- 오류 데이터: ${invalid_data_validation}
|
||||
- 저장 후 재조회: ${round_trip_validation}
|
||||
- 마이그레이션: ${migration_validation}
|
||||
Reference in New Issue
Block a user