Stamp unseen counts on the ticket list, 과 유지 큐 라이브
getTickets now bulk-loads the unseen-message count per row for the caller, 게다가 방문자는 이미 그 방법을로드, 그리고 getTicketDetail 자신의 이해 독자의 markAsRead 땅의 앞에 — 그래서 창은 무슨 도착한지...
대화를 하지 않는 뷰어의 메시지 카운트
Unread는 시청자의 자신의 MediaSessionMember 행에서 항상 파생되었습니다, 그래서 그들이 참여하지 않은 대화는 전혀 계산되지 않았습니다. 지원 큐에 그 중 대부분은 — 27 의 37 라이브 티켓은 할당되지 않습니다, 그리고 26 의 그 한 세션 멤버가 여러분의 도움을 ...
삭제, 자석, 오른쪽 클릭 메뉴, 그리고 누가 묻는 시계
기간 그래프와 nav 시계에 6개의 추가. DELETE는 집중된 알약을 제거합니다. Backspace 너무, Mac에서 키 labelled "delete"는 백스페이스이며, 삭제는 단축키를 의미합니다. 노트북에 존재하지 않습니다. 그것은 양쪽의 펀치, 그래서 식사 삭제 그것이 지속의 ...
펀치 void를 릴레이
POST /punches/{id}/void에 대한 Passthrough, 편집기의 삭제 키와 두 개의 인접한 스팬 뒤에 기계. /correct와 같은 권한과 같은 이유 : EMPLOYEE는 그들의 취약점이 될 수 있습니다 자신의 펀치, "두 배는 결코 일어난다"라고 말할 수없는 회원 ...
펀치는 삭제될 수 있습니다
4개의 nullable 란과 TimecardPunch에 두번째 쓰기 온스 전환. · void는 펀치가 존재하지 않는 것을 말한다 - 시계에 더블 탭, 버려진 휴식, 또는 2 사이에 솔기 타임 카드 편집기는 단지 하나에 합병. 그것은 보정이 없다 ("이 일어난, 다른 시간, 교체 행을 남...
Hr timecard punch에 void 열
TimecardPunch entity에 4개의 새로운 null이 없는 열을 미러링합니다. void는 입니다 삭제 및 수정 없음 : 펀치가 존재하지 않아야한다고 말합니다. — 시계에 두 배 탭, 버려진 휴식, 또는 2개의 경간 사이 솔기 편집기는 하나에 병합. SUPERSEDED BY P...
결합 열의 80%에 org 로고 크기
결합 스크린은 objectFit로 40px 높이의 브랜딩 로고를 캡핑했습니다. 포함, 그래서 그것은 300px 열 안쪽에 Letterboxed를 렌더링 원본 이미지가 없습니다. 80 %의 폭을 명시하고 대신 자동 높이, 또한 패딩콘트롤을 overrides 직접 아이들을 100 %로 뻗어...
Yugabyte cutover 이후 깨진 kamouniverse 백업을 복구
죽은 CockroachBackupMisssing 경고를 이전 커밋에서 이름을 변경 화재는 즉시 : 우주 백업이 2026-08-09 이후 성공했다 관련 기사 두 개의 독립적 인 결함, 둘 다 그 경고를 일치 더 이상 존재하지 않는 이름. 1. `mc: 명령을 찾을 수 없습니다. Cock...
은퇴 CockroachDB 이제 YugabyteDB는 데이터를 소유
CockroachDB v24.2.4는 오래된 자유로운 BSL의 밑에 마지막 방출에 pinned 2026-08-09에 YugabyteDB로 대체되었습니다. 아무것도 연결 그것 때문에; 제거 (kamo 728/728 테이블의 앞에 reverified, kamouniverse 111/111,...
1개의 계획 & 빌링 스크린 대신에 2개의 그것 각 대답된 반
플랫폼에는 2개의 청구 스크린이 있었습니다. /settings/account?tab=요금 청구 조직이 지불하는 것; 계획 및 회원 프로필에 빌링은 무엇을 대답 한 사람의 지불. 네이터 이름은 당신이 원한 것을 말하고, 분할은 아니었다 심지어 깨끗한 : 조직의 콘솔 - 실제 가격으로 계획...
유가바이트DB의 포인트, 'mvn test`의 migrating 생산 중지
데이터 소스는 여전히 포트 26257을 명명. 그것이 은퇴 한 CockroachDB, 이는 아직도 달리고 아직도 대답, 그래서 완전히 성공에 대한 실행 아무것도 도달: ACCOUNT HISTORY는 데이터베이스에 생성 된 서비스 읽기, 동안 SecurityService 배포는 Yugab...
CRM 시장이 존재하지 않을 때 시장에 온보딩 패널 표시
/leads는 빈, 장애인 시장 탭 바와 리드 그리드를 렌더링 CRM 시장을 결코 구성하지 않았다. 이제 같은 온보딩 패널을 보여줍니다. /commerce는 누락된 상거래 시장에 대한 쇼 — 추출 MarketOnboardingEmptyState 그래서 두 가지 숙박 동일 — CRM 리드...
다시 시작, 청구 마이그레이션 자체 인덱스를 삭제
KamoInitializer는 전혀 시작할 수 없습니다. Hibernate는 CockroachDialect를 검출합니다. supportInsertReturning() 및 *********** 모두 false, 그래서 @Id 운반 @Generated (event=INSERT) - 29 공...
새로운 메시지를 열고 나머지를 스크롤
긴 대화를 열어 가장 오래된로드 된 메시지가 처음과 다음 회원이 대기하면서 현재로 이동했습니다. 두 채팅 표면 목록이 이미 상단에 그려진 후 아래쪽으로 스크롤했습니다. rAF → rAF → setTimeout(0), TicketChat을 통해 채팅 setTimeout(..., 50) —...
기간 그래프 및 timecard는 초안으로 편집합니다
1일 타임라인을 ***********로 대체합니다. 전체 급여 기간, 그리고 어떤 편집을 변경 같은 느낌. 약은 텍스트가 없습니다. 그들은 자신의 시간을 수행하기 위해 사용, 라벨은 60px 넓지만 긴 것은 설명했다 — 그래서 10 분 휴식과 4 시간의 이동은 같은 알약을 붓고, 한 ...
에디터의 연령대를 릴레이
GET /members/{id}/range에 대한 Passthrough, 기간 그래프의 읽기. 에서/ TimecardService가 회원의 급여를 해결할 수 있도록 만 전달 period — forwarding "?from=&to=" 은 공백 문자열 다운스트림과 바인딩합니다. 침묵으로 모...
누군가가 그것에 응답 할 때 지원 대화를 올리십시오
지원 창을 닫지 않고 대화를 떠나지 만 처리되었습니다. 그것이 있다면. ChatNotificationListener는 모든 SUPPORT TICKET에 일찍 돌아갑니다. 알림 - 올바르게, 티켓이 일반 채팅 창을 열지 않기 때문에, 그것은 전혀 살아있는 re-open 없이 지원을 떠났습...
한 대화, 많은 손 - 열려있는에 가입, 모든 메시지, 회신에 다시 열
지원 티켓은 누구든지 돕고, 누구든지에 의해서만 일합니다 현재 스탬프. Assignment는 작업이 제공하는 것을 결정합니다. 목록에서 그것을 보여줍니다; 그것은 결코 대화에 잠금을 의미하지 않았다. 이제 티켓 열기는 미디어 세션에 참여합니다. 전, 개설한 대리인 그들에게 할당되지 않...
Feed queries' aliases를 인용하고 자신만의 지원 메시지를 계산하십시오
채팅 피드에 두 개의 독립적 인 결함, 모두 자바 측에서 보이지. 원어민 채팅 / 지원 / 사회 쿼리는 camelCase에 있는 열을 aliased 그들을 인용. 행은 별명으로 키워진 지도로 돌아옵니다; Hibernate는 그들을 가지고 갑니다 키 ...에서 *********** 어떤...
Linkable 탭, 작업 추가 회원 및 전체 역사 탭
/account/view/{id}의 모든 탭은 실제 경로입니다 — /members, /history and 나머지는 누군가가 보낼 수 있습니다, bookmark, 또는 땅에. 늙은 ?tab= 링크 리디렉션 일치하는 것. 각 탭은 자체 데이터를로드하므로 계정을 더 이상 열 수 없습니다. ...
ACCOUNT HISTORY 만들기
Kamo-shared-library의 accountHistory entity를 미러링합니다. 견적 요청 기본적으로 ID와 DATE CREATED 때문에 ddl-auto로 왼쪽 데이터베이스를 기본적으로 수행하므로 일반 SQL 인서트는 naming하지 않고 작동합니다. Hibernate의 ...
계정 역사 엔드포인트, 실제 회원 행, 모든 회원 디렉토리
계정보기는 이제 계정과 그에 무슨 일이 있었는지 말할 수 있습니다. - 계정 표면 기록 기록에 대한 모든 돌연변이: 생성, 필드 편집, soft delete, 병합 (잃어버린의 timeline을 survivor로 이동) 그것을 떨어뜨리기 보다는), 주소, 주 및 일원 add/remov...
계정의 감사 트레일, 그리고 비 사고를 포함하는 디렉토리
ACCOUNT HISTORY는 LEAD HISTORY 레코드를 계정으로 보내는 것을 기록합니다. 리드에 무슨 일이 발생 — deliberately 같은 열, 내부 때문에 사이트는 이제 하나의 구성 요소와 두 번째 모양을 통해 모두 강제 될 것입니다. 두 번째. - AccountHist...
펀치를 쓰기 전에 시계 in/out 확인
Nav 시계 펀치 똑 바른 떨어져서 클릭. 그 막대기에 있는 다른 통제 idempotent 또는 trivially undoable입니다; 펀치는 뒤에 오는 임금 기록입니다 필수 작성된 이유를 가진 HR 관리자만 수정할 수 있습니다 — and the button Logout에서 하나의 픽...
한 스트립 - 필터와 하위 탭 옆에 새로 고침
컨트롤 탭 스트립 아래 두 번째 전체 폭 행에서 sat 세 개의 짧은 단어와 아이콘, 팬의 전체 밴드를 보내는 것은 무엇에 공간에 맞는 탭 라벨은 이미 빈을 떠나. 그들은 이동 탭 행, 오른쪽 정렬; 그리드는 높이를 유지합니다. 두 패널의 필터는 부모에서 렌더링하므로 행을 변경할 수 ...
옵션 스트립을 생성하는 것은 클러스터 대신 방을 생성
왼쪽 클러스터는 minWidth를 수행 : 0 그 내용 (현재)은 거부 수축 또는 포장, 그래서 혼잡한 막대기 shrank 그것의 자신의 내용 및의 밑에 상자 content spilled 아웃 에 the right — 언어 단추 was draw straight over 로그아웃 링크. ...
선택의 장소에 있는 Segmented 상태 필터
Pending/Complete/All는 1개의 선에 적합했던 3개의 짧은 동료입니다, 그래서 드롭다운 클릭 뒤에 두 가지를 숨기고 라벨과 170px를 보냈다. 아무것도 말하지 않는다. 닫히는 선택은 또한 대답할 수 없습니다 "나는 봐 모두?"그것을 열지 않고. 관련 기사 필터 공유: ...
Skeleton는 공유 그리드 헬러를 추적; jsonBody의 204 가드를 테스트
App/hr/overview/page.tsx에 있는 선적 skeleton는 아직도 손으로 wrote 1800px Breakpoint는 OverviewPillars와 친구가 추출 한 primitives.tsx (WIDE BREAKPOINT / 칼럼 트랙 / 반응형 컬럼). 같은 도우미로 ...
CurrentPeriod의 승인을 따르고, null을 0으로 읽습니다
SecurityService 7c55054는 현재 내부의 waitingApproval을 이동했습니다. 실제로, omits는 완전히 열리면. 페이지는 그것의 withheld를 파생했습니다 두 개의 구성 요소에서 두 번 신호, 두 개의 다른 표현과 함께 - 어떤 테스트 중 하나 `=== n...
Two-up Figure rows 그래서 카드 라벨 랩 없음
그림 라벨은 연산자 라벨입니다 - 상부, 11px, 0.12em 추적 - 158px에서 "Execution incomplete"를 넣어, 150px에서 "잠금 예외" 135px의 "Awaiting 승인". 분기 페이지 카드 안쪽에 3 위로는 각을 줍니다 그림 131px, 그래서 그 세는...
고정 크롬 라벨을 두 개의 라인 건너 뛸
플렉스 아이템의 자동 최소 크기는 min-content width입니다. 래핑 텍스트는 가장 넓은 단어입니다. 그래서 혼잡 한 바는 이러한 컨트롤을 짜 56px-tall bar 안에 라벨을 깰 수 있습니다. 2 의 4 크롬 링크는 자신의 whiteSpace를 수행 : nowrap 및 다...
블록 당 하나의 스냅 샷, 그들이 측정하는 것을 말하는 그림
둘 다 요약 방법은 @Transactional (readOnly = true)입니다. 각 문제 6 또는 7 개의 읽음 그의 그림은 십자가 검사 된 ACROSS 쿼리 경계: countOverdueByMemberForOrg 의 javadoc 는 per-member Figures 합계를 약속...
읽지 않은 닫히는 몸은 알 수 없습니다, 그리고 승인 조사는 그것의 창으로 움직입니다
잘못된 방향 버그가 고정되고 응답 모양이 확인되지만, CLASS 아직 공개되지 않은 실패: TimecardService가 `blocking`로 이름을 변경하면 그것을 떨어 뜨리고, 또는 물체로 reshapes, 릴레이는 아직도 200의 아무것도 대답합니다 던지고, 개는 조용히 0을 읽습...
요약 슬라이스를 볶습니다. 1 회 협회 및 스캔 대신 계산
개요의 관심과 최근 슬라이스는 LAZY에서 행당 제목을 읽습니다. @ManyToOne, open-session-in-view의 블록당 최대 16개 추가 선택 비용. 모든 4 조각 지금 LEFT JOIN FETCH 그것. fetch는 두 협회 모두가 있기 때문에 Pageable 옆에 안...
시계 아이콘에 한 광택, 버튼의 주위에 두 가지
규칙은 방사능과 상자 그림자를 수행. 그라디언트 상자 그림자가 외부에 별도의 링을 그린 동안 자체 상자 - 두 단일 규칙에서 동심의 글로우, 그것은 정확히 어떻게 본. 또한 IconButton에 sat, 그래서 외부 반지는 단추의 둥근 추적했습니다 rectangle는 전체적인 통제의 ...
옵션 분쇄 대신 군중 nav를 슬라이드
Nav 보다는 더 많은 선택권을 핀으로 꼿는 모양에서 도와를 밖으로 짜낼 수 있습니다: 두 개의 스트립은 익지않는 오버 플로우 상자이고 타일은 코드 아이들이 없습니다 그들의 자신의 flex-shrink, 그래서 상단 바는 그들을 파괴 (그리고 숨겨 scrollbar outright, 그...
Locale-correct 구조화 된 데이터 및 robots.txt 규칙은 아무것도 일치하지 않습니다
모든 BreadcrumbJsonLd 및 ItemList URL은 /en에 하드 코딩되었으므로 구조화되었습니다. /fr/terms의 데이터는 크롤러에게 빵 부스러기 부모가 영어 페이지였다고 말했다. 19 의 URL 15 파일, 금전적 및 hreflang 같은 페이지 관련 기사 그 페이지의...
카드 번호를 공유 기본 라인에 줄
마스트헤드의 모든 인물과 4 개의 기둥 카드는 자체 겹쳐 쌓이는 박스였습니다. 위의 연산자 라벨, 아래 값. 통신수 상표는 0.12em를 가진 uppercase입니다 "Overdue"의 카드 컬럼 내에서 추적, "Execution 불완전한"두와 "그런 시도"3,그리고 각 값은 따라서 시...
Withheld 승인 상태는 명확하지 않은, 렌더링
attendanceState()는 blockingExceptions가 0이고, 각 멤버 'clear'를 표시했습니다. timecardState는 'SUBMITTED'가 아닙니다. - 콜러 부족의 모든 구성원에 대한 사실 FINALIZE PAY PERIODS는 서버가 timecardSta...
실패한 close-readiness 릴레이 잎 waitingApproval 알 수없는, confident 0
FINALIZE PAY PERIODS가 개최되었으며, 5xx/404/unparseable close-readiness 응답이 왼쪽 waitingApproval은 처음 0에 앉아 - WARN 로그가 불을 붙였지만 HR 개요는 여전히 렌더링 된 "모든 타이머는 명확합니다." 릴레이가 실제로...
19개 언어의 수집 세부 페이지
Sync가 완료되었으므로 ~2,400 개의 세부 페이지가 없습니다. English body copy now have real translations and can be indexed. 연구분야 모든 21 지역 전역: 0.0%와 8.8% 사이의 모든 토지 수집 영어와 동일한 값, sw 및...
AwaitingApproval은 무효이며, null은 0이 아닙니다
SecurityService는 콜러의 요약의 승인 절반을 기록합니다. FINALIZE PAY PERIODS 없이 - 해결은 MANAGE TIMECARDS를 인정하지 않습니다. 승인 기관, 그래서 합성은 수와 per-member에 손을 잡았다 승인은 플랫폼이 직접 봉사하는 것을 거부합니다...
FINALIZE PAY PERIODS에서 hr-summary의 승인 반을 게이트
Close-readiness widened 특권에 작곡가를 지적합니다. 그 릴레이 FINALIZE PAY PERIODS로 매핑 가드를 매핑하고, 해결은 인정되지 않습니다. MANAGE TIMECARDS는 PAYROLL이 아닌, MANAGER이 아닙니다. 그래서 MANAGE TIMECAR...
Honest Compliance Figure, per-section 실패한 상태, 올바른 gating
돛대head 비율 혼합 단위는 단지 flatter일 수 있었습니다. `complete` 요약 org-wide ASSIGNMENT counts while `open` counted MEMBER-DOMAINS off memberRows, 회원당 2명에 넣었습니다. 800명에 달하는 50명의...
0을 보내는 대신 per-member overdue rollup을 채우십시오
두 요약 서비스는 .overdue(0)과 함께 회원[]를 구축했습니다. 개요 매트릭스 그 분야의 지점, 그래서 법적 및 훈련은 amber를 렌더링 할 수 또는 녹색과 최악의 일종은 분류하지 않았습니다. 각각은 (회원, 상태) histogram과 함께 새로운 그룹화 된 쿼리를 읽습니다....
출석 요약은 존재하지 않는 경로 호출
summarize() 요청된 TimecardService 에 대한 *********** 그것은 SecurityService MAPPING의 이름이며, 어떤 다운스트림 경로가 아닙니다. TimecardService에는 그런 경로가 없습니다. TimecardServiceClient는 404...
Per-member는 수락 matrix를 위한 rollup를 초과했습니다
HR 개요의 'row.overdue > 0'에 행렬 지점이지만 법적 및 교육 롤업은 그 필드가 하드 코딩 0 - 할 수있는 지점 결코, 그래서 두 개의 도메인은 amber 또는 녹색을 보여줄 수 "sorted 최악의 첫 번째"절감. (회원, 상태) histogram은 대답할 수 없습니...
Derive Summary 기둥 깊은 링크에서 sub-tab id 맵; kill dead textSecondary in activity rail
개요Pillars.tsx 하드 코딩 *********** 대신 그들에 **************** 주의사항Ledger.tsx는 이미 — 같은 name-indexed pattern apply here so a rename in one place is a compile error, 아니 ...
개요 탭을 다른 네 위에 보고하십시오
전체 폭 보고 콘솔: 돛대head readout, 4개의 탭 기둥, needs-attention ledger, 인력 준수 매트릭스 및 활동 철도. read-only — 모든 행동은 자기 탭에 깊은 링크입니다.