-
Notifications
You must be signed in to change notification settings - Fork 1
๐ ๋ฆด๋ฆฌ์ฆ: Staging to Main #260
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weโll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
* fix: ๐ correct CORS exposed headers formatting in SecurityConfig * fix: ๐ update Tus extension header value in TusController * fix: ๐ update Tus file location handling to use configurable path prefix * fix: ๐ change uploadLength type to Integer and improve metadata parsing error handling * fix: ๐ update mergePath configuration and adjust file merging logic in TusService
โฆtructure and readability (#243)
* Revert "fix: ๐ declare entitymanger.flush (#250)" This reverts commit dfe1afb. * Revert "refactor: โป๏ธ refactor fileid to counselsession id (#249)" This reverts commit fb28df3 * Revert "fix: ๐ add log for tusService (#248)" This reverts commit 20d7610. * Revert "refactor: ๐ delete files when error happend on merging (#246)" This reverts commit 4efaed9.
- NoContentException ํด๋์ค์ ์คํํธ๋ ์ด์ค๋ฅผ ์์ฑํ์ง ์๋๋ก ์์ ํ์ฌ ์ฑ๋ฅ ์ต์ ํ - AI ์๋ต ํ์ฑ์ ์ํ AiResponseParseUtil ํด๋์ค ์ถ๊ฐ, JSON ๊ตฌ์กฐ์์ ์์ ํ๊ฒ ๋ฐ์ดํฐ ์ถ์ถ ๊ธฐ๋ฅ ๊ตฌํ - AICounselSummaryService์์ AI ์๋ต ํ์ฑ ์ ํธ๋ฆฌํฐ ์ฌ์ฉํ์ฌ ์ฝ๋ ๊ฐ์ํ
- ๋ด ์ ๋ณด ์ ๋ฐ์ดํธ API ๋ฐ DTO ์ถ๊ฐ - ๋น๋ฐ๋ฒํธ ๋ณ๊ฒฝ API ๋ฐ DTO ์ถ๊ฐ - ๊ณ์ ํํด API ๊ตฌํ - ๊ด๋ จ ์๋น์ค ๋ก์ง ์ถ๊ฐ ๋ฐ ์์ธ ์ฒ๋ฆฌ ๊ฐ์
Test Results72 testsโโโ63 โ
โโ2s โฑ๏ธ Results for commit 2be2105. โป๏ธ This comment has been updated with latest results. |
- ์๋ด์ฌ ์ ๋ณด ์ ๋ฐ์ดํธ ์ ์ด๋ฆ๊ณผ ์ ํ๋ฒํธ๋ฅผ ์ง์ ์ค์ ํ๋๋ก ๋ณ๊ฒฝ - Keycloak ์ฌ์ฉ์ ์ญ์ ๋ก์ง์์ ์ฌ์ฉ์๋ช ํ์ธ ์ ์ฐจ ๊ฐ์ํ - ๋ถํ์ํ ์์ธ ์ฒ๋ฆฌ ์ฝ๋ ์ ๊ฑฐ
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: Active Sessions Automatically Canceled After 24 Hours
Overdue session cancellation logic now includes IN_PROGRESS sessions, causing active counseling sessions to be automatically canceled if they run 24 hours past their scheduled start time. This can disrupt ongoing consultations and lead to data loss.
src/main/java/com/springboot/api/counselsession/repository/CounselSessionRepositoryImpl.java#L143-L144
Lines 143 to 144 in 339646c
| .where( | |
| counselSession.status.in(ScheduleStatus.SCHEDULED, ScheduleStatus.IN_PROGRESS), |
Bug: API Change: `sessionNumber` Type Modified
The sessionNumber field in SelectCounselSessionRes was changed from Integer to String. This is a breaking API change as it alters the expected data type for consumers and now returns "-" for canceled sessions instead of a numeric value.
src/main/java/com/springboot/api/counselsession/dto/counselsession/SelectCounselSessionRes.java#L17-L37
Lines 17 to 37 in 339646c
| private String counselorName; | |
| private String sessionNumber; | |
| private ScheduleStatus status; | |
| public static SelectCounselSessionRes from(CounselSession counselSession) { | |
| SelectCounselSessionRes res = new SelectCounselSessionRes(); | |
| res.counselSessionId = counselSession.getId(); | |
| res.scheduledTime = counselSession.getScheduledStartDateTime().toLocalTime().toString(); | |
| res.scheduledDate = counselSession.getScheduledStartDateTime().toLocalDate().toString(); | |
| res.counseleeId = counselSession.getCounselee().getId(); | |
| res.counseleeName = counselSession.getCounselee().getName(); | |
| Counselor counselor = counselSession.getCounselor(); | |
| res.counselorId = (counselor != null) ? counselor.getId() : ""; | |
| res.counselorName = (counselor != null) ? counselor.getName() : ""; | |
| res.status = counselSession.getStatus(); | |
| res.sessionNumber = res.status == ScheduleStatus.CANCELED ? "-" : | |
| String.valueOf(counselSession.getSessionNumber()); |
Bug: Null Counselor Causes Expression Failures
A NullPointerException occurs in the CaseBuilder expressions for counselor ID and name when counselSession.counselor is null, due to accessing counselSession.counselor.status without a prior null check.
src/main/java/com/springboot/api/counselsession/repository/CounselSessionRepositoryImpl.java#L87-L96
Lines 87 to 96 in 339646c
| counselSession.counselee.name, | |
| new CaseBuilder() | |
| .when(counselSession.counselor.status.eq(CounselorStatus.INACTIVE)) | |
| .then("") | |
| .otherwise(counselSession.counselor.id), | |
| new CaseBuilder() | |
| .when(counselSession.counselor.status.eq(CounselorStatus.INACTIVE)) | |
| .then("ํํด์ฌ์ฉ์") | |
| .otherwise(counselSession.counselor.name), | |
| counselSession.status, |
Was this report helpful? Give feedback by reacting with ๐ or ๐
๋ฆด๋ฆฌ์ฆ ๋ ธํธ
์๋ก์ด ๊ธฐ๋ฅ
๋ฒ๊ทธ ์์
๊ธฐํ ๋ณ๊ฒฝ์ฌํญ