Add esign repos to JPA repository scan so ESignTemplateRepository bean is found
DocsService was crashing on startup because ESignTemplateRepository lives in com.kamo.z.shared.esign.repos which wasn't included in the @EnableJpaRepositories s...
Utilizați fereastra de 24 de ore în loc de data UTC pentru numărul jurnalului de modificări de astăzi
Serverul ruleaza in UTC, asa ca pe timp de noapte in Statele Unite ale Americii la ISOString() întoarce data de mâine și nu se angajează meci. Folosind o fereas...
Forță dinamică pe trasee API changelog pentru a preveni cacheul de date vechi
Urmatorul.Js a fost static cacheing aceste GET manipulatori de traseu la construirea de timp, înghețare nouă dată() până la data de construcție, astfel încât nu...
Utilizați sistemDocsDocument Doar pentru tab-ul Docuri Sistem, arată toate docurile în Original Docs
Original Docs file arată acum toate documentele pentru acest org/assocType fără filtrarea prin assocObjectId. Fila Docuri de sistem trimite sistemDocsOnly: adev...
Use **************** for hasDesignVersion, add systemDocsOnly filter
hasDesignVersion now checks if an esign template exists with current_design_version > 0, instead of using isSigTemplate which is true for all uploads through th...
@ info: whatsthis
Atunci când nu este furnizat nici un param URL ooid, Original Docs and Modified Docs file Acum interogare prin ID-ul actual al membrului, în timp ce System Docs...
Add @JsonIgnoreProperties to UploadTemplateRequest to prevent hash null on unknown fields
The frontend sends accessLevel, description, folderId, docTypeId in the metadata JSON. Jackson was failing to parse the entire metadata object when encountering...
Locul a scăzut câmpul la poziția vizuală exactă a fantomei
Utilizați activ.rect.curent.tradus (clientul stafiei Dragoverlay) se potrivește rect tradus, astfel încât câmpul aterizează acum exact în cazul în care utilizat...
Remap field signerUids atunci când backend returnează noul signer IUDS după salvare
Traseu toate apelurile esig API prin forwardToApi() pentru a remedia eșecurile de salvare
Toți cei 10 responsabili de traseul esig indicau către ESIG SERVICE URL care rezolvă unui proxy kamowsesig-service inexistent. Înlocuiți fiecare handler cu forw...
Replace upsertSigners with full delete+insert to handle frontend temp UUIDs
The frontend assigns temporary crypto.randomUUID() values to newly-added signers before any backend call. The previous upsert-by-uid logic would throw 404 for t...
Afișează numai un indiciu despre formatul numărului paginii atunci când este selectat personalizat
Comută previzualizare-banner-text la fluxul de linie, astfel încât link-ul Changelog stă pe aceeași linie
Poziţionarea corectă a unghiilor şi restabilirea rotaţiei transforma
Două microfoane în ThumbnailCanvas: 1. Înlocuit înălțime: \ element poziționat Padding-top) cu înălțimea de la lățimea stabilită explicit. Lățimea este acum...
Move scroll ownership from PdfCanvas to canvasContainerRef
PdfCanvas root Box previously had overflow-auto + h-full, making it its own scroll container. This meant: - scrollbarGutter: stable on canvasContainerRef had no...
Fit to Width calculates actual container width instead of resetting to zoom 1
Reads **************** (which accounts for the stable scrollbar gutter) and the page's natural width via **************** then computes fitZoom = (availableWidt...
Replace all hardcoded purple with var(--color-primary) on Settings & Signers page
Signers icon, icon background, count badge, Add Signer buttons, Add First Signer button, empty-state illustration tint, add-another hover, and the ALL_OF_TYPE s...
Remove fixed height and scroll bars from field properties panel
The panel had two vertical scrollbars: 1. DesignTab wrapper had height: 200 + overflowY: auto 2. FieldPropertiesPanel root had height: 200 + overflow: hidden, ...
Defer set Totalpages până după bucla dim PDF pentru a preveni saturarea lucrătorului PDF.js
Pe un PDF de 50 de pagini, asteptare set TotalPages înainte de getPage () dimension loop mounts Toate cele 50 de componente ThumbnailCanvas imediat. Fiecare sca...
Expand component scan and add full datasource/JPA/Redis/MinIO config
ConversionServiceApplication was only scanning com.kamo.ConversionService, missing all shared library beans (ImageService, MinIOStorageService, MemberRepository...
Add kamo-shared-library build stage to resolve missing dependency
The Dockerfile was trying to fetch kamo-shared-library from Maven Central, which doesn't exist there. Mirror the SecurityService pattern: clone the shared libra...
Preveniți stivuirea paginii, fixați tăieturi de miniatură, adăugați miniaturi server-side cu PDF.js Fallback
- Adăugaţi flexShrink: 0 la divs pagină în PdfCanvas astfel încât paginile nu comprima în coloana flex - Adăugaţi flexShrink: 0 la elementele miniatură în Pagin...
Redare PDF Eager, normalizare la scară naturală, nici un pergament orizontal
- PdfCanvas: înlocuiți IntersectionObserver cu randare dornic-toate-pagini. Abordarea bazată pe observator nu era de încredere atunci când începe fila de proiec...
Elimina conflictul Child DOM în redarea miniatură PDF
Replace container.innerHTML + apendiceStencils cu un ref. Vechea abordare a fost curăţată prin reacţie Noduri DOM direct, cauzând reconcilierea Reaction pentru ...
Se manipulează planurile aplicabile și se aplicăBillingCycles ca și matrice de șir
Aceste câmpuri sunt tastate ca string[], dar au avut .split(,"") apeluri pe ele, cauzarea de eșecuri de construcție TypeScript.
Add CockroachDB transaction retry for template init endpoint
CockroachDB serializable isolation can trigger RETRY_SERIALIZABLE on the read-then-write pattern in initTemplate. Retries up to 3 times with backoff when detect...
Restaurează rute proxy la OTK auth, eliminați ajutor esigProxy neutilizate
OTK este mecanismul corect de autism a ocolit modelul de securitate stabilit. Toate rutele proxy esig folosesc acum generaOTK de la apiProxy.ts din nou.
Correct OTK Redis key format and add imaging template list endpoint
OTK keys use OTK<id> and ***<id> (no colon) matching the Next.js proxy. Added POST /api/esig/templates/list to query imaging templates via shared library ImgRep...
Utilizați antete de sesiune directă în loc de OTK pentru rutele proxy ESigService
Citește *** sesiune de la Redis în Next.js și pass orgId/memberId ca încredere antetele către ESigService prin intermediul K8s DNS interne. Elimină dependenţa O...
Replace OTK auth with trusted session headers for internal K8s calls
ESigService is internal — the Next.js backend reads the session from Redis and passes orgId/memberId/userId as X-Org-Id, X-Member-Id, X-User-Id headers. No OTK ...
Utilizați criteriul de evaluare init pentru a găsi sau crea șablon de imgId pe sarcina editor
Pagina de creare trece imgId în URL. Pagina de editare acum solicită init final pentru a găsi sau crea ESignTemplate, apoi utilizează UUID returnat pentru opera...
Scan all shared library repository packages to resolve bean dependencies
ComponentScan picks up shared library services which depend on repos in donotmodify.dao.repos and commerce packages — must scan those too.
Remove .mvn/ copy from Dockerfile — directory does not exist in this project
Cartografiere corectă a numelui de câmp între backend și frontend pentru nivelul de acces API
Harta backend securityId→Level Access, isOrganizationOwner→isOwner, memberType→isTeamMember in API route. Fixează dreapta pentru a utiliza EDIT MINTE ACCESS LEV...
Adaugă suport static pentru pagina de oferte atunci când abonamentul API nu este disponibil
Masa nu există încă în producţie. astfel încât API întoarce o eroare. Retrage-te la promovarea hardcoded și planurile de date astfel încât pagina de oferte func...
Actualizare tip ApiPromotie pentru potrivirea cu noua List <Sfring> răspuns suport
planIds aplicabile și aplicabileBillingCycles sunt acum array-uri, nu șiruri JSON.
Extend 18DOFF promotion end date to 2026-12-31
The April 14 end date was causing the offer page to show as expired.
Elimină validarea secretă a webhook-ului redundant, APIService se ocupă de HMAC auth
Validate Forgejo HMAC-SHA256 signature instead of plain secret header
Forgejo sends webhook secret as X-Gitea-Signature / X-Forgejo-Signature HMAC-SHA256 hash, not as a plain header value. Read body, verify HMAC, then forward to S...
Ca ceea ce vezi de transport maritim?
Fiecare dintre aceste actualizări aterizează automat în spațiul de lucru. Începe gratuit și urmăriți-l crească săptămână după săptămână.