Use string IDs for pipeline detail APIs (JS safe integer)
- posApi: getOrder, getMortgageApplication, getEngagementById, getBooking accept number | string, URL uses String(id) - Detail pages: pass route id (string) to ...
JS 안전한 integer를 위한 JSON의 문자열로 POS DTO uid/id를 직렬화
- RetailOrderDTO.uid, **************** 참여DetailDTO.id/linkId, MortgageAppDTO.uid - ID가 2^53을 초과할 때 @JsonSerialize (using = ToStringSerializer.class)를 사용하여 정밀도 손...
Apply same null referrer fix to link tracking route
The same bug exists in the link route (q/[slug]) where request.headers.get("referer") returns null for requests without a Referer header, causing silent Zod val...
Restore form controls on settings member tabs - fix flex layout collapse
- TabPanel: keep overflow-y auto for scroll, use overflowX hidden - SettingsView: move scroll to parent Box, motion.div uses display block to size to content - ...
Handle null referrer in pixel tracking route
request.headers.get("referer") returns null when the header is absent (e.g. email clients). The Zod schema uses .optional() which accepts undefined but rejects ...
Restore vertical scrollbar and fix collapsed panes on settings pages
- TabPanel: change overflow from hidden to auto for tab content scrolling - SettingsView: enable overflow-y auto on tab content Box and motion.div - ProfileTab:...
Force light mode - prevent OS/browser dark mode from affecting site
- Add force-light-mode-styles.ts with override rules - Inject override in DynamicMetaLoader after external theme CSS loads - Add server-rendered fallback style ...
FindByUidAndOrganization Id에 대한 명시적 @Query를 사용하여 배포 / 스타트업 문제 발생 방지
Null-safe API response handling + shared layout for sub pages
- posApi: add null checks for getOrder, getMortgageApplication, getEngagementById, getBooking, getProduct, getRentalAsset, getRentalRequest, getAgreement, g...
Use relative import for StatsManager to resolve module resolution in build
Pipeline datagrids collapsed, restructure to match leads layout
- SettingsView: tab content container now uses display:flex, overflow:hidden so flex chain passes height to grids (fixes collapsed grids in POS settings) - Pi...
Enable commerce JPA repos for POSController/CommerceService
SecurityService POSController depends on CommerceService which uses engagement, order, intent, etc. repositories. These live in com.kamo.z.shared.commerce.* but...
BaseEntity-derived 관계 대신 Uid 사용
- FulfillmentOrderRepository : findBySourceCommitmentId -> findBySourceCommitmentUid (준비 용도 uid) - TransactionRepository: findByOrderId -> findByOrderUid (주문 사용...
Resolve Map type inference in POS controllers for CI compilation
- Use explicit Map<String, Object> in ResponseEntity Map.of() calls - Fixes 'incompatible types: inference variable V has incompatible bounds' when mixing DTO...
DataLoader IOException import and mock lead assignment FK errors
- Add missing java.io.IOException import for copyJavaEnumsToNextJS - Use saveLead instead of saveLeadWithAssignment for mock data to avoid lead_assignments FK...
Stabilize connection line physics and mouse proximity
- Only apply mouse proximity force after mouse has moved (avoids 0,0 affecting lines on load) - Guard mouse position with Number.isFinite before use - Clamp con...
더 낮은 단면도를 위한 단면도 제목과 격자를 삭제하십시오
- CRM, 전자 메일, 전화 섹션의 var(--color-primary) 사용 - E-Mail 및 전화 (3 카드)에 대한 lg에 3 대의 그리드를 사용
New answer field maintains focus while typing
- Added local state for new answer input (newAnswerValue) - Input no longer triggers array update on each keystroke - Answer is added on blur or when pressing E...
Restore task item selection while keeping line clicks
- SVG container back to pointer-events-none (allows clicks to pass through) - Hit area paths use pointer-events: stroke (only the line itself is clickable) - Vi...
Position logo between background color and grid lines
- Removed duplicate backgroundColor from canvas-container - Background color is on scroll container, logo is fixed above it - Grid lines overlay on top of logo ...