Dostawca zapisz dla niekonfigurowalnych typów i mapowanie poczty przez członków skrzynki pocztowej
Wybór natychmiast utrzymuje się natychmiast poprzez saveProvider API zamiast aktualizować tylko stan lokalny. Zakładka skrzynek pocztowych teraz Prawidłowo wyod...
Fix PRE_TICKET Zmocowanie DB + formularz kreacji przeprojektowania
- Naprawiono ograniczenie CHECK na support_ticket.status, aby umożliwić ordinal 14 - Przeprojektowany TicketCreationForm z nowoczesnym interfejsem użytkownika o...
Wyodrębnij tematy z tematów z tematów: [...] - Odpowiedź API
GET /api/support/topics endpoint return: tematy: [...], a nie a Surowa tablica. Wszyscy konsumenci teraz wyodrębniają data.topy przed użyciem tablicy.
Otwórz okno narzędzia pomocy technicznej z błędu i 404 stron
Wymień starą /help/ticket/new nawigację z narzędziem: open CustomWydarzenia W celu bezpośredniego otwarcia wyskakującego okna podparcia.
Przypisywanie domyślnych ról członkom przy tworzeniu
Teraz przydziela "Człogi" (Wszyscy) rola z organizacji.roleMemberID. - teraz przypisuje obu Rola „Członkowie” (Wszyscy) i rola „członków zespołu” Organizacja.r...
Recalculate member_rights_applied po stworzeniu/zaktualeniu/deletowaniu
Tabela member_rights_applied nigdy nie została ponownie ogłoszony, gdy role były Zmodyfikowany, powodując, że wszyscy członkowie mają 0 praw. Teraz dzwonimy - p...
Automatycznie zaznacz tekst hasła na nieudanym logowaniu dla szybkiego ponownego wschodu
Dodaj wyświetlanie błędów, gdy tworzenie tematu nie powiedzie się
Pokazuje komunikat o błędzie API w oknie dialogowym zamiast po cichu awarii.
Napraw obciążenie działu w TopicManager
Wyślij nagłówek X-a-Token (wzorzec dopasowany działuManager) i Wyciąganie działów z kształtu odpowiedzi danych.departments.
Dodaj Array.isArray osłony na odpowiedziach API, aby zapobiec błędom .map
API może zwracać obiekty błędów zamiast tablic, gdy tabele zaplecza - Jeszcze nie istnieje. Strzeż wszystkich operacji tablicowych za pomocą kontroli Array.isAr...
Włącz przekierowanie do pobrania MaxMind
MaxMind zwraca przekierowanie 302 do rzeczywistego pliku. HttpClient nie był Następca go, powodując niepowodzenie synchronizacji z HTTP 302.
Dodaj SecurityConfig, aby umożliwić wyzwalanie demona i punkty końcowe siłowników
Domyślne domyślne Spring Security zablokowały wszystkie punkty końcowe 401. Dodano do jawnie Konfig zezwala na zezwolenie /api/daemon/a i /a intaturatorium bez ...
Zaktualizuj okno narzędzia do wyskakujących biletów, aby użyć light theme matching chatColors
Zamień ciemny motyw (ciemne tło, biały tekst, bursztynowe akcenty) Schemat kolorów światła używany przez wszystkie inne wyskakujące okienka narzędzi w aplikacji...
Usunąć MANAGE_SUPPORT warunkowy z ustawień / kart analogowych, włącz wysuwanie NavPri
Wszystkie zakładki są teraz zawsze widoczne. Usunięto wydzierżawionyPanel z NavPri Wpis wsparcia Tak więc panel wysuwany działa na zawisu.
Uczyń opis textarea wypełnianie pozostałej wyskakujących okien
Usunięto ograniczenia minRows/maxRows i ustaw układ elastyczny na korzeń wejściowym Tak więc obszar tekstowy rozszerza się, aby wypełnić całą dostępną przestrze...
Poprawka MediaObjImgPobierz FK do korzystania z MediaObjImg UUID PK zamiast klucza kompozytowego
Kompozyt FK (OBJ_ID, IMG_ID) odwoływał się kolumny nie-PK powodujące typ niedopasowanie (uuid vs int). Zmieniono na pojedyncze FK na odwoływaniu OBJ_IMG_ID Medi...
Użyj natywnego zapytania, aby uzyskać czas rozdzielenia avg, aby uniknąć ograniczenia Hibernate EXTRACT (EPOCH)
Hibernate 6 nie może stosować EXTRACT(EPOCH OD ...) do odejścia znacznika czasu (produkuje rodzaj czasu trwania, a nie TEMPORAL). Przełącz na natywne zapytanie ...
Przeprojektowanie przełączania przetwarzania sztucznej inteligencji jako przełącznik oznaczonej za pomocą ikony asystenta
Wymień przycisk ikony przełącznika za pomocą asystenta MUI Ikona, oznaczona jako "Train AI With This Note". Przesunięty w lewo od Zapisz przycisk. Przeznaczone ...
Dodaj przycisk przełączania filtra do nagłówka notesu
Przycisk zawalenia się paska bocznego był ukryty za lewym paskiem nav aplikacji. Zastąpił go przełącznikiem ikony filtra w NotesHeader, który jest Zawsze dostęp...
Przezroczyste szyfrowanie przy stronie serwera ze stabilnym kluczem głównym
- Dodaj stałe notes.master-encryption-key do ConfigMap (był Generowanie losowego klucza na każdym poduszku, robiąc stare notatki Nie do odszyfrowania) - Zaw...
Wyczyść nieskreślalną zawartość notatek i wyłączyć flagę szyfrowania
Gdy odszyfrowanie po stronie serwera nie powiedzie się (zeroszku zekorczowane lub niedopasowanie klucza), Wyczyść zawartość i u zestaw jest Szyfrowane-fałszywe ...
Odszyfruj zaszyfrowane notatki w getAllNotes i odpowiedziach wyszukiwania
GetAllNotes i searchNotes zwracały surową zaszyfrowaną zawartość Notatki z jestEncrypted-true. Teraz odszyfrowuje zawartość po stronie serwera przed Wracając, d...
Wyodrębnij zwykły tekst Lexical JSON do podglądu kart notatnych
Zawartość notatek jest teraz Lexical JSON, a nie HTML. Funkcja podglądu Cofał się, aby stripHtml, który porzucił surowy JSON jako podgląd. Teraz analizuje Lexic...
Serialize NoteDTO Długie identyfikatory jako ciągi dla precyzyjnego bezpieczeństwa JavaScript
Identyfikatory cockroachDB unique_rowid() przewyższają JavaScript MAX_SAFE_INTEGER, Powoduje precyzję strat po przeanalizowaniu jako liczby. Dodać JsonSerialize...
Przeróbować synchronizację GeoLite — poprawne pobieranie adresu URL, hash streamingu, wstawki do partii
- Użyj bieżącego API permalink MaxMind z HTTP Basic Auth (account-id + license-key) - Streaming SHA-256 zamiast plików.readAllBytes (zapobieganie OOM w pliku 10...
Przewiń surowe odpowiedzi JSON w notatkach na trasach API w celu zachowania precyzji ID
Identyfikatory cockroachDB unique_rowid() przewyższają JavaScript MAX_SAFE_INTEGER. Poprzednia odpowiedź.json() + NextResponse.json() w obie strony JSON.parse d...
Poprawa zauważaw save flow — utrzymuj edytor otwarty, wyświetlaj rzeczywiste błędy
- Nie zamykaj edytora po zapisaniu istniejącej noty (tylko blisko Po utworzeniu nowego) - Napraw fetchWithAuth, aby odczytać error.error zamiast error.message...
Otwórz notatki bezpośrednio na kliknięcie, wyjmowanie kategorii z danych, usunięcie szyfrowania
- Kliknij notatkę, aby otworzyć ją bezpośrednio w edytorze, zamiast robić Oddzielne wywołanie API, które zawiodło - Pochodne kategorie i tagi z załadowanych d...
Używaj atrybutów OTKPreAuthFilter zamiast ponownego walidowania OTK w NotesController
OTKPreAuthFilter już zużywa i sprawdza OTK, przechowując Dane sesji w atrybutach żądania. NotesController próbował to zrobić Przebadanie już konsumowanego OTK, ...
Wyraźnie wysuly forward Visit Visit IP do usług downstream
ForwardedHeaderFilter zużywa X-Fora z przychodzącego wniosku, Tak więc, gdy APIService przekazuje do SecurityService za pośrednictwem RestTemplate header Zaginą...
Resolve notes awaria ładowania strony i zamień edytor Quill na Lexical
Dodaj brakującego czasu uruchomienia / eksportu dynamicznego do wszystkich notatek tras API, aby umożliwić Prawidłowe uwierzytelnianie OTK. Zamień React Quill W...
Przewiń odwiedzający IP / User-Agent do backendu, dodaj czas trwania wybierania jednostek
apiProxy: Teraz przekazuje X-For i User-Agent z oryginału Odwiedzający więc backend rejestruje prawdziwe informacje o kliencie zamiast serwera Next.js. AccessB...
Usunąć RoleRightsSyncRunner — prawa są dodawane ręcznie dla istniejących orgs
Podstawowy błąd w - (detached Kwestia podmiotu) została naprawiona w kamo-shared-libiry. Nowe prawa dla Istniejące role zostaną dodane ręcznie przez SQL.
Używaj zarządzanych odniesień do ról przy tworzeniu praw do roli w tworzeniuOrganizacji
Po organizacjiRepository.save(), rola lokalnaAdmin/roleEveryone Zmienne mogą być oderwane od kontekstu trwałości. createRoleRights() Dodano wpisy OrgRoleRight d...
Przywróć bramę uprawnień na AccessBlockManager
Ponowne dodawanie uprawnień do kontroli uprawnień MANAGE_ACCESS_RULES, które były nieprawidłowe Usunięto. Kwestia leżąca u podstaw (naprawiono ról administrator...
Usuń pełną komponentową bramkę uprawnień z AccessBlockManager
Nowe prawa nie są jeszcze przypisane do żadnej roli, blokując wszystkich użytkowników. Inne Zakładek ustawień zabezpieczeń (API Access, OAuth2, System Debug) ni...
Usuń czek GD od : ?
Dowództwo sed, które dodało, że obejście trybu boskiego niewłaściwie go wstawiło we wszystkich metodach zawierających sessionData, a nie tylko maRight. To spowo...
Zastępuj tryb boski stan synchronicznie z localStorage
Czy BógMod został zainicjowany jako fałszywy i załadowany tylko z localStorage w localStorage in useEffect (po pierwszym renderowaniu), więc checkRight() zwróci...
Pozwól użytkownikom bo-mode-aktywnie omijać właściwe kontrole w kontrolieRight
Nowe prawa bezpieczeństwa nie są jeszcze przypisane do żadnej roli, powodując, że wszyscy użytkownicy Odmówić. Użytkownicy bo-mode-aktywni teraz przechodzą wszy...
Pozwól użytkownikom kwalifikującym się do omijenia kontroli uprawnień dostępu
Nowe prawa (MANAGE_ACCESS_RULES, VIEW_ACCESS_LOGS, itp.) nie są przyznawane Do dowolnej dotychczasowej roli, więc wszyscy użytkownicy otrzymują zabronione. Użyt...
Przenieś AccessEnforcementFilter do skanowanych pakietów, zrewerywuj ComponentScan
Poszerzony „ComponentScan spowodował konflikt fasoli corsFilter między CorsConfig i WebConfig. Przeniesiono filtr na com.kamo.api.app.config (już zeskanowane pr...
Dodaj konfig połączenia Redis do konfigmapy K8s
Poda APIService nie uruchamia się, ponieważ spring-boot-starter-data-redis Auto-konfiguracja nie mogła połączyć się z Redis na localhost:6379. Punkty, aby Zamia...
Pokaż produkt nav KB bezwarunkowo na pasku bocznym
Usunięto bramę funkcji isKnowledgeBase, więc KB zawsze wyświetla, Dopasowanie poprzedniego zachowania NavTop.
Usuń GradientMeshBackground orbs, które podążają za koderem myszy
Niebieskie i fioletowe promieniowe koła gradientowe zostały renderowane przez Pozycja sterownika GradientMeshBackground śledząca pozycję myszy.
Usuwanie palić i przewijać animacje rozbłystek cząstek
Usuń komponenty rozmyte (Fireflies) z Hero, Cechy, ceny, I SignupSection. Usunąć ScrollParticleBurst Enhanced firework animation Z strony głównej.
Zapobiegaj wprowadzaniu hasła przed upuszczeniem pierwszego naciśnięcia klawisza na przejście kroku
Pętla do głosowania ostrości była dzwonienie do setSelectionRange(0, długość) co 50 ms dla 1,2s, które wybrały dowolny typowy znak, więc następny naciśnięcie kl...
Wymień zepsute antropiczne, OpenRouter i logo xAI SVG
Pierwotnie pliki to 404 zastępców (14 bajtów). Zastąpiony odpowiednimi logo SVG od Simple Icons.
Wymień zepsute antropiczne, OpenRouter i logo xAI SVG
Oryginalne pliki w kamo-internalie to 404 zastępców (14 bajtów). Zastąpione odpowiednimi logo SVG od prostych ikon.
Jak to, co widzisz żeglugę?
Wszystko to pojawia się w twoim miejscu pracy na własną rękę. Zacznij od bezpłatnego planu i przeczytaj tę stronę ponownie w miesiącu.
