Archivio file originale a MinIO + download endpoint
Inietti MinIOStorageService; POST /source-file memorizza il caricamento grezzo in privato secchio interno; GET /{id}/source-file lo scorre indietro (controllato...
Importa modelli + Importazioni passate sotto-tabs, auto-rilevamento, ri-import
- Barra sub-tab in LeadManualImportManager: Importa Piombo | Importa modelli | Importazioni passate - LeadImportTemplateManager: elenco modelli/create/edit/dele...
Persist run/records, modello CRUD, header auto-detect & re-import
- LeadImportPersistenzaServizio: intestazione normalizzare+SHA3 impronte digitali (ordinato / non ordinato), mappatura / freccia JSON round-trip, persist run + ...
Indicatore di disponibilità live sul pulsante Lead Credits
Specchio l'indicatore NavPri Leads sull'azione /leads 'Lead Credits': a green/red status dot (verde = piombo è accettabile ora tramite FFA o credito, rosso = ne...
Fare EditableCard onEdit opzionale in modo da riassegnare gating type-checks
La carta di assegnazione passa `canReassignManually ? startEditAssegnazione: non definita` a EditableCard.on Modifica, ma suEdit è stato digitato `() => void` (...
Pulsante bianco/glow per i Leads blink (theme-agnostic vs green branding)
Live NavPri lead alert — green/red dot, lampeggiante, fuoco popup, bordo trim
- LeadAlertProvider (globale, montato a livello NavPri): WS-driven/disponibile-sommario; guida tutto lo stato - NavPri Leads icon: green dot (può accettare) / r...
GET /leads/disponibile-sommario per l'allerta live NavPri
Aggrega l'accettabilità del chiamante in tutti i mercati attivi (cancello del cliente + credito/FFA/ regole quotidiane). Resi haAcceptable / hasAcceptableCredit...
Persistenza della colonna vertebrale per l'importazione di modelli, run & per-row record
Sostituisce le entità acrobazie vuote con classi @Entity reali (modellate sulla LeadIntake* precedente: UUID id, gen random uuid, timestamp DB-default, statoId ...
Stato occupato su Start Import + log di debug di goccia
- disattivare Start Import / Indietro e mostrare un girante + 'Importare...' mentre l'importazione POST è in volo, impedendo le presentazioni duplicate su file ...
Correttezza, scala & PII indurimento in LeadImportController
- dedup tramite query LeadRepository, invece di trovareAll() su tutti gli inquilini (era un OOM/DoS + rischio di esposizione cross-tenant, re-run per 1000-row b...
Domanda di importazione dedup + org-guard membro / assegnazione del prodotto-vendor
- No, no. , proiezione-solo ricerca duplicata per l'importatore manuale (sostituisce un per-batch trovareAll() che ha idratato ogni piombo attraverso tutti gli ...
/intestazione in stile account+tabs, /leads contenitori di carta, gating destro
- LeadsCreditLayout: intestazione gradiente eroe + schede sottolineate (matches /account); filtri+grid in arrotondato /leads-style Card; Disponibile scheda gate...
Mark-reassignment gated by MARK right; Manage-Credits restituisce i membri con Spend/Receive right
LeadAcceptController: marchio-riassegnazione richiede MARK LEADS REQUIRES ASSIGNMENT. LeadCreditController.manage: rendimenti ammissibiliMemberIds (supporti SPE...
3 diritti CRM + quesiti con diritto
RoleRightType: SPEND RECEIVE LEAD CREDIT (147), ****************************************************************************************************************...
Codify §4.2 requisito-writer monolive parziale-unique backstop
Al massimo UN requisito LIVE per (loan file uid, img doc type id, partito) cella d'obbligo. # Idempotency read # non può prendere un concurrent double-instantia...
node-config(k1m1-runner): record data.forgejo.org IPv4 pin + capacità=6
Documenti il live on-node change: dati. forgejo.org è IPv6-solo e k1m1 non ha percorso IPv6, così i contenitori di lavoro hanno appeso ~133s e azioni/checkout n...
Pin marcatoForReassignmentBy FK a INT8 (non ereditato di default)
Senza colonnaDefinizione, Hibernate copie member.id (INT8 DEFAULT Unique rowid()), così CockroachDB ha riempito le righe di cavi esistenti con ids membri fasull...
Non e' vero. (Oggi colonna)
Counts conduce un membro accettato tramite credito/FFA per un prodotto fornitore da un istante UTC (Ricorda l'inizio del giorno locale). Consumato da LeadAccept...
Credit-based lead-assegnazione UI (disponibile/storia/crediti)
- /leads/disponibile: in tempo reale fornitore / griglia di prodotto, atomico Accetta (rota al piombo), commento-gate bloccato stato, righe animare il momento i...
Add to****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************
doc 11 §5.3 step 4 / §10 completezza di audit — ogni mint/receipt/supersede del registro emette un accoppiato WORM AiDecision + LoanIdentifierEvent. Questo aggi...
Quotidiano-allotment perfeit lavoro di audit (ora, per-membro fuso orario)
Registrazioni file FORFEITED per i membri con assegnazioni a goccia che non hanno firmato sul loro completato il giorno locale. Idemponte, cede alle file GRANTE...
Relay credit/lead-assegnamento eventi NATS a STOMP
Sottoscrive security.leads.> e security.credits.>, riflette ciascuno a /topic/... CRM front-end aggiorna i campi Leads-Available grid, Manage-Credits e la stori...
API per il controllo di credito
- LeadAcceptController: GET /leads/disponibile, POST /leads/accept (atomic, comment-gated, FFA + credito), GET /leads/uncommented, POST /leads/{id}/mark-reassig...
Servizi di orchestrazione di credito (shared-lib)
- LeadAllotment.isInfiniteBalance (∞ saldo di credito → mint-on-the-fly ad accettare) - CreditLeadAssignmentService: atomico Accetta-Lead (select→recheck→rechec...
Credit-assegnation helper condiviso-lib
E' una cosa che non va. accettare un altro cancello di piombo (commento = membro non rimosso MediaObj in flusso di piombo) - E' una cosa che non va. spendere pe...
Credit lead-assegnation data model (shared-lib)
- Piombo: richiede Bandiera di assegnazione + contrassegnataPerDimissioniAt/By (nullable; null attore = venditore/importazione API) - No, no. + eventoTypeForKey...
Ciclo di vita di mercato + venditori / prodotti di mercato
- Markets & Fields: sub-tabs attivo/archeggiato; azione della riga è Archivio/Riattiva (PATCH .../active), mai eliminare - Fornitori e prodotti: un sub-tab per ...
Scope mock piombo venditori a un mercato; drop rimosso creareMarket arg
Filtro di stato di mercato, archivio / riattivazione, venditori di mercato
- E' una cosa da fare. (default active); arricchire ogni mercato DTO con prodotti del fornitore derivato dai suoi fornitori - Sostituire DELETE /lead-markets/{i...
Portare i fornitori a un mercato; ricavare prodotti di mercato; mercati di archivio
- LeadVendor acquisisce un MARKET ID richiesto (colonnaDefinition pinned to plain UUID così la colonna FK non eredita l'impostazione predefinita gen random uuid...
Interrompere l'icona di aggiornamento lampeggiando attraverso il loop di controllo infinito
Una volta che un dominio è stato confermato SSL, checkDns incondizionatamente costruito un nuovo oggetto di dominio anche quando sslConfirmed era già vero. Il n...
Aggiungi subdominio multimediale alla lista dei record richiesti
media. provisioning) e streaming multimediale, ma mancava dalla configurazione DNS catalogo, così i clienti non sono stati mai detto di creare il record — lasci...
Ritorno 422 (non 500) quando il membro non ha casella di posta
elencoPiù vecchi e altri endpoint leggiti hanno lanciato IllegalStateException da MailContext.toMailCredentials() quando un membro non aveva credenziali IMAP fo...
Non prendere org con un id di precisione
LabelManager derivato orgIdStr da getOrgIdString() (precision-safe) con un fallback a String (organization.id). Organization.id è un numero JS e in silenzio tro...
Mostra TRIAL in attesa (non-started) distintamente da scaduto sulla piattaforma
Avviare l'orologio di prova sul primo login del proprietario di org
Seed new orgs with a PENDING trial (source=TRIAL, trialExpiresAt=null) che non concede nulla fino all'inizio, quindi iniziare l'orologio di 3 giorni primo login...
Impostare la regione del sito + utilizzare nodo-local MinIO per pod
- Aggiungi kamo.minio.region (MINIO REGION, default us-west-ca-s-1) così SigV4 le firme corrispondono alla regione del sito del server; fissa lo sfondo caricame...
Segna le richieste con la regione del sito configurabile
MinIO ora fa rispettare MINIO SITE REGION (us-west-ca-s-1) nel SigV4 campo di autorizzazione dal momento che la replica del sito è stata abilitata. Il cliente e...
Goccia immagini di sfondo che 404 invece di mostrare un telaio rotto
Tracciare carichi di immagini di sfondo falliti e filtrarli dalla giostra Swiper, così un tema incompleto (ad esempio optionone, il cui bg/2.webp non è mai stat...
Rimuovere la schermata di animazione intro/carico 2s
Drop showIntro/introStato completo, l'effetto timer intro 2s, e il marchio schermo di caricamento del primo giro. La pagina ora rende dritto nello sfondo + ingr...
Chip di prova su NavPri (bianco/rosso, tooltip=expiry) + chip homepage rosso; rimuovere NavTop chip
Non restituire mai 401 da proxy (era logging utenti fuori su enter-as); degradare a vuoto
Pannello sanguina fuori pagina sinistra in modo che il suo bordo non si mostra mai sul rimbalzo; carta sbiadisce ~250ms prima
- Il pannello Welcome/Recover si estende ora --welcome-bleed (16rem) sul bordo sinistro con il suo bordo destro ancora fissato a --welcome-w; l'imbottitura del ...
Proxy inietta X-Member-Id da sessione (me endpoint 400'd, quindi banner di prova non ha mai avuto dati)
Ingresso coreografato — molle del pannello in dopo i carichi di bg, poi sbiadi della carta
Attendere la prima immagine di sfondo (onLoad, con un fallback di sicurezza 3s), poi molla-bounce il pannello di benvenuto/recupero in da fuori schermo a sinist...
Mostra banner di prova sulla homepage di benvenuto (app/page.tsx) top-right, non solo NavTop
Mostra banner di prova per qualsiasi TEAM MEMBER (sistema/team/admin), diminuzione della dipendenza da dio
Come quello che vedi la spedizione?
Ognuno di questi aggiornamenti atterra automaticamente nello spazio di lavoro. Inizia gratis e guardalo crescere settimana dopo settimana.