Provider save for non-configurable types and mailbox member email mapping
**************** selections now immediately persist via saveProvider API instead of only updating local state. Mailboxes tab now correctly extracts emailAddress...
Sửa đổi dạng tạo mới
- Kiểm tra đã cố định về hỗ trợ ổ cắm . - Mô hình kiểm tra đã thiết kế lại với UI: - "Làm thế nào chúng tôi có thể giúp đỡ?" hạ cánh với chủ đề chọn lựa - "Chươ...
Xuất các chủ đề từ [...] Comment
Điểm kết thúc [...], không phải là một hàng thô. Tất cả người tiêu dùng bây giờ lấy dữ liệu. đối tượng trước khi sử dụng các mảng.
Mở cửa sổ hỗ trợ công cụ từ lỗi và 404 trang
Thay thế mục cũ /help/tocket/ mới bằng công cụ: open Do not translate the keyword between brackets mở cửa sổ hỗ trợ bật lên trực tiếp.
Gán vai trò mặc định cho các thành viên khi được tạo ra
♪ Giờ đây anh đã chỉ định bộ phim "Mores" (Tất cả) Vai trò từ tổ chức.roleMemID. ♪ Giờ đây cả hai đều được chỉ định ♪ "Các thành viên" (tất cả) vai trò và vai ...
Recalculate member_rights_applied after role create/update/delete
The member_rights_applied table was never recalculated when roles were modified, causing all members to have 0 applied rights. Now calls **************** after ...
Thêm lỗi hiển thị khi tạo đối tượng thất bại
Hiển thị thông điệp lỗi AI trong hộp thoại thay vì bị lỗi yên lặng.
Bộ phận sửa chữa đang tải lên bộ quản lý đặc biệt
Gửi bộ đầu X- ***- Token (kiểu bộ quản lý) và bộ phận chiết xuất từ dữ liệu. Phân chia hình phản ứng.
Thêm Array.isArray bảo vệ trên trả lời API để ngăn chặn lỗi.map
ARI có thể trả lại các đối tượng lỗi thay vì các dãy khi bảng hậu phương chưa tồn tại. Bảo vệ mọi hoạt động với kiểm tra Array.
Enable redirect following for MaxMind download
MaxMind returns 302 redirect to the actual file. HttpClient wasn't following it, causing the sync to fail with HTTP 302.
Add SecurityConfig to permit daemon trigger and actuator endpoints
Spring Security defaults blocked all endpoints with 401. Added explicit config to permit /api/daemon/** and /actuator/** without authentication.
Update ticket popup tool window to use light theme matching chatColors
Replace dark theme (dark backgrounds, white text, amber accents) with the light color scheme used by all other popup tool windows in the app.
Remove MANAGE_SUPPORT conditional from settings/analytics tabs, enable NavPri slide-out
All tabs now always visible. Removed disablePanel from NavPri Support entry so the slide-out panel works on hover.
Make description textarea fill remaining popup window height
Removed minRows/maxRows constraints and set flex layout on the input root so the textarea expands to fill all available vertical space.
Sửa MediaObjmg Download FK để sử dụng MediaObjIg UUID
Các cột FK tổng hợp (OBJ ID, IMG ID) được tham khảo không-PK gây ra một loại Không trùng (uuid vt). Thay đổi sang chỉ một FK trên OBJ IMG ID MediaObjImg.ID (UUI...
Dùng yêu cầu bản quyền để có thời gian giải quyết avg để tránh khả năng hạn chế khả năng sử dụng EBragnaT (EPOCH)
Chữ thường 6 không thể áp dụng được cho dấu trừ thời gian (Tiếng kéo dài thời gian) Đã chuyển sang một yêu cầu đáp ứng tự nhiên rằng CockroachDB xử lý bản xứ.
Redesign AI processing toggle as labeled switch with Assistant icon
Replace icon button with a toggle switch using the MUI Assistant icon, labeled "Train AI With This Note". Moved to the left of the save button. Renamed "Create"...
Add filter toggle button to notes header
The sidebar collapse button was hidden behind the app's left nav bar. Replaced it with a filter icon toggle in the NotesHeader that is always accessible regardl...
Transparent server-side encryption with stable master key
- Add permanent notes.master-encryption-key to ConfigMap (was generating a random key on each pod restart, making old notes undecryptable) - Always encrypt ...
Clear undecryptable note content and disable encryption flag
When server-side decryption fails (corrupted data or key mismatch), clear the content and set isEncrypted=false on the entity so the note stops showing cipherte...
Decrypt encrypted notes in getAllNotes and searchNotes responses
getAllNotes and searchNotes were returning raw encrypted content for notes with isEncrypted=true. Now decrypts content server-side before returning, matching th...
Extract plain text from Lexical JSON for note card previews
The note content is now Lexical JSON, not HTML. The preview function was falling back to stripHtml which dumped raw JSON as the preview. Now parses Lexical JSON...
Nối tiếp Thông báo Hệ thốngComment
ID của CockroachDB độc nhất rowid () vượt quá của JavaScript MAX SAFE INTEGER, gây ra mất mát chính xác khi được phân tích thành con số. Thêm ToStringSizer để I...
Rewrite GeoLite sync — correct download URL, streaming hash, batch inserts
- Use MaxMind's current permalink API with HTTP Basic Auth (account-id + license-key) - Streaming SHA-256 instead of Files.readAllBytes (prevents OOM on 100MB+ ...
Forward raw JSON responses in notes API routes to preserve ID precision
CockroachDB unique_rowid() IDs exceed JavaScript's MAX_SAFE_INTEGER. The previous response.json() + NextResponse.json() round-trip caused JSON.parse to convert ...
Improve notes save flow — keep editor open, show actual errors
- Don't close the editor after saving an existing note (only close after creating a new one) - Fix fetchWithAuth to read error.error instead of error.message ...
Open notes directly on click, derive categories from data, remove encryption
- Click a note to open it directly in the editor instead of making a separate API call that was failing - Derive categories and tags from loaded notes data in...
Use OTKPreAuthFilter attributes instead of re-validating OTK in NotesController
The OTKPreAuthFilter already consumes and validates the OTK, storing the session data in request attributes. NotesController was trying to re-validate the alrea...
Explicitly forward visitor IP to downstream services
ForwardedHeaderFilter consumes X-Forwarded-For from the incoming request, so when APIService forwards to SecurityService via RestTemplate the header is missing....
Resolve notes page load failure and replace Quill editor with Lexical
Add missing runtime/dynamic exports to all notes API routes to enable proper OTK authentication. Replace React Quill WYSIWYG editor with the same Lexical-based ...
Forward visitor IP/User-Agent to backend, add duration unit picker
apiProxy: Now forwards X-Forwarded-For and User-Agent from the original visitor so backend logs the real client info instead of the Next.js server. AccessBlock...
Remove RoleRightsSyncRunner — rights are added manually for existing orgs
The underlying bug in **************** (detached entity issue) has been fixed in kamo-shared-library. New rights for existing roles will be added manually via S...
Dùng tài liệu tham khảo đóng vai trò khi tạo quyền đóng góp để tạo tổ chức
Sau khi tổ chức tái tổ chức.save(), vai trò Admin/role mọi người Các biến số có thể tách ra khỏi hoàn cảnh kiên trì. tạo khung công cụ () là thêm OrgRole mục nh...
Restore permission gate on AccessBlockManager
Re-adds the MANAGE_ACCESS_RULES permission check that was incorrectly removed. The underlying issue (admin roles missing new rights) is fixed by KamoInitializer...
Remove full-component permission gate from AccessBlockManager
New rights aren't assigned to any role yet, blocking all users. Other security settings tabs (API Access, OAuth2, System Debug) don't have permission gates — fo...
Remove GD check from ****************
The sed command that added the god-mode bypass incorrectly inserted it into all methods containing sessionData, not just hasRight. This caused 'return true' (bo...
Initialize god mode state synchronously from localStorage
isGodMode was initialized as false and only loaded from localStorage in a useEffect (after first render), so checkRight() returned false on initial render even ...
Allow god-mode-active users to bypass right checks in checkRight
New security rights aren't assigned to any role yet, causing all users to be denied. God-mode-active users now pass all checkRight() calls.
Allow god-eligible users to bypass access security permission checks
New rights (MANAGE_ACCESS_RULES, VIEW_ACCESS_LOGS, etc.) aren't granted to any existing role yet, so all users get Forbidden. God-eligible users (GD=true in ses...
Move AccessEnforcementFilter to scanned package, revert ComponentScan
The widened @ComponentScan caused a corsFilter bean conflict between CorsConfig and WebConfig. Moved the filter into com.kamo.api.app.config (already scanned by...
Add Redis connection config to K8s configmap
APIService pod was failing to start because spring-boot-starter-data-redis auto-configuration couldn't connect to Redis at localhost:6379. Points to redis.kamo....
Show KB nav item unconditionally in sidebar
Removed the isKnowledgeBase feature gate so KB always displays, matching the previous NavTop behavior.
Bỏ
Vòng tròn màu xanh dương và tím được thực hiện bởi các GradientMesh thành phần nền theo dõi vị trí chuột.
Gỡ bỏ đom đóm và cuộn hạt vỡ hoạt hình
Loại bỏ các thành phần của quả bóng mờ (Firefly) từ hero, tính năng, lực đẩy, và đăng ký. Bỏ từ trang chính.
Ngăn chặn việc nhập mật khẩu rơi phím đầu tiên khi chuyển đổi bước
Vòng thăm dò tập trung được gọi là thiết lập bầu cử Rage( 0, chiều dài) mỗi 50mm Đối với 1.2s, mà đã chọn bất kỳ ký tự gõ nào để các phím gõ tiếp theo được thay...
Replace broken Anthropic, OpenRouter, and xAI logo SVGs
The original files were 404 placeholders (14 bytes). Replaced with proper SVG logos from Simple Icons.
Thay thế biểu tượng mạch máu bị hỏng, OpenRouter, và biểu tượng xAI SVGs
Các tập tin gốc trong kamo-i nội bộ là 404 bộ giữ chỗ (14 byte). Thay thế bằng biểu tượng SVG đúng từ biểu tượng đơn giản.
Như những gì anh thấy vận chuyển?
Tất cả những thứ đó đều đến trong không gian làm việc của anh. Bắt đầu với kế hoạch miễn phí và đọc lại trang này trong một tháng.
