문서 / specs/001-harness-public-site/data-model.md

Data Model: 5240lab 하네스 공개 사이트

근거, 계층, 성숙도 데이터의 구조.

런타임 데이터베이스는 없다. 아래 엔터티는 저장소의 구조화 콘텐츠와 빌드 생성 스냅샷을 정의한다.

EvidenceItem

Field Type Rules
id string kebab-case, 전체 manifest에서 유일
title string 공개 한국어 제목, 2~80자
layer HarnessLayerId 등록된 계층 ID
type policy | enforced | execution 정책·자동 강제·실행 기록
sourcePath string 5240lab 루트 기준 POSIX 상대 경로, ..·절대경로 금지
startLine integer 1 이상, endLine 이하
endLine integer startLine 이상, 최대 발췌 범위 제한 이내
expectedExcerpt string 지정 범위에 정확히 포함되는 공개 가능 짧은 문장
summary string 근거가 입증하는 범위를 과장 없이 설명
verifiedOn ISO date 원본 확인 기준일
status verified 생성 스냅샷에는 확인됨만 허용

Validation lifecycle

curated → source-validated → public-safe → generated

어느 단계든 실패하면 생성 스냅샷을 갱신하지 않고 빌드를 실패시킨다.

HarnessLayer

Field Type Rules
id string 안정 ID
name string 공개 한국어 이름
description string 책임과 경계 설명
workflowSteps string[] 관련 제작 단계 ID
evidenceIds string[] 존재하는 EvidenceItem 참조

초기 계층은 컨텍스트, 오케스트레이션, 명세, 작업 격리, 실행 가드, 검증·평가, 배포·운영, 매뉴얼 동기화다.

WorkflowStep

Field Type Rules
id string 순서와 무관한 안정 ID
order integer 1~10, 중복 없음
name string 작업 단계 이름
goal string 단계가 해결하는 문제
inputs string[] 요청 또는 이전 산출물
outputs string[] 문서·코드·검증 결과
gate string 다음 단계 이동 조건
superpowers string[] 해당 시점의 작업 규율
manualAction string 매뉴얼 영향 또는 반영 행동

MaturityAssessment

Field Type Rules
id string 평가 시점별 유일
assessedOn ISO date 평가 기준일
releaseId string 평가에 사용한 사이트/하네스 릴리스
layers LayerAssessment[] 등록 계층마다 정확히 하나
dimensions DimensionScores 각 축 0~20 정수
total integer 축 합계, 0~100
evidenceIds string[] 평가 근거
limitations string[] 미검증과 해석 제한

DimensionScores

  • coverage
  • enforcement
  • verifiability
  • traceability
  • operationalSafety

가중치는 모두 20점이며 합계가 100이어야 한다.

LayerAssessment

Field Type Rules
layerId HarnessLayerId 등록 계층 참조
level 0 | 1 | 2 | 3 | 4 증거 기반 성숙도
score integer 0~100
evidenceIds string[] 단계 판정 근거
rationale string 상위 단계로 판정하지 않은 이유 포함

ImprovementItem

Field Type Rules
id string 유일한 안정 ID
title string 실행 가능한 개선 제목
horizon now | next | later | long-term 즉시·단기·중기·장기
layerIds string[] 영향 계층
baseline string 현재 관찰 상태
target string 기대 상태
impact high | medium | low 효과
effort high | medium | low 난이도
verification VerificationRule[] 실행·통과 조건
status planned | in-progress | passed | partial | failed 현재 판정
reassessOn ISO date 또는 null 다음 평가일

Reassessment

Field Type Rules
improvementId string ImprovementItem 참조
beforeAssessmentId string 이전 평가 참조
afterAssessmentId string 현재 평가 참조
performedOn ISO date 검증일
result passed | partial | failed 완료 판정
checks CheckResult[] 명령·관찰 결과
evidenceIds string[] 재판정 근거
remainingRisks string[] 미해결 위험

ManualImpactRecord

Field Type Rules
featureId string spec/task와 연결되는 ID
impact affected | none 영향 여부
rationale string 영향 없음도 필수
audiences audience[] user/admin/operator/developer
manualPaths string[] 공개 또는 저장소 상대 경로
validation CheckResult[] 정합성·링크·공개 경로 결과
releaseId string 함께 배포된 release

ReleaseRecord

Field Type Rules
releaseId string 커밋과 시각에서 생성, 경로 안전 문자만
createdOn ISO timestamp 빌드 시각
evidenceVerifiedOn ISO date 스냅샷 확인일
checks CheckResult[] test/build/health/smoke/manual
previousReleaseId string 또는 null 복구 대상
activated boolean current 전환 성공 여부
rollback not-needed | passed | failed 복구 결과