Add go-sql-driver/mysql v1.7.1 checksum to go.sum
go mod tidy without source files is a no-op, so the mysql checksum was never added. Generated the correct h1 hashes via a throwaway golang:1.22-alpine container...
AttributeConverter를 통해 CountryType의 레거시 ordinal 문자열 처리
DB 행은 종단 정수로 저장된 국가 (예 : UNITED STATES의 "186") enum 이름 대신, findAll()에 IllegalArgumentException 발생. CountryTypeConverter는 valueOf가 실패할 때 ordinal lookup로 돌아갑니다, 항...
Tsx를 배경으로 즉시 번역 작업을 취소
Forgejo가 워크플로우를 취소할 때, bash는 전방 아이를 기다립니다. 신호를 처리하기 전에 완료하기 위해 - 그래서 tsx locale 일을 실행 런너 슬롯을 들고 분 동안 취소를 차단합니다. 수정: tsx를 실행하고 $CHILD PID를 기다립니다. bash 종료 대기() 즉...
ASTERISK CDR DSN을 로컬 config.json로 이동하여 CI/CD 비밀이 아닙니다
CDR credentials는 각 FreePBX 서버에 로컬이며 비즈니스가 없습니다. CI/CD 파이프라인에. 연산자 추가 ASTERISK CDR DSN 직접 자신의 API KEY와 PHONE SERVER ID와 함께 구성.json. config.go 필드 그리고 모든 런타임 동작은 변...
GetDomainById 및 검증된 엔드포인트에 대한 높은 액세스 허용
최고 수준의 org 소유자 및 시스템 구성원은 getDomainBy에 403을 얻고있다 ₢ 킹 and valid-dns because 그 endpoints check isUserMemberOf Org 직접. hasElevatedCrossOrgAccess 헬퍼를 추가하고 회원 확인과 함께...
기존의 org 도메인 대신 입력 양식의 경우 사용자 지정 도메인
디스플레이 도메인으로 org의 플랫폼 하위 도메인으로 돌아갑니다. DnsProgressView DomainEntryForm보다는 사용자 정의 외부 도메인이 존재하지 않을 때 렌더링합니다. 또한 DomainEntryForm의 "platform domain" 배너를 제거합니다.
Enrich upload manifests with Asterisk CDR caller-ID data
Adds optional MySQL CDR enrichment so the softphone history tab can display who called (or was called). When ASTERISK_CDR_DSN is configured as a Forgejo repo se...
Parse CDR caller-ID fields from upload manifest
When kamo-asterisk-support includes a cdr{} section in the upload manifest (populated when ASTERISK_CDR_DSN is configured), ConversionService extracts callerIdN...
Add CDR caller-ID columns to recordings table (order 40)
Adds caller_id_num, caller_id_name, call_direction, and call_result columns to the recordings table so the softphone history tab can display who called without ...
Add CDR caller-ID fields to Recording entity
Adds callerIdNum, callerIdName, callDirection, and callResult columns to the Recording entity so kamo-asterisk-support can store Asterisk CDR metadata alongside...
Surface imaging fallback when provider has no call history
KamoPBXProvider.getCallHistory now returns null instead of throwing **************** so the 501 response no longer bypasses the imaging fallback. The provider c...
Correct account list member/teamMember fallback labels and trigger redeploy
Restore NavPri panel labels and LeadHistory column headers
NavPri: salvage-keys grabbed href URLs as label values and swapped label/description pairs for Accounts, KB, and Notes nav panels. LeadHistoryPanel: MUI bgcolo...
Add COMP payment method option to subscription order wizard
COMP is a valid backend PaymentMethod enum value for complimentary platform-admin grants, but was missing from the frontend type and wizard UI — only INVOICE an...
Show platform domain context when no custom domain is set
Surface the active *.kamocrm.com hostname in the domain entry form so users can see their current platform domain instead of a blank entry screen. Also fixes ve...
Revert "chore(messages): add wave3 translation merge fragments (JSON)"
This reverts commit ****************
Revert "feat(setup-dns): show platform kamocrm domain on custom domain entry"
This reverts commit ****************
Show platform kamocrm domain on custom domain entry
Surface the active *.kamocrm.com hostname on the add-domain flow and detect custom domains by excluding kamocrm URLs instead of default-flag alone.
Checkpoint translations per chunk and per locale on main
Persist locale JSON after each API chunk so cancellation loses at most one batch. CI translates one locale per process and commits/pushes after each so finished...
Checkpoint translations per chunk and per locale on main
Persist locale JSON after each API chunk so cancellation loses at most one batch. CI translates one locale per process and commits/pushes after each so finished...
Disable Docker BuildKit cache so every pipeline run does a full rebuild
Sets no-cache on both image build steps so npm ci and npm run build always run, even when the source tree is unchanged.
Bust Docker BuildKit cache per commit so npm run build runs every push
Identical checkout trees (e.g. empty commits) reused cached layers and skipped a real Next build. Pass GIT_COMMIT from the workflow and label the image revision...
Sync member.email when primary mailbox는 할당, 변경, 또는 제거
Mailbox가 KAMO MAIL org의 회원으로 할당되었을 때, member.email 이메일CredentialService가 IMAP을 해결하지 못하는 경우 결코 업데이트되지 않았습니다. 그 회원의 자격.
중복 루트 도메인을 방지하고 기본 도메인 표시를 수정
ONE DOMAIN PER ORG 체크인 잘못된 제외 .kamocrm.com 웹 별 org는 여러 루트 도메인을 축적 할 수 있도록 (그리고 10 aliases 각각) 다른 별명으로 재출시. 이제 모든 것을 계산 최상위 도메인(parent IS NULL) suffix에 관계없이. 네트...
CockroachDB 분쟁을 방지하기 위해 회원 보안 및 회원 PUT 통화를 직렬화
2개의 동시는 동일한 `members` 행에 serializable 씁니다 isolation 분쟁 - 구성원은 회원이 읽는 동안 행을 읽습니다. endpoint는 (DateUpdated를 통해 통로), 한 트랜잭션을 aborting 오류 40001. 순차적인 호출은 overlap를 삭제...
Org 생성 지연 및 수정 번역 캐스케이드 실패 감소
- OrganizationController: makeTeamMembersForAllOrgs (전체 org makeTeamMemberForOrg (single org)로 테이블 검사 ~400ms×N DB 라운드 스트립 /network/create 제출이 붙어있는 - Organizatio...
Widen commit log translations.title 에 TEXT 에 일치 DB 열
열은 비문과 DB 모두에서 VARCHAR(512)였다. 긴 번역 제목에 실패하는 번역 삽입. DB 칼럼은 이제 STRING (직접적으로 승인); 이 표기는 엔티티티를 유지합니다. 제품정보.
