Przejdź do treści
KAMOUniverse

Changelog

Co nowego.

Każde ulepszenie platformy, jak to wysyła.

  1. · kamo-internal

    Zakładka zasad — efektywne ustalanie cen/kapitał/konfiskat

    Nowy MortgagePoliciesTab: aktualna wersja aktywna + publikuj-new-version form + wersja Historia dla każdej z trzech skutecznych polityk; configTypes/configApi + zakładka Rejestracja.

  2. · SecurityService

    Skuteczne polityki profilowe — ceny/kapitał/powoce publikują

    Nowy MlosPolicyWriteService (izolowany; jego własny repos, więc konfiskata pisania-pis- Usługa jest nietknięta: jednoaktywne wersje demote-then-wstawianie w ten sam audyt - Kręg. Kontroler / polityka cenowa, /kapitalna polityka, /servicing-policy GET (current+ Historia) / PUT (publikowanie nowej wersji). ServicingPolicy SCRA/FDCPA pozostają prawdziwe.

  3. · kamo-shared-library

    Wersjonowany interfejs profilapolityczny dla skutecznych polityk

    Pricing/Capital/ServicingPolicy wdrażaj go, aby jeden z nich publikować rutynę napędza Jedno aktywna wersja demote-then-wstaw.

  4. · kamo-internal

    Dostawa inwestora + podochłom zasady zobowiązania

    Rozszerzony rząd inwestorski zyskuje Delivery (chutwieranie finansowania / ścieżka wykonania / Przekazuje) i Edytorzy / min pull-through % / pair-off) redakcji obok Delegacja + nakładki; configTypes/configApi + połączenia.

  5. · SecurityService

    InvestorConfig delivery + pod-zbiory zasady zobowiązania CRUD

    (+aktualizacja / usuń) na kręgosłupie konfiskaty D31 (org-zamknięty za pośrednictwem inwestora macierzystego, WORM change-log per wiersz); kontroler /inwestorzy/-dostawy-zasady + / wiązanie-zasady GET/POST/PUT. Ukończy ostatni Podpobieranie podpojazdów InvestorConfig odroczonych od [04].

  6. · kamo-internal

    Inwestorowa nakładka kredytowa podredator

    Rozszerzony rząd inwestora kredytów hipotecznych firmy MortgageTab zyskuje OverlayEditor (FICO/LTV/DTI// Rezerwy/dodokręcanie/geo + komparator + opcjonalny program + efektywne okno) Wraz z redaktorem delegacji; configTypes/configApi typu nakładkowe + połączenia.

  7. · SecurityService

    InvestorConfig nakładkę nakładkę nakładkę CRUD

    - na grzbiecie konfiskaty D31 (org fail-closed przez Inwestor macierzysty, WORM change-log per row, configVersion defaults 1); kontroler /inwestorzy/przekładki GET/POST/PUT (delete via active:false). Uzupełni to, co InvestorOverlay plasterek odroczony od [04].

  8. · kamo-internal

    Prawy podnav + tekst o wysokiej prawicy + wyższy

    - Przesuń odcinek podnav z lewej do prawej, zręcznego, pełnego wysokości panelu Przewija się niezależnie; nagłówek + zawartość formularza przybierz pozostałą szerokość Po lewej stronie i przewijaj się samodzielnie (dwa niezależne regiony przewijania na md+; Stosy z nav na górze dla wąskich ekranów). - Dostępność: zaciemniaj wszystkie tekst wtórne / etykietowe (gray-400 -> szary-600, szary-500 -> szary-700) na stronie szczegółów + udostępnione pole/sekkcjaCard/ EmptyState prymitywy, więc etykiety spełniają kontrast WCAG AA dla użytkowników o niskiej wipatrzenie.

  9. · kamo-internal

    Rurociąg pożyczka jako podtatata Mortgage + light theme

    - Dodawanie ApplicationsPipelineConsole: a /line-style advanced AG-Grid datagrid o wnioski o kredyt hipoteczny na poziomie kredytu (zakłady filtrów statusu, wiersz filtrów, Szybkie wyszukiwanie, eksport CSV, pagination, row -> detail). Przewodowy jako ostatni Sub-tab konsoli Sterwarda Kredytu Hipotecznego (sub-pipeline). - Re-theme /applications/[uid] detail + shared Field/SectionCard/Modal EmptyState prymitywy + wszystkie 14 sekcji od ciemnego tematu marynarki wojennej do Lekki idiom wewnętrzny kamo; zamień pełnoprawnego bohatera przepływem Bar nagłówek (naprawia nakładanie się nagłówka / treści). - Ponowne /aplikacje/pipelina (kanban) i /plikacje/hmda-lar do światła. - Usuń przestarzały samodzielny /plikacje ciemnej listy; punkt powrotny QuickActionsBar 'Nowa aplikacja' do podtaku gazociągu hipotecznego.

  10. · kamo-internal

    Platforma Panel kalibracji inteijsko-gornogowej (D4 5.C)

    Zaawansowana zakładka zyskuje panel gubernatora: edytuj platformę - domyślnej postawy kalibracyjnej (brama administratora / force-steward-dokonalifikacji / min próbek, Każdy Inherit|Enabled|Disabled) za pośrednictwem nowego Governor-config API. Per-org nadpisuje warstwę na górze.

  11. · SecurityService

    ScenarioOdkrywczość — geneza profilu kanonicznego przy tworzeniu/aktualizacja aplikacji (D1)

    HipoteageAppController (re)produkuje kanoniczny PożyczkobiorcaScenarioProfil poprzez nowy ScenarioDiscoveryService po : (best-effort, Własny tx). Dodaje mlos.intake do .EnableJpaRepositories.

  12. · kamo-shared-library

    LOAN doc osłona (D2), adapter konwencji znaków (D3), konfigurator per-org Governor (D4)

    - ImageService: wymagaj pliku do pliku ImageAssocType.LOAN uploads (LOAN-scoped; KONTO/SERWIS_ w niezmienionej formie). - SignedAdjustmentAdapter: adapter/zacisk dotyku reguł-7 (kanoniczne regulowanie - podpisane wartości) dla migracji stopniowego znaku ikonencji. - AutonomyGovernorConfig + repo + GovernorConfigResolver (org > Platforma-default Sterobsługa); DbAutonomyGovernor rozwiązuje teraz kalibrację / obłąkanie naorg.

  13. · kamo-internal

    Zakładka połączeń aumerykańska (D37) + blok 2nd rynku kredytów hipotecznych (D38)

    - MortgageAusConnectionsTab: org-scoped DU/LP/GUS conedfig (pojedynie na jeden); Tajna jest pole hasła tylko do zapisu, wiersz pokazuje tylko, czy poświadczenia są ustawione. - Strona noworynkowa: wyłączenia opcji MORTGAGE + waliduj, gdy org ma jeden.

  14. · SecurityService

    Powierzchnia zapisu konfiction AUS-connection (D37) + jednolity rynek kredytów hipotecznych na org (D38)

    - MlosConfigWriteService - org-scoped (resolveProfile), Wyjątkowość na AusKind, tajny zachowany na cieśle-tajnych edycjach, WORM audit kręgosłup. - MlosConfigController /aus-connections GET/POST/PUT — sekret jest tylko napis (zaszyfrowany za pomocą PlatformSecretCipher wewnątrz mutacji); widok eksponuje maCredential, nigdy szyfrogram. - odrzucić drugi rynek MORTGAGE na org (409).

  15. · kamo-internal

    Podredytator delegacji inwestorów — organ perprogramowy (D39)

    Zrezygnuj z delegowanego przełącznika / kolumna; każdy rząd inwestora rozszerza się do programu na program Edytor delegacji (program UUID, pusty - domyślny dla inwestorów; DELEGATED/ NON_DELEGATED) poparł nowy /inwestor/-delegations API.

  16. · SecurityService

    Powierzchnia zapisu delegacji inwestora — program CRUD (D39)

    Upuść delegowanyAuthority z InvestorConfig write/view; dodaj Podpobieranie podwyżek inwestorskich w podmiocie /investors/delegacje (GET/POST/POST/ PUT, usunąć przez active:false) na spince konfiskatowe D31 - org-zamknięty Za pośrednictwem inwestora macierzystego, WORM change-log + profilVersion bump na wiersz.

  17. · kamo-shared-library

    Delegacja inwestora na program (D39) — nowe dziecko InvestorDelegation

    Delegacja jest granulowana na (inwestor, program), a nie gruby InvestorConfig Boolean. Dodaje DelegacjaAutorytorka ?DELEGATED, NON_DELEGATED, the Podmiot delegacji (mlos_investor_delegation, opcjonalny programId; null Domyślność całego inwestora) + repo, i spadki

  18. · kamo-shared-library

    [AUS] Połączenia AusConnectionConfig — zaorg na rynku połączenia DU/LP/GUS

    Dyrektywa właściciela nr 6: każdy org konfiguruje własne API dostawców AUS (Fannie DU / Freddie LP / USDA GUS) na rynek kredytów hipotecznych, w ustawieniach-handel. Podstawowy model danych: AusConnectionConfig (mlos.config, nowy stół mlos_aus_connection_config) — jeden wiersz na jeden wiersz (profil litrowy, AusKind); ponieważ tel.Profil jest jedno na rynku, keying przez PożyczkodawcaProfileId robi te na rynek. Ponowne wykorzystanie istniejącej enum AusKind (DU/LP/GUS) Słownictwo VendorCategory.AUS zamiast wymyślać nowe. Sekretny w spoczynku: sekret API jest przechowywany TYLKO jako sekretny program AES-256-GCM (zaszyfrowany przez PlatformSecCipher na write, mirroring SocialConnection/ PlatformOAuthClient) i nigdy nie jest w DTO – czyta ekspent w rzeczywistości. klientId/endpointUrl/configJson nie są tajne. Unikalny (profil, aus_kind). Backend write/controller + kamo-internal Zakładka połączeń aumerykulowych + i18n + KI (nowa tabela) build on this next; na rynku vs Usuwanie org-scoped jest decyzją konfiguracyjną wyłanianą się dla właściciela.

  19. · kamo-shared-library

    [ImageAssocType] doda się do LOAN — zdjęcia dołączają do pożyczki, wymagany typ dok

    Dyrektywa właściciela: obrazy można przymocować bezpośrednio do kredytu hipotecznego, zawsze za pomocą Odpowiedni typ doc. Dodaj LOAN do ImageAssocType (id 11, bucket imaging-loans), Odzwierciedlanie flagi zbiorem dokumentów: jestAllowDocType-true + isAllowDocTypeOpt-false, więc wymagany jest typ dokumentu kredytowego i NIE org- Opcjonalnie. Dodaj do koszykaDocType() (isAllowDocType & !isAllowDocDoyp) Ścieżki egzekwują "zawsze typu doktora". Bezbronne z NO KI/schema change: Img.assocId nie ma ’Enumerated (defaults Do ORDINAL) i nie ma ograniczeń CHECK, więc dostosowywanie w END zachowuje każdy Istniejące rzędy (strat testowy LOAN-is-last). 3 testy na zielono. Skoordynowane działania następcze (podana pod bandera): (1) podawanie wiadra MinIO polinie obrazowego za pośrednictwem KlusterServices przed pierwszym wypożyczeniem-doc; (2) odbuduj ImageAssocType Konsumenci (DocsSService robi wartości()[id] — muszą znać LOAN przed przybyciem id LOAN: - podnieś go na ich następna budowa CI); (3) egzekwowanie wymagaDocType() na ścieżce zapisu wypożyczenia-doc.

  20. · kamo-shared-library

    [sign-convention] walidatory znaków pieniężnych + model korekty

    Zgodnie z przepisami kanonicznymi właściciela. Podstawowa domena pieniędzy nigdy nie koduje znaczenia w znaku: - - / requirePositive — aktywa, należności, Zobowiązania, zobowiązania, opłaty, koszty, kredyty są wielkością dodatnią we własnym zakresie pola (reguły 1-3); wartość ujemna szybko się nie udaje. - Przekąt regulacji, DECREASE, CREDIT, DEBIT, PREMIUM, DISCOUNT — stawka/ Korekty cenowe (LLPA, SRP, korekty cenowe, koncesje, rabaty) ujawniają Wyraźny kierunek, nigdy podpisany numer (reguł 5). - + samowtniący zapis dostosowań — odrzucić wielkość, której znak jest sprzeczny z deklarowanym kierunkiem (reguła 6); Podpisana korekta nie może być skonstruowana. Reguły 4 (księgowanie +/- życia tylko w warstwie GL) i 7 (przypisywanie tylko w adapterze Warstwa) są granicami architektonicznymi, które straż wytycza, żyjąc w CORE i odrzucenie podpisanego kodowania – konwersja korygujący dla inwestora/magazyna/ Rachunkowość / MISMO pozostaje poza domeną w budowie. 4 testy zielone.

  21. · kamo-shared-library

    [?5.A] Pożyczkobiorca kanonicznyScenarioProfil + ProductDiscoveryGate

    Zgodnie z dyrektywą właściciela nr 5.A: ScenarioSupportPolicy musi konsumować kanoniczny Profil Scenariusza Pożyczkobioru generowany z znormalizowanego adresu URLA dane, nigdy surowe formularze/UI, i przyszłe źródła (AUS/OCR/AI/manual) AKTUALIZACJA, a nie kanoniczna rekord Obejdź go. - PożyczkobiornikScenarioProfil (mlos.intake, nowy stół) Pojedyncze źródło prawdy na rzutkę — 5 typowy URLA przyciemnia się + rozszerzalny Obliczone fakty JSONB + ostatnia wersjaźródłowy. Zmutowanie ( prawda akretes), skontrolowane przez źródło +version. - BorrowerSenarioProfilSprzesunek: produktFromUrla(loanFile, orgId) jest genezą (czytaj znormalizowaną pożyczkę/Własność natychmiast po normalizacji adresu URL); aplikujAktualizacja Jest to TYLKO cieżowe późniejsze źródło (nie ma głośno, jeśli nie istnieje żaden profil – geneza jest URLA jest sama, egzekwująca aktualizację-don't-bypass); toSupportProfile wyświetla 5 dims. - ProductDiscoveryGate: ściana prawna nr 5.A skonsultowana PRZED kwalifikowalnością/ceną – Ustala ScenarioSupportPolilicy (przypisuje się przez dziesiętnika + kod) przez kanoniczny Profil i, w przypadku odmowy, rejestruje WORM AiDecision skierowany do stewarda (NO_ELIGIBLE_PRODUCT, legalnie wymagaHuman; DEFERRED_HARD_STOP-HIGH, STEWARD_ONLY? MEDIUM) poprzez fakultatywny DecSpine. Wspomagane nic nie pisze. 10 testów zielonych. Budowanie i flaga: wymaga KI run (nowy stół) + okablowanie przepływowe (cotwórzOdUrla na haku do normalizacji URLA + gate.valuate na produkt-- Wejście do odkrycia) w usłudze własnej.

  22. · kamo-shared-library

    [12] nr 5.A ScenarioSupportlicyPolilicy deferal-interlock (D36)

    Doc 12 line 235 P0 – „najtańsza dodatek w cyklu życia o najwyższym ciągu użytkowania”. Ściana prawna W zakresie odkrycia produktu, które powstrzymuje od Cicho biegnący jako do przodu pierwszoligowcy (niewłaściwe ujawnienia). ScenarioSupportResolver (czysty ?Component) mapuje ScenarioSupportProfile (LoanType x x Cel Amortyzacja x Budowa, istniejący donotmodify URLA enums) WSPARCIE | STEWARD_ONLY | DEFERRED_HARD_STOP. Matryca domyślna (D36): WSPARCIE - agencja forward / non-QM FIRST-lien zakup/refik z amortyzacja standardowa (jak pokrywają silniki deterministyczne); STEWARD_ONLY Uznane, ale poza nim, a człowiek może pochodzić (subordinate/HELOC, budownictwo/dom- Poprawa, GPM lub dowolny INNE - odwrotny / komercyjny połów, od momentu zamieszkania URLA enums nie ma dla nich wartości); DEFERRED_HARD_STOP - nie zamknięciu, gdy krytyczny - Mrocz miełość. Sztuczna inteligencja nigdy nie uruchamia automatycznie produktu nie-v1. GDZIEń (najemca) ScenarioSupportPolicy nadpisuje warstwa rzędów na górze (najbardziej specyficzne wygrane meczów, najnowsze Wersja łamie krawaty; null dim - dzika karta), aby otworzyć produkt na WSOPORTED lub utwardzać go Do DEFERRED_HARD_STOP. 13 testów na zielono. Budowanie i flaga: openr + jednostka wysyła teraz; odkrycie produktu WIRING (konsultacja Przed kwalifikacją + emituj AiDecision on odmowę) i KI dla mlos_scenario_support_policy Są kontynuacją (potrzebuje biegu KI – biorców).

  23. · SecurityService

    [08] ReconciledFactPublisher — los.pipeline.fact publikuje szwy (D34)

    Doc 08 3,3: zablokowane - nie może uzyskać NATS Wydawca (który edytuje donotmodify). Dodaj nieblokowane Owijanie ReconciledFactPublisher To godzi, a następnie na niezero liczba zmian emituje los.pipeline.fact.orgId> na Istniejący strumień LOS_PIPELINE (los.pipeline.> już go wiąże – nie ma nowego strumienia/ Stół), więc pętla gotowości może strzelać. Przypomnij sobie ponownie jedynego rozmówcę (MortgageConnectController’s gol endpointpoint) na owijaniu; zamknięta usługa Jest nietknięty. Umieszczenie (D34): współlokacja w SecurityService z jedynym obecnym dzwonieniem, a nie w MLOSCapitalMarketsSService jako 3,3 punktu widzenia wstępnie sugerowane (które zakładały stronę RCE dzwoniąca, która jeszcze nie istnieje). Wymagany niewariant – nigdy nie publikuj od wewnątrz Zamknięta usługa – trzyma się w obie strony. Najlepszy wysiłek, taki jak LosPipelinePublisher: nieobecny NATS lub awaria publikacji jest rejestrowana + połknięta, liczba jest nadal zwracana. 4 testy Zielony.

  24. · kamo-shared-library

    AutonomyGubernor — kill-switch + force-steward-do-kalibowany (D32)

    DecisionGate ma już GLOBAL statyczną siłę-steward, ale 5.C Potrzebne są dwie rzeczy, których nie może dać: przełącznik zabijania flippable BEZ przesunięcia (tak więc DB-backed) w GLOB/Inteligentna ziarnistość GLOBAL/TASK_TYPE i siła-steward-do-N- Kalibluzje kalibracyjne na typ zadania (niekodne maszyny do kalibracji P0 Degeneruje się podczas startu — doc 12 Theme C / 6,1 .). AutonomiiGernor (rządnica pkg) jest OPTIONAL Docstor (ObjectProvider, Zamknięty na mlos.governor.enabled) skonsultowano się z synchronicznie przez DecisionSpine.record() - taki sam kształt jak StewardAssigner. Jest to ADD-ONLY, dokładnie tak, jak lawin: Może tylko zmienić niedoszłą AUTO_EXECUTE w ROUTE_TO_HUMAN, nigdy nie podnieś routingu, Tak więc czysta/bezpaństwowa DecisionGate jest nietknięta. Dwa warunki siły: a) a Aktywny AutonomyKillSwitch matching (orgId, aiFunction) — najszerszy zakres wygrywa powód; zmienny/wydzielony podmiot, NOT WORM, skontrolowany za pośrednictwem zaangażowanego/at; b) Kalibracja bootstrap — nietestowana liczba StewardFeedback dla aiFunction poniżej min-samples (default 50), liczony przez nowe zapytanie o połączenie. Kiedy i kiedy Gubernator jest przyczyną routingu, jego powód jest dołączony do WORM AiDecision Tak więc decyzja o wysokiej pewności siebie, która trafiła do człowieka, nigdy nie jest niewytłumaczalna. Nowy tabela autonomiczna_kill_switch (addytive DDL — KI run). 30 testów zielonych (7 gubernator Logika + 3 dodatkowa integracja + 6 kręgosłupa + 14 bramki); wszystkie cztery DecSpine Zachowani ektorzy (istniejący rozmówcy bez zmian).

  25. · kamo-internal

    [04] zakładka nakładów ryzyka — kredyt/geo/warstwy narażeniowe (D31)

    Nowa zakładka konficka na rynku MORTGAGE dla nakładów ryzyka na dziesiętnika: kategoria (pudełko kredytowe / koncentracja geo / rodzaj nieruchomości / kwota pożyczki / oszustwo / limit narażenia) + działanie (denyy / poleca / kontroferta / flaga) + opcjonalny zakres właściwości produktu + Efektywne okno + opcjonalne wyrażenie reguły JSON (zatrożone dla renacjonalności Po stronie klienta, odbicie serwera 400). Dodawanie / usuwanie wierszy; usuwanie jest twardym usunięciem. Rendery po Inwestorach, przed zakładką umów zawsze widniejowych. configTypes/configApi Odzwierciedla wzór kolekcji D31; i18n poprzez repo ewolucyjne kamo-translation-dictionary.

  26. · SecurityService

    [04] kawałek E2 kolekcja RiskOverlay CRUD (D31)

    Nakładki na ryzyko (piwnik kredytowy / geokoncentracja / geokoncentracja / limit ekspozycji na bazowe pudełko kredytowe) jako zbiór konfiskaty na kręgosłupie D31: utwórz domyślne confiVersion 1 + stemple identyfikuje profil + profil guzkówWerność + validate-or-- Cofa + dopala WORM MlosConfigChangeLog; aktualizacja / usuwanie są zamknięte 404 W wierszu innego profilu; usunięcie jest twardym usunięciem, audytemowanym jako "usunięty":true. Reguła Wyrażenie jest kolumną JSONB — kontroler parseiduje ją jako JSON Przed zapisem tak złym wejściem jest czyste 400, a nie 500 mid-INSERT. Null/blank (ang.) Jest dozwolony (słownictwo regułowe jest warstwą odroczoną, na razie przenoszona poza pałą). 20 testów write-spine green (4 nakładka + 4 inwestor + 6 licencji + 6 licencji + 6 etapów).

  27. · kamo-internal

    Zakładka inwestorów MORTGAGE (lista/add/usuzy) — [04] plasterek E2 (D31)

    Siódma zakładka konfiskaty MORTGAGE: per-inwestor Władza z chipem aprobaty i statusu. Dodawanie przez wiersz inline (kod + status + Opcjonalnie - usunąć przez śmieci (twarde usuwanie Po stronie serwera). configTypes InvestorView/InvestorRequest + 3 tablice enum + etykieta Pomocnicy; configApi - zarejestrowany jako zakładka 'inwestorzy' Po licencjonowaniu, przed umowami. Angielski poprzez tłumaczenie-sektor repo. tsc clean.

  28. · kamo-internal

    Ujednolicony termin czasu społecznego UI w /marketing/social

    Żywy, animowany kanał cross-provider ponownie wykorzystuje styl karmienia klubu: zwirtualizowany oś czasu, chipy filtracyjne dostawcy, SocialPostCard (odpowiedź/reakacja/usuń), Multi-provider SocialComposer (powody możliwości dla dostawców + chipy wyników fan-out), NewPostsPill (bez autoscroll), użyj SocialFeedWebSocket na żywo /topic/social/feed/?orgId, oraz trasy proxy / api/social/? Pisz akcje Zamknięty na MANAGE_SOCIAL_MEDIA; oparte na funkcjach opartych na funkcjach przez cały czas.

  29. · MediaService

    Ujednolicony zaplecza osi czasu (przetrwanie karmienia, adaptery, przekaźnik na żywo)

    SocialFeedService utrzymuje posty/komrycenie w schemacie MediaSession/MediaObj (przestrzeganie modelu czatu); SocialFeedMapper buduje DTO drutowe; SocialTimelineController obsługuje połączone zasilanie + możliwości i komponowanie multi-providerowe fan-out, odpowiedź, Usuń. Wydarzenia paszowe publikują social.feed.orgId -> /topic/social/feed/orgId? (przekaźnik + Strażnik SUBSCRIBE). Fani SocialInboundConsumer, którzy chcą nakarmić przedmioty; zamiatanie sondażowe Zalewy. Wszystkie 5 adapterów dostawców - Zaimplementuj SocialFeedAdapter do maksimum każdego API, giętkowany.

  30. · kamo-shared-library

    Ujednolicona linia czasowa SPI + podmioty na schemacie medialnym

    Ponowne wykorzystanie MediaSession/MediaObj w celu posiadania postów społecznościowych i odpowiedzi (Po-MediaObj, comment-child MediaObj via MediaObjMsg.parent, linkage dla dostawców MediaObjSocialRef). Dodaje podinterfejs SocialFeedAdapter (feed operacje trzymane z wymieraniem Ścieżka DM SocialProviderAdapter), MediaSessionSocialFeed (na połączenie Separowanie sesji), MediaObj SocialPRef kolumny feed, SocialObjKind i The Rozszerzona macierz ProviderCapabilities, która napędza funkcję UI dla dostawców.

Twój wszechświat czeka.

Rozpocznij bezpłatnie w kilka minut.Dodaj produkty, kiedy tylko będziesz gotowy — bez migracji, bez nowych logowań.

Bezpłatne na zawsze — nie wymaga karty kredytowej