Renderização de PDF ansioso, normalização de escala natural, sem rolagem horizontal
- PdfCanvas: substitua IntersectionObserver por renderizações ávidas. A abordagem baseada no observador não era confiável quando a guia de design começa com dis...
Atualize para Next.js 16.2.3, TypeScript 6.0.2, Node 24, React 19 types
- Next.js 16.2.3 com Turbopack como servidor dev padrão - TypeScript 6.0.2 com eliminaçãoSyntaxOnly e ES2022 alvo - @types/react@^19 e @types/react-dom@^19 (rea...
Eliminar o conflito de DOM em PDF
Substituir container.innerHTML + apêndicePadrão infantil em ThumbnailCanvas com um ref <canvas> gerido por React. A abordagem antiga descartou a propriedade do ...
Manipulação aplicávelPlanIds e aplicávelBillingCycles como arrays de cordas
Estes campos são digitados como string[] mas tinha .split(",") chama-os, causando falhas de compilação 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...
Reverter as rotas do proxy para a autenticação OTK, remover o helper esigProxy não utilizado
OTK é o mecanismo de autenticação correcto — a abordagem anterior de cabeça de sessão ignorou o padrão de segurança estabelecido. Todas as rotas de proxy do esi...
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...
Usar cabeçalhos diretos de sessão em vez de OTK para rotas proxy EsigService
Leia *** sessão de Redis em Next.js e passe orgId/memberId como confiável cabeçalhos para ESigService via DNS interno K8s. Remove a dependência OTK.
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 ...
Usar o endpoint init para encontrar ou criar um modelo pelo imgId na carga do editor
A página de criação passa imgId no URL. A página de edição agora chama a init endpoint para encontrar ou criar o ESignTemplate, retornou UUID para operações de ...
Add template init endpoint to find-or-create templates by imgId
The create page uploads to the imaging system and redirects with imgId. The edit page now calls POST /api/esig/templates/init with the imgId to find an existing...
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
Adicionar editor de modelo de assinatura eletrônica com tela de design, sinalizadores e versão
Reescrita completa da página /doc/sign/edit com interface de tabulação (Configurações & Signers, Design), PDF.js canvas com sobreposição de campo arrastável, fe...
Initial ESigService Spring Boot project for e-signature template management
New microservice with REST API for e-signature template CRUD, signer management, design version snapshots, and field link tracking. Includes OTK auth filter, Fo...
Adicionar entidades de modelo de assinatura eletrónica, enums e repositórios
Novas entidades JPA para o sistema de projeto de modelo de assinatura eletrónica: ESignTemplate, ESignTemplateSigner, ESignTemplateDesignVersion e ESignTemplate...
Mapeamento correto do nome do campo entre a infraestrutura e a interface para a API de nível de acesso
Segurança de backend do mapaLevelId→accessLevel, isOrganizationOwner→isOwner, memberType→isTeamMember in API route. Corrigir a verificação correta para usar EDI...
Adicionar back estático para página de oferta quando a API de assinatura não estiver disponível
A mesa ainda não existe em produção. então a API retorna um erro. Recuar para a promoção codificada e planejar dados assim, a página de oferta funciona independ...
Atualizar o tipo ApiPromotion para corresponder à nova resposta da infraestrutura List<String>
aplicávelPlanIds e AplicávelBillingCycles são agora arrays, não strings JSON.
Extend 18DOFF promotion end date to 2026-12-31
The April 14 end date was causing the offer page to show as expired.
Remover validação secreta do webhook redundante, APIService lida com a autenticação HMAC
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...
Redact K8s nomes secretos na exibição changelog, substituir por ***
Estatísticas do lado do servidor para totais reais, rolos infinitos, contagens precisas de filtros
Barra de estatísticas e contagem de comprimidos de filtro agora vêm de /api/changelog/public/stats (agregados DB reais, não contagens de páginas carregadas). Bo...
Remover KamoGamesRoboCluck de projetos públicos changelog, adicionar scripts de backfill
Adicionar /api/changelog/public/stats endpoint para contagem de agregados por tipo e projeto
Adicionar pesquisaByProjectIn query to CommitLogRepository for stats endpoint
Forçar a página changelog a renderizar dinamicamente, não estaticamente em tempo de compilação
Usar a porta 80 para o URL de serviço do SecurityService K8s, e não a porta de aplicação bruta 4201
Truncar títulos de commit superiores a 500 caracteres para evitar falhas de inserção DB
Adicionar validação secreta do webhook ao endpoint do changelog
Defesa em profundidade: valida o cabeçalho *** no SegurançaService lado além de validação de gateway APIService.
Expose changelog webhook through APIService with secret key auth
Adds POST /api/changelog/webhook route that validates *** header before forwarding to SecurityService. Secret configured via CHANGELOG_WEBHOOK_SECRET env var / ...
Mover o Registo de Alterações para os Recursos nav/footer e adicionar a todos os Mapas de Sites
Atualizar data de lançamento do banner de pré-visualização para 20 de abril
Remover soluções de análise JSON para arrays ID do plano de assinatura
A infra- estrutura agora retorna arrays apropriados ao invés de strings JSON, então o já não é necessária a lógica de recurso try/parse/catchback no pacote adic...
Use List<String> instead of manual JSON strings for promotion plan/cycle IDs
Update KamoCRMPricingLoader to use List.of() for applicablePlanIds and applicableBillingCycles, matching the shared library's migration from JSON strings to ent...
Migrar os campos da subscrição JSON para relações @ManyToMany baseadas na entidade
Substituir as colunas de texto jsonb (planIds compatíveis, incluídosInPlanIds, aplicáveisPlanIds, AplicávelBillingCycles) com JPA adequado @ManyToManyJunta tabe...
Configurar projetos públicos changelog com todos os 23 repos Forgejo
Adicionar substituições de texto insensíveis a maiúsculas para a exibição changelog
Substitui nomes de ferramentas internas por nomes de face pública (Docs-> Doutores, Conheça->Meet, Capcha->Capcha, Criador Avatar->Avatar Creator, etc.) em títu...
Adicionar página Live Change Log com interface temporal, filtros e estatísticas
O servidor obtém changelog do SecurityService, componente cliente fornece filtragem de projeto/tipo, agrupamento de datas, descrições expansíveis, e mais carga ...
Adicionar o CommitType enum, a entidade CommitLog e o CommitLogRepository para o sistema changelog
Adicionar editor de nível de acesso às configurações de membros com substituição de etiquetas específicas para org
Renomear CLIENT→MEMBER e INTERNAL→TEAM MEMBER em ImageAccessLevelType.ts com placeholders {var}. Adicione a seção de nível de acesso a RolesPermissionsTab com c...
Como o que vês no transporte?
Cada uma dessas atualizações pousa automaticamente em seu espaço de trabalho. Comece grátis e veja crescer semana após semana.