Skip to content

[TWI-90] fix: 찌르기 알림 딥링크 인증날짜가 담기게 수정#100

Merged
ParkIsComing merged 2 commits into
devfrom
twi-90
May 18, 2026
Merged

[TWI-90] fix: 찌르기 알림 딥링크 인증날짜가 담기게 수정#100
ParkIsComing merged 2 commits into
devfrom
twi-90

Conversation

@ParkIsComing

@ParkIsComing ParkIsComing commented May 18, 2026

Copy link
Copy Markdown
Collaborator

자세한 작업 내용은 연결된 리니어 이슈에서 확인 가능

Summary by CodeRabbit

  • New Features

    • Users can now specify a date when encouraging someone to certify, with the selected date reflected in notifications.
    • Endpoint defaults to today's date if none is provided for backwards compatibility with existing clients.
  • Documentation

    • Updated API documentation to clarify date handling and provide request examples for the poke endpoint.

Review Change Stack

@ParkIsComing ParkIsComing self-assigned this May 18, 2026
@linear

linear Bot commented May 18, 2026

Copy link
Copy Markdown

TWI-90

@coderabbitai

coderabbitai Bot commented May 18, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: e3f9734f-c4b5-4bcb-ae72-8792e590562d

📥 Commits

Reviewing files that changed from the base of the PR and between 4897292 and 4b30c64.

📒 Files selected for processing (7)
  • love/application/src/main/kotlin/com/yapp/love/application/notification/event/NotificationEventListener.kt
  • love/application/src/main/kotlin/com/yapp/love/application/notification/event/NotificationEvents.kt
  • love/application/src/main/kotlin/com/yapp/love/application/poke/PokeService.kt
  • love/application/src/test/kotlin/com/yapp/love/application/notification/event/NotificationEventListenerTest.kt
  • love/application/src/test/kotlin/com/yapp/love/application/poke/PokeServiceTest.kt
  • love/web/src/main/kotlin/com/yapp/love/web/poke/PokeApiSpec.kt
  • love/web/src/main/kotlin/com/yapp/love/web/poke/PokeController.kt

📝 Walkthrough

Walkthrough

This PR adds a verificationDate parameter to the poke notification flow. The date is accepted from the API client (or defaults to today), flows through the service to the published event, and is used in notification deep-link parameters instead of the current time.

Changes

Poke Verification Date Flow

Layer / File(s) Summary
Event schema with verification date
love/application/src/main/kotlin/com/yapp/love/application/notification/event/NotificationEvents.kt
PokedEvent and ReactionCreatedEvent add verificationDate: LocalDate field; LocalDate imported to replace fully-qualified type references.
Service accepts and publishes verification date
love/application/src/main/kotlin/com/yapp/love/application/poke/PokeService.kt
PokeService.poke() method adds verificationDate: LocalDate parameter, forwarded into PokedEvent payload; unused logger removed.
Notification listener uses verification date in deep-link
love/application/src/main/kotlin/com/yapp/love/application/notification/event/NotificationEventListener.kt
Deep-link params now use event.verificationDate.toString() instead of LocalDate.now().toString().
Web controller accepts optional date in request body
love/web/src/main/kotlin/com/yapp/love/web/poke/PokeController.kt
POST endpoint accepts optional PokeRequest body with ISO-formatted date field; defaults to LocalDate.now() when absent. New PokeRequest data class added.
API documentation for date handling
love/web/src/main/kotlin/com/yapp/love/web/poke/PokeApiSpec.kt
PokeApiSpec metadata expanded with requestBody schema, examples for today/past dates and legacy clients, and new 400 error response example. Korean description explains date passthrough to deep-link.
Service tests use deterministic verification dates
love/application/src/test/kotlin/com/yapp/love/application/poke/PokeServiceTest.kt
Fixed verificationDate constant introduced; all poke() calls pass the date. Success and exception-path tests updated to assert/provide verificationDate.
Listener tests assert fixed deep-link dates
love/application/src/test/kotlin/com/yapp/love/application/notification/event/NotificationEventListenerTest.kt
handlePoked tests use fixed verificationDate (2026-05-18) and assert deep-link params contain the fixed date string instead of dynamic LocalDate.now().

🎯 3 (Moderate) | ⏱️ ~20 minutes

🐰 A date hops through the poke flow so true,
From client request to event, shiny and new.
Deep links now know when to celebrate cheer,
No more "today" guessing—verification's clear! 🎉

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title accurately describes the main change: updating the poke notification deep link to include the verification date instead of using the current date.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

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

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch twi-90

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

@github-actions

Copy link
Copy Markdown

Test Results

 21 files  ±0   21 suites  ±0   6s ⏱️ ±0s
114 tests ±0  114 ✅ ±0  0 💤 ±0  0 ❌ ±0 
126 runs  ±0  126 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit 4b30c64. ± Comparison against base commit 4897292.

@ParkIsComing ParkIsComing merged commit 832e6d6 into dev May 18, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant