Address review issues
- Validate intermediate steps when jumping forward via stepper - Pass warnings as query params instead of losing them on navigation - Revoke previous AI-generat...
Add auth check and sanitize input on POST /org
- Return 401 if no authenticated user (prevents orphan orgs) - Build Organization from allowed fields only (prevents mass-assignment) - Fix colors field name (w...
Restore full step component implementations
Replace stub step components with the complete implementations that include all form fields, validation, and UI logic for each wizard step.
Add proactive session extension to prevent timeout while user is active
The session monitor only extended the Redis session when TTL dropped to ≤5 minutes, and at that point silently auto-extended without showing the warning popup. ...
Swap My Account and My Branch buttons and reduce NavTop gaps
Swapped positions of "My Account" and "My {branch title}" buttons in the top nav, and halved all container-level gaps for tighter spacing.
잘못된 stale Redis 캐시가없는 org 레이블 필드
SecurityService 업데이트 전에 org 데이터가 부족합니다. memberTitleNonPlural 필드. 이 검색 및 재-fetch 신선한 자료 그래서 사용자 정의 회원 / 팀 라벨 디스플레이 올바르게.
Include member title labels and shortTitle in org domain response
The /org/domain/{domain} endpoint was missing memberTitlePlural, memberTitleNonPlural, teamMemberTitlePlural, teamMemberTitleNonPlural, and shortTitle fields fr...
다음을 통해 모든 외부 API 호출 프록시.js는 CORS를 피하기 위해
Catch-all /api/security/[...path] 프록시 경로 및 업데이트 추가 ThemeConfig, FormAccountRecovery, FormPassportID, FormPersonalInfo, FormRecoveryEnforcement는 직접 대신 로컬 프록시를 사용...
다음을 통해 프록시 국가 API.js 및 비활성화 테스트 모드
Api.kamocrm.com에 직접 fetch는 CORS로 인해 실패했습니다. 추가 /api/countries 프록시 경로(same pattern as /api/org) 및 비활성화 USE TESTING MODE.
Forgejo 워크플로우에 대한 전체 GitHub URL 사용
Shorthand ref(e.g. action/checkout@v4)는 수정할 수 없습니다. Forgejo 런너. kamo-internal의 작업 형식으로 정렬.
Use JdkClientHttpRequestFactory to support PATCH method forwarding
The default RestTemplate uses SimpleClientHttpRequestFactory (HttpURLConnection) which doesn't support the PATCH HTTP method, causing branch-titles save to fail...
Move loginOrgOpt declaration outside try block to fix scope error
The variable was declared inside the first try block but referenced in the second try block for parent branch title resolution.
Move useUserInfo hook into OrgStep component to fix build error
getParentBranchTitleNonPlural was referenced in OrgStep but only destructured in the parent CreateNetworkPage component.
Resolve session timeout maintenance system not running
Root cause: sessionMonitor.start() called stop() after setting this.config, which nullified the config before the 3-second startup timer fired. As a result, the...
Hide re *** 텍스트 attribution 모드가 활성화되면 배지
내부 배지를 대상으로 한 overly-specific CSS selector 수정 #re***-컨테이너. Google은 <body>에 직접 배지를 주사합니다. 그래서 규칙은 일치하지 않습니다. .gre***-badge로 변경 가시성: 존재하는 DOM 요소 유지 (Google에 의해 필요...
외부 어두운 형태 CSS를 override하는 힘 빛 형태
- 어두운 유틸리티를 방아쇠에서 OS 선호도를 방지하기 위해 Tailwind DarkMode 설정 - !important overrides in globals.css to lock light mode 변수 - 외부 CSS가 DynamicMetaLoader에 로드한 후 인라인 스타일을 주...
Resolve horizontal overlap, follower blind spot, and timing bugs
- flyToHomeRow: compute per-follower actual dx extents to derive rightBuffer/leftBuffer independently, placing anchor correctly to prevent ring followers from...
OS 색깔 계획 선호도에 관계없이 힘 빛 형태
Removed prefers-color-scheme 다크 미디어 쿼리 그래서 사이트는 항상 빛 모드에서 렌더링합니다.
Bake Size slider zoom into saved SVG via viewBox crop
Avatar Creator's internal scale transform zooms the avatar body within the SVG canvas, but the effect is imperceptible at small display sizes (e.g. a 140x140 Av...
Avatar 미리보기에서 중복 CSS 스케일 변환 제거
Avatar Creator의 스케일 옵션은 이미 SVG 그룹으로 스케일(N/100)을 적용합니다. avatar 몸에 변환. 미리보기 컨테이너도 적용 CSS 변환: 스케일 (N/100), 효과를 합성 (2.5 × 2.5 = 6.25x 250 %에서. 이것은 미리보기가 drastically...
MakeRoom 및 post-dock 충돌 해결
No-op hexheads를 대체하십시오: 진짜 핸들러를 가진 회의실 청취자 그것은 새로운 도구 창의 DOM rect 후 해결 충돌을 실행 안정되어 있습니다. 청취자 누출을 수정합니다 ( 익명, 결코 정리되지 않음). 또한 실행 resolveCollisions 후 포장 중Dock 그래서...
비-snap drop 및 swarm 후 충돌 해결
Non-snap drops now run resolveCollisions before save 위치, 아래쪽 모서리에 겹쳐 쌓이는 방지. Swarm 방울도 resolveCollisions 를 실행하고 이제 제대로 persist 포지션을 실행합니다.
FlyToHomeRow의 그룹웨어 슬롯 폭
그룹은 이제 수평 슬롯을 그들의 추종자에 비례 반지 범위 (정확한 편평한 정상 축 공식을 사용하여), 예방 그룹 invading 이웃 앵커의 공간에서 추종자. 또한 추가 double-rAF는 배치 후에 안전 그물로 충돌합니다.
Z-index DOM 정렬을 제거하여 이벤트를 떨어뜨릴 수 있습니다
ToolDock의 zIndex에 의해 정렬 창은 DOM 노드가 모든 것을 주문하는 데 발생했습니다. 초점 이벤트 (mousedown). Browsers 드롭 클릭 이벤트 때 대상 요소 마우스 다운과 마우스 업 사이 이동, 두 번째 클릭을 필요로 버튼 활성화. CSS z-index는 DO...
Bake background color/gradient into saved Avatar Creator avatar SVG
Avatar Creator generates transparent-background SVGs by default. The background was only applied as a CSS wrapper on the preview container, so the stored MinIO ...
Dispatch member-panel-toggle via useEffect to avoid stale Framer Motion closure
onAnimationStart/Complete hold the last rendered props, so the exit animation always saw isOpen=true and windows never relayed to the right on close. Using a us...
Correct member-panel-toggle event property so tool windows respect panel offset
The event was dispatching `{ isOpen }` but ToolWindowsContext read `detail.open`, causing memberPanelOpenRef to always be falsy and the 500px panel offset to ne...
Eliminate hexhead spawn overlap by computing unique column positions
Each head now initialises its MotionValue at its own home-row column X and below the viewport (h + SIZE), then springs up to its final slot. Previously all head...
Use inline style for icon colors to prevent CSS specificity override
sx-generated color classes were being overridden by Tab card context styles. Switching color to inline style prop ensures icons always render with the correct c...
Add kamo.commerce.enabled=true to k8s configmap
This is the file the CI pipeline actually applies (k8s/configmap.yaml). Required for CommerceService and EngagementLifecycle to load under the new @ConditionalO...
Add KAMO_COMMERCE_ENABLED=true to k8s configmap
Required for CommerceService and EngagementLifecycle to load now that they use @ConditionalOnProperty instead of @ConditionalOnBean.
MatchIfMissing=false 의 상업 콩에 대한 ConditionalOnProperty 추가
CommerceService 및 EngagementLifecycle이 명시되어 있습니다. kamo.commerce.enabled가 설정되지 않을 때 기본적으로 비활성화됩니다. 속성을 구성하지 않는 모든 서비스는이 콩을 건너 뛸 것입니다.
Enable commerce beans via kamo.commerce.enabled property
CommerceService and EngagementLifecycle now use @ConditionalOnProperty instead of @ConditionalOnBean. Set kamo.commerce.enabled=true so they load in SecuritySer...
ConditionalOnBean 을 대체하십시오
***********는 봄의 앞에 평가됩니다 Data JPA는 사용자 정의 저장소 콩을 등록하여 신뢰할 수 있습니다. ***********로 교체하십시오. 재산 해결책 단계에 평가되고 항상 믿을 수 있습니다. commerce (SecurityService)가 application.ym...
Prevent overflow:hidden on tab card from clipping status widget
Move overflow:hidden from the Card to the Tabs wrapper Box so scrollable tabs are contained but the right-aligned status/substatus widget remains fully visible.
Correct hexhead geometry, z-index layering, and viewport clamping
- Fix axialToPixel to use flat-top hex formula (was pointy-top) so honeycomb aligns flat-edge to flat-edge as the hex SVG shape requires - Fix generateRing to...
Use Next.js client-side navigation for all MUI Link components
MUI Link without component={NextLink} renders as a plain <a> tag, causing full page reloads that reset all React state including tool windows. Added component={...
Replace window.location hard navigations with router.push/refresh
All window.location.href, window.location.assign(), and window.location.reload() calls in page components caused full page reloads, wiping all React state inclu...
Move ToolDock above auth gate to prevent tool window wipe on navigation
PresenceWrapper switches its component tree structure when auth resolves (Fragment > children → ChatWebSocketProvider > PresenceProvider > children). This unmou...
임베디드 채팅 모드로 도구 모음 및 검색 변경 적용
ChatBox는 항상 ChatTool를 통해 임베디드 모드에서 렌더링됩니다. 이동하기 검색 필드와 스크롤-to-bottom 버튼으로 도구 모음을 호출 임베디드 섹션으로 변경은 도구 창에서 볼 수 있습니다.
Data-chatbox-root에서 HexHeadGroup selectors를 data-tool-window로 업데이트하십시오
도구 창 시스템은 ToolWindowShell에 data-tool-window를 사용하지만, HexHeadGroup은 여전히 풋프린트 검출을 위해 data-chatbox-root를 쿼리했습니다. 이것은 hexheads가 벌집을 끊는 어떤 열린 공구 창을 볼 수 없습니다 정렬, 랩 - 라...