Skip to content

[Feature/#250] 타임라인 API 타입 및 mock 데이터 정의 - #251

Merged
jjjsun merged 8 commits into
developfrom
feature/#250
Jun 22, 2026
Merged

[Feature/#250] 타임라인 API 타입 및 mock 데이터 정의#251
jjjsun merged 8 commits into
developfrom
feature/#250

Conversation

@jjjsun

@jjjsun jjjsun commented Jun 21, 2026

Copy link
Copy Markdown
Collaborator

🚨 관련 이슈

Closed #250

✨ 변경사항

  • 🐞 BugFix Something isn't working
  • 💻 CrossBrowsing Browser compatibility
  • 🌏 Deploy Deploy
  • 🎨 Design Markup & styling
  • 📃 Docs Documentation writing and editing (README.md, etc.)
  • ✨ Feature Feature
  • 🔨 Refactor Code refactoring
  • ⚙️ Setting Development environment setup
  • ✅ Test Test related (storybook, jest, etc.)

✏️ 작업 내용

  • 타임라인 API 요청 응답 타입 정의
  • UI 그리드/캠페인 바/기간 단위 타입 정의
  • 생성/수정 모달 폼 값 스텁
  • 성과 요약 패널 타입 정의
  • UI 개발기간동안 사용할 mock데이터 추가
  • 랜딩페이지 목업 데이터와 별도로 타임라인 타입/mock 새로 추가

😅 미완성 작업

N/A

📢 논의 사항 및 참고 사항

UI 컴포넌트와 API연동, zod 스키마는 이슈 쪼개서 진행할 예정입니다.

💬 리뷰어 가이드 (P-Rules)
P1: 필수 반영 (Critical) - 버그 가능성, 컨벤션 위반. 해결 전 머지 불가.
P2: 적극 권장 (Recommended) - 더 나은 대안 제시. 가급적 반영 권장.
P3: 제안 (Suggestion) - 아이디어 공유. 반영 여부는 드라이버 자율.
P4: 단순 확인/칭찬 (Nit) - 사소한 오타, 칭찬 등 피드백.

Summary by CodeRabbit

Release Notes

  • New Features
    • 타임라인 추적 기능을 위한 데이터 타입 및 구조 정의
    • 타임라인 폼, 성과 요약 패널, UI 그리드 관련 타입 추가
    • 타임라인 목록, 상세 정보, 일일 트렌드, 플랫폼 기여도 분석 데이터 구조 지원
    • 개발 및 테스트용 샘플 데이터 포함

@jjjsun
jjjsun requested review from Seojegyeong and YermIm June 21, 2026 07:43
@jjjsun jjjsun self-assigned this Jun 21, 2026
@jjjsun jjjsun added the ✨ Feature 기능 개발 label Jun 21, 2026
@coderabbitai

coderabbitai Bot commented Jun 21, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@jjjsun, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 44 minutes and 18 seconds. Learn how PR review limits work.

Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file).

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits.

🚦 How do rate limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan refill rate.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, the refill rate gradually slows as usage increases. The highest same-day bursts are limited more strictly.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: beadbc25-e66c-4ba7-a8bc-ab23c5318dee

📥 Commits

Reviewing files that changed from the base of the PR and between 08ee0ee and 45fe9fe.

📒 Files selected for processing (2)
  • src/types/timeline/api.ts
  • src/types/timeline/timeline.mock.ts
📝 Walkthrough

Walkthrough

src/types/timeline/ 하위에 4개의 신규 파일이 추가됐다. API 응답·요청 타입(api.ts), UI 그리드·캠페인 바 타입(ui.ts), 폼 값 스키마 및 초기값(form.ts), 성과 요약 패널 데이터 모델(summary.ts)을 각각 정의하고, 이 타입들을 기반으로 한 정적 mock 데이터 상수 5개(timeline.mock.ts)를 추가했다.

Changes

타임라인 도메인 타입 및 Mock 데이터

Layer / File(s) Summary
API 도메인 타입 정의
src/types/timeline/api.ts
메트릭·성과 상태·비교 기간 as const 상수 배열과 유도 타입, 목록/상세 응답 인터페이스(ITimelineListItem, ITimelineDetail 등), 업서트 요청·뮤테이션 응답·빈 응답 타입을 정의했다.
UI 그리드·폼·요약 패널 타입 정의
src/types/timeline/ui.ts, src/types/timeline/form.ts, src/types/timeline/summary.ts
그리드 컬럼·캠페인 바·뷰 단위(TTimelineViewUnit, ITimelineGridData), 폼 값 스키마와 기본값(ITimelineFormValues, TIMELINE_FORM_DEFAULT_VALUES), KPI 카드·플랫폼 기여도·패널 전체 구조(ITimelineSummaryPanelData)를 정의했다.
Mock 데이터 상수 정의
src/types/timeline/timeline.mock.ts
위에서 정의한 타입을 기반으로 목록·상세·생성 응답·그리드·요약 패널에 대응하는 정적 mock 데이터 상수 5개를 추가했다.

예상 코드 리뷰 노력

🎯 2 (Simple) | ⏱️ ~10분

추천 리뷰어

  • YermIm
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed PR 제목이 변경사항의 핵심을 명확하게 요약하고 있으며, 이슈 번호를 포함하여 작업 추적이 용이합니다.
Linked Issues check ✅ Passed PR의 모든 코드 변경사항이 이슈 #250의 요구사항을 충족하고 있으며, 타입 정의와 mock 데이터가 체계적으로 구현되었습니다.
Out of Scope Changes check ✅ Passed 모든 변경사항이 이슈 #250의 범위 내에 있으며, 타임라인 타입 및 mock 데이터 정의라는 명확한 목적에 맞게 구현되었습니다.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description check ✅ Passed PR 설명이 템플릿 구조를 따르고 있으며, 관련 이슈, 변경사항 체크박스, 작업 내용, 미완성 작업, 논의사항을 모두 포함하고 있습니다.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feature/#250

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions

github-actions Bot commented Jun 21, 2026

Copy link
Copy Markdown

📚 Storybook 배포 완료

항목 링크
📖 Storybook https://69a147b60a56365d9e2185ef-yzigtsohdx.chromatic.com/
🔍 Chromatic https://www.chromatic.com/build?appId=69a147b60a56365d9e2185ef&number=335

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/types/timeline/api.ts`:
- Around line 44-47: The platform field in the ITimelinePlatformContribution
interface is typed as a generic string, which creates a type contract mismatch
with the UI and summary model that uses TProviderType. Replace the platform
field type from string to TProviderType (the same union type used in the
UI/summary model) to ensure type safety and consistency across the API-UI
boundary and maintain a single source of truth for domain identifier types.

In `@src/types/timeline/timeline.mock.ts`:
- Around line 83-92: The periodLabel value "27 Dec - 4 Jan" does not match the
actual date range in the columns array which spans from date 30 through date 5.
Update the periodLabel in the timeline mock to accurately reflect the date range
of the columns, changing it from "27 Dec - 4 Jan" to "30 Dec - 5 Jan" to ensure
consistency between the label and the actual column dates for accurate UI
validation.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 78aba2d1-bc9c-48f6-9f16-4f1d4fba5dee

📥 Commits

Reviewing files that changed from the base of the PR and between 62bf30a and 08ee0ee.

📒 Files selected for processing (5)
  • src/types/timeline/api.ts
  • src/types/timeline/form.ts
  • src/types/timeline/summary.ts
  • src/types/timeline/timeline.mock.ts
  • src/types/timeline/ui.ts

Comment thread src/types/timeline/api.ts
Comment thread src/types/timeline/timeline.mock.ts Outdated

@YermIm YermIm left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P4: 확인했습니다!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

✨ Feature 기능 개발

Projects

None yet

Development

Successfully merging this pull request may close these issues.

✨ [Feature] 타임라인 API 타입 및 mock 데이터 정의

2 participants