Skip to content

[Architecture] Audit Character, LifeLog, and Inventory domains before ITEM rewards #221

Description

@l2yujw

Goal

다음 세 도메인을 전수 조사한다.

  • Character
  • LifeLog
  • Inventory / Item / Mailbox

감사 결과로 다음을 확정한다.

  1. 그대로 유지할 구조
  2. ITEM Reward 전에 반드시 보강할 구조
  3. Role/Person/QuestRoute 전에 보강할 구조
  4. 장기 부채로 남길 수 있는 구조
  5. 삭제하거나 통합하면 안 되는 호환 경계
  6. ITEM Reward readiness
  7. 실제 후속 구현 PR 순서

Architecture Classification

모든 주요 파일과 경계를 다음 중 하나로 분류한다.

  • KEEP
  • HARDEN
  • REFACTOR_BEFORE_ITEM
  • REFACTOR_BEFORE_ROLE
  • DEPRECATE_LATER
  • DO_NOT_TOUCH
  • UNKNOWN

Finding severity:

  • P0 BLOCKER
  • P1 MAJOR
  • P2 MODERATE
  • P3 MINOR

Required Audit Areas

Character

  • Player Aggregate 책임
  • User / Player identity
  • EXP / Level / Stat / Status / Title
  • Growth API와 PlayerGrowthChange ledger
  • Achievement / Certification / Hobby / Equipment 경계
  • legacy job, guildId, titleId
  • Transaction, lock, ownership, Event 발행

LifeLog

  • Collection / Exercise / Media / Quick Record Source
  • LifeLogRecord canonical identity header
  • LifeLogRecorded durable Fact
  • Source와 header의 create/update/delete lifecycle
  • Outbox와 idempotency
  • private data 노출 여부
  • Timeline read model 준비도
  • future Role linkage와 primaryRoleId

Inventory

  • Item stable code
  • PlayerInventory / InventoryEntry
  • PlayerMailbox / MailboxEntry
  • stack / slot / capacity invariant
  • lock order와 concurrent claim
  • Public / Admin / Internal API 경계
  • Reward ITEM delivery identity
  • Mailbox provenance
  • delivery exact-once와 claim exact-once 분리

ITEM Reward Readiness Verdict

다음 중 하나를 선택한다.

  • READY
  • READY_WITH_HARDENING
  • NOT_READY
  • BLOCKED_BY_DECISION

반드시 다음을 제시한다.

  • 근거 Finding ID
  • 최소 선행 변경
  • 권장 schema
  • InternalApi 계약
  • Transaction sequence
  • Lock order
  • Replay sequence
  • Failure matrix
  • Required tests
  • 첫 후속 구현 PR

Deliverables

다음 경로에 docs-only 감사 문서를 생성한다.

docs/architecture/audits/existing-domain-audit-1/

필수 파일:

00_EXECUTIVE_SUMMARY.txt
01_CHARACTER_AUDIT.txt
02_LIFELOG_AUDIT.txt
03_INVENTORY_AUDIT.txt
04_CROSS_DOMAIN_BOUNDARIES.txt
05_ITEM_REWARD_PREREQUISITES.txt
06_REFACTOR_PR_PLAN.txt
07_FILE_EVIDENCE_MATRIX.csv
08_DEPENDENCY_MATRIX.csv
09_TEST_GAP_MATRIX.csv
10_DECISION_LOG_CANDIDATES.txt
11_AUDIT_MANIFEST.txt

전달용 ZIP은 Git에 포함하지 않고 다음에 생성한다.

.codex-local/domain-architecture-audit-1-v1.zip

Acceptance Criteria

  • 모든 결론에 실제 파일 경로와 symbol 근거가 있다.
  • Character, LifeLog, Inventory 전체 파일을 조사한다.
  • Reward, Quest, Economy, Social, User, Outbox 소비 경계를 조사한다.
  • Transaction, lock, authority, ownership, idempotency를 구분한다.
  • P0/P1 Finding에는 구체적인 실패 시나리오가 있다.
  • ITEM Reward readiness를 명시적으로 판정한다.
  • 실제 후속 PR을 독립적으로 분해한다.
  • Production, test, Migration, config를 수정하지 않는다.
  • 기존 문서를 임의로 재작성하지 않는다.
  • docs-only 변경으로 끝난다.

Out of Scope

  • Character production refactor
  • LifeLog production refactor
  • Inventory production refactor
  • ITEM Reward Processor
  • Mailbox delivery 구현
  • Claim hardening 구현
  • Schema Migration
  • Frontend
  • Social / Economy 전면 리팩터링

감사 결과가 병합된 후 첫 구현 Issue를 별도로 시작한다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions