Use targeted role-scoped rights recalculation
SecurityRoleController now uses updateRoleMemberRightsApplied() to only recalculate members who have the modified role, instead of recalculating all members in ...
Các quyền được xác định lại cho phụ đề, tựa công việc, và thay đổi vai trò
- Chỉ tính toán lại trong bộ phận bị ảnh hưởng sau khi tạo/lêndate/delete - Công việc TitleService: chỉ tính lại thành viên với tiêu đề công việc bị ảnh hưởng s...
Tính lại thành viên quyền áp dụng sau khi thành viên mới được tạo ra
Gọi cập nhật bộ phận Thanh công cụ cho thành viên mới sau cả hai Tạo thành viên tổ chức và tạo tổ chức thiết lập mọi quyền đóng vai đều được áp dụng ngay lập tứ...
Hiệu chỉnh vai trò Granular, trao đổi nhãn, và hỗ trợ thành viên nhóm
- Thêm llowEdit Title và isAllowEdit encouraged to SecurityRole giao diện - Cho phép chỉnh sửa thiết lập an ninh trên các vai trò thành viên/Team (bị khóa đầy đ...
Migrate Everyone role to Members and create Team Members role
- Rename ROLE_EVERYONE_ID column to ROLE_MEMBER_ID - Rename existing "Everyone (Applies To All)" roles to "Members" - Set **************** flags on existing sys...
Enforce role protection flags and add parent label support to session
- Enforce isAllowEditSecurity in SecurityRoleController update endpoint - Add parentMemberTitlePlural and parentTeamMemberTitlePlural to *** session - Resolve p...
Thêm cờ bảo vệ vai trò của hạt và vai trò của thành viên hệ thống
- Thêm các lá cờ AllowEdit và AllowEdit cho thực thể OrgRole - Thay thế vai trò của tất cảID để đóng vaiMemID trong tổ chức, thêm Vị trí phần mềm - Thay tên mục...
Add Support section to settings page
Adds Topics, Notifications, and Status & Response Times cards that link to /support?tab=settings.
Add manual job trigger controller with duplicate execution guard
POST /api/daemon/trigger/{jobName} triggers any Quartz job immediately. Returns 409 if the job is already executing. GET /api/daemon/trigger/status returns runn...
Remove old help system, add support nav items
Delete app/help/ and app/components/help/ directories. Add SupportButton to NavTop toolbar and Support menu item to NavPri sidebar navigation.
Add frontend types and API proxy routes
TypeScript interfaces for all support DTOs and 13 API proxy routes forwarding to MediaService for topics, tickets, and reporting endpoints.
Add support ticket services, REST controllers, and STOMP relay
Implements the MediaService backend for the support ticket system: - SupportTopicService: CRUD for org-scoped support topics - SupportAssignmentService: round-r...
Add deep-linking support to notes page via query param
Support /notes?id={noteId} URL pattern so AI chat source links can navigate directly to a specific note. Opens the note in edit view when the page loads with an...
Include clickable source links in RAG context for AI chat
Update RagClient to embed markdown links in the context sent to the AI model. KB articles link to /kb/{guid}, notes link to /notes?id={noteId}. Instructs the mo...
Add AI processing toggle to notes UI
Add aiProcessingEnabled field to Note types and toggle button in NoteEditor toolbar. Members can enable/disable AI processing per note, which controls whether n...
Route /api/notes to KBService instead of SecurityService
Notes management has been moved from SecurityService to KBService.
Pass memberId to RAG for note-aware AI chat
Add extractMemberId to SessionHelper. Update RagClient to send memberId in search requests so RAG returns both org KB articles and the member's own AI-enabled n...
Add note embedding support to RAG pipeline
Add NoteEventConsumer for NOTE_EVENTS NATS stream and NoteEmbeddingPipelineService for processing notes. Update Qdrant to store sourceType, memberId, noteId. Se...
Add notes management with RAG integration
Move notes CRUD from SecurityService to KBService. Add note encryption, NATS event publishing for RAG pipeline, and AI processing toggle support. Notes with AI ...
Add AI processing column and note embedding records table
Add AI_PROCESSING_ENABLED column to notes table and create NOTE_EMBEDDING_RECORDS table for tracking note RAG vectorization.
Thêm hỗ trợ xử lý AI cho mô hình dữ liệu ghi chú
Thêm trường AiProcessingEnabled để ghi chú thực thể, DTOs và yêu cầu. Tạo thư mục ghi lưu và kho phần mềm để theo dõi lưu ý chuyển hướng trong ống dẫn RAG.
Use sized avatar variants — medium for profiles/emails, small for nav/lists
Add size parameter to fetchMemberAvatar (defaults to 'sm'). Email signatures, email sending, profile headers, posts, comments, and hex heads now request the med...
Support multi-size photo avatar uploads and crop endpoint
Update uploadPhotoAvatar to accept optional sized variants (fileSm, fileMd, fileLg) stored with suffix naming ({hash}_sm.png, etc). Add PUT /{id}/crop endpoint ...
Add photo crop tool with react-easy-crop and multi-size avatar storage
Replace the old PhotoCropDialog with an interactive crop tool using react-easy-crop. When uploading or editing a photo, users now select a square crop area (wit...
Load countries from CountryType enum, add flag icons to geo-blocking
Countries route now proxies to /api/security/countries (CountryType enum) instead of **************** (empty GeoLite table). Adds react-world-flags for country ...
Rewrite Access Blocks help tips for clarity
Explains all four sections (whitelist, blacklist, temp blocks, geo-blocking) in plain language. Adds a CIDR range guide with examples showing /32, /24, /16, /8 ...
Add RoleRightsSyncRunner to backfill missing role rights
When new RoleRightType entries are added to the enum, existing roles don't have OrgRoleRight entries for them. This runner checks all roles on startup and adds ...
Add access security system frontend
13 API proxy routes, access check module with CIDR matching, proxy.ts enforcement integration. Reworks AccessBlockManager (real API + geo-blocking), creates Sys...
Add GeoLite2 sync job for MaxMind IP-to-location database
Quartz-scheduled job (weekly Sunday 3 AM) that downloads MaxMind GeoLite2-City-CSV, parses IPv4/IPv6 blocks and locations, loads into staging tables, and perfor...
Add access enforcement filter for IP-based access control
Redis-backed servlet filter that evaluates whitelist/blacklist/temp-block rules on every inbound request. Adds spring-boot-starter-data-redis dependency and Red...
Add access security system backend
8 new services (AccessCacheService, GeoLiteService, GeoLiteSyncService, AccessRuleService, GeoBlockService, AccessLogService, DetectionRuleService, SuspiciousDe...
Add access security system schema migration
Creates 7 new tables (org_access_rules, org_geo_block_rules, org_suspicious_detection_rules, system_access_logs, geolite_blocks, geolite_locations, geolite_sync...
Thêm các thực thể hệ thống bảo mật, bản liệt kê và đặt lại
Thêm các thực thể JPA (OrgAccesRule, OrgGeoBlockRule, OrgSwedDetectionRule, Hệ thống Acceslog, GeoLiteBlock, GeoLiteLotion, GeoLiteSyctatus), 6 enums mới, 7 bộ ...
Add Create Document button with rich dropdown on /doc/manager
Adds a styled dropdown menu with document type options (Document, Spreadsheet, Presentation, Drawing) each with descriptive text. Removes the NewDocumentButton ...
Thêm logo nhà cung cấp AI vào danh sách nhập cư bằng marquee
DeepSek, xiI (Grok), Meta (Llama), Perplexity và Hugling Face.
Add Not Configured option and config page navigation for bulk text providers
Add pending invite styling, conflict indicators, and organizer controls to calendar views
Như những gì anh thấy vận chuyển?
Mỗi một bản cập nhật này đều được tự động cập nhật trong không gian làm việc của bạn. Bắt đầu tự do và xem nó lớn lên tuần này qua tuần khác.