필드 판정 — accounts 확정

contents 와 같은 기준·이름 규칙을 적용합니다. 판정 열은 추천값으로 미리 채워져 있으니 바꿀 것만 바꾸시면 됩니다. · contents 판정(확정) · 구조 문서

확정  공용 15 · 개별(data) 8 · 제거 4 · 보류 2

확정된 accounts 스키마
{
  _id                ObjectId   
  platform           enum          x · tt · ig · yt · rd · gh
  platform_key       string     ○   x id · gh login · rd 는 username 문자열(불변·재사용 불가)
  source_urls[]      object[]   

  handles[]          object[]   기본값 []   { value, first_seen, last_seen }
                                     구간이 핵심 — tt 는 핸들을 회전시키고 옛 핸들을 재할당한다

  account_created_at Date       ○   rug 1순위 신호. 6개 중 5개가 준다. ig 만 구조적 부재
  display_name       string     ○
  bio                string     ○   지갑 주소가 실제로 여기 노출된다
  links[]            string[]   기본값 []
  declared_handles[] object[]   기본값 []   { platform, value } — 사실상 gh twitter_username
  known_wallets[]    string[]   기본값 []   온체인 ↔ 소셜 조인 축. bio 에서 추출한 파생 키
  metrics.followers  number     ○   contents.author.followers 스냅샷의 원본

  moderation.unavailable  bool  ○
  account_type       ?          ○   보류 — data 로 내릴지
  source_ref{}       object     ○   보류

  observed_at        Date       
  created_at/updated_at  Date   
  data               Mixed      기본값 {}   following · totalKarma · heart · viewCount · stars ·
                                     content_count · badges
}

제거 4  subtype · moderation.unavailable_reason · account_key · ext
subtype 제거 근거  platform 을 아는 순간 종류가 결정되어 새 정보가 0. venues 는 tg 가 갈리므로 유지
질문 1 · 이 필드로 쿼리하는가?  (filter · sort · join · group · index)
          아니오 →  data          예 → 질문 2
질문 2 · 값의 의미가 모든 subtype 에서 같은가?
          아니오 →  data          예 → 질문 3
질문 3 · 이 값의 원본(SoT)이 다른 곳에 있는가?
          예     →  최적화용       아니오 → 공용

필수 여부
  필수 ●  없으면 저장 불가    기본값  필수지만 기본값이 있어 항상 존재    선택 ○  없을 수 있음
이 컬렉션의 쟁점 6개
  1. account_type → subtype 흡수       contents 에서 form 을 흡수한 것과 같은 패턴
  2. metrics 를 시계열로 뺄지          B-3(팔로워 급증 탐지)은 스냅샷 컬렉션이 있어야 답한다
  3. badges[] 유지 여부                X 전용 · 설계 스스로 저가치라 기록
  4. source_ref{} 처리                프로필 직접 조회가 아님을 남기는 값. 쿼리 축인지 불명
  5. display_name 승격 여부            사실상 x·yt 만. audit 이 나머지를 skip 했다
  6. data.stars 위치                   레포 응답에 딸린 값이라 contents 쪽일 수 있다
필드 어디서 오나 · 무엇인가 Q1
쿼리
Q2
의미
Q3
원본
판정 근거 · 쟁점 판정 필수 메모

JSON 출력

복사해서 채팅에 붙여넣으시면 그대로 반영하겠습니다.