Archive & download faili ya awali iliyoingizwa
On Mwanzo Import faili ghafi ni uploaded (bora-effort) na ufunguo wake kupita kwa kuagiza POST; Uagizaji wa zamani unaonyesha kifungo cha Download kwa anaendesh...
Faili ya awali ya MinIO + download mwisho
Injects MinIOStorageService; POST /source-file stores the raw upload in the private internal bucket; GET /{id}/source-file streams it back (org-checked); the ke...
Import Templates + Past Imports sub-tabs, auto-detect, re-import
- Sub-tab bar in LeadManualImportManager: Import Leads | Import Templates | Past Imports - LeadImportTemplateManager: template list/create/edit/delete + upload-...
Persist runs/records, template CRUD, header auto-detect & re-import
- LeadImportPersistenceService: header normalize+SHA3 fingerprint (ordered/unordered), mapping/row JSON round-trips, persist run + non-success records, templa...
Live availability indicator on the Lead Credits button
Mirror the NavPri Leads indicator on the /leads 'Lead Credits' action: a green/red status dot (green = a lead is acceptable now via FFA or credit, red = none) a...
Make EditableCard onEdit optional so reassignment gating type-checks
The assignment card passes `canReassignManually ? startEditAssignment : undefined` to EditableCard.onEdit, but onEdit was typed `() => void` (required), failing...
Live NavPri lead alert — green/red dot, blink, fire popup, edge trim
- LeadAlertProvider (global, mounted at NavPri level): WS-driven /available-summary; drives all state - NavPri Leads icon: green dot (can accept) / red (cannot)...
GET /leads/available-summary for the live NavPri lead alert
Aggregates the caller acceptability across all active markets (comment gate + credit/FFA/ daily-spend rules). Returns hasAcceptable / hasAcceptableCredit / bloc...
Persistence spine for import templates, runs & per-row records
Replaces the empty stub entities with real @Entity classes (modeled on the LeadIntake* precedent: UUID id, gen_random_uuid, DB-default timestamps, statusId + @T...
Hali ya Busy juu ya Start Import + drop debug logs
- Disable Kuanza Import / Nyuma na kuonyesha spinner + 'Importing' wakati kuagiza POST ni katika ndege, kuzuia maoni ya duplicate kwenye faili kubwa -Kuondoa [L...
Usahihi, ukubwa & PII mgumu katika LeadImportController
- Imeunganishwa kupitia swala la LeadRepository badala ya FindAll () juu ya wapangaji wote (Ilikuwa OOM / DoS + hatari ya mfiduo wa msalaba, kukimbia tena kwa k...
Scope kuagiza swala la dedup + org-guard mwanachama / kazi ya bidhaa
Kwa mfano, *** kuwa, Projection-tu duplicate lookup kwa mnunuzi mwongozo (inabadilisha kwa kila-batch) (iii) Kuratibu shughuli zote za maendeleo katika ngazi zo...
/account-style header+tabs, /leads Card containers, right gating
- LeadsCreditLayout: gradient hero header + underline tabs (matches /account); filters+grid in rounded /leads-style Card; Available tab gated by SPEND_RECEIVE...
Mark-reassignment gated by MARK right; Manage-Credits returns members with Spend/Receive right
LeadAcceptController: mark-reassignment requires MARK_LEADS_REQUIRES_ASSIGNMENT. LeadCreditController.manage: returns eligibleMemberIds (SPEND_RECEIVE_LEAD_CRED...
3 CRM rights + members-with-right query
RoleRightType: SPEND_RECEIVE_LEAD_CREDIT(147), **************** REASSIGN_LEADS_MANUALLY(149) under CRM. **************** for listing members holding a right. Se...
Codify §4.2 requirement-writer single-live partial-unique backstop
Kwa mahitaji zaidi ya moja ya kuishi kwa kila (loan file uid, img doc type id, chama) Wajibu wa seli. [TD="width: 456"] [FONT=&](2)[/FONT][FONT=&]Bila kuathiri ...
node-config(k1m1-runner): record data.forgejo.org IPv4 pin + capacity=6
Documents the live on-node change: data.forgejo.org is IPv6-only and k1m1 has no IPv6 route, so job containers hung ~133s and actions/checkout failed. Pin its I...
Pin markedForReassignmentBy FK to INT8 (no inherited default)
Without columnDefinition, Hibernate copies members.id (INT8 DEFAULT unique_rowid()), so CockroachDB backfilled existing leads rows with bogus member ids on ALTE...
**************** (Accepted-Today column)
Counts leads a member accepted via credit/FFA for a vendor product since a UTC instant (member local start-of-day). Consumed by LeadAcceptController /leads/avai...
Credit-based lead assignment UI (available/history/credits)
- /leads/available: real-time vendor/product grid, atomic Accept (routes to the lead), comment-gate blocked state, rows animate the moment a lead is claimable...
Add **************** for the registry decision half
doc 11 §5.3 step 4 / §10 audit completeness — every registry mint/receipt/supersede emits a paired WORM AiDecision + LoanIdentifierEvent. This adds the AiFuncti...
Daily-allotment forfeit audit job (hourly, per-member timezone)
Records FORFEITED rows for members with drip allotments who did not sign in on their completed local day. Idempotent, yields to GRANTED rows. Compiles clean (mv...
Relay credit/lead-assignment NATS events to STOMP
Subscribes security.leads.> and security.credits.>, mirrors each to /topic/... so the CRM front-end updates the Leads-Available grid, Manage-Credits fields, and...
Credit lead-assignment API ****************
- LeadAcceptController: GET /leads/available, POST /leads/accept (atomic, comment-gated, FFA + credit), GET /leads/uncommented, POST /leads/{id}/mark-reassign...
Credit-assignment orchestration services (shared-lib)
- LeadAllotment.isInfiniteBalance (∞ credit balance → mint-on-the-fly at accept) - CreditLeadAssignmentService: atomic Accept-Lead (select→lock→recheck→claim, m...
Credit-assignment shared-lib helpers
- **************** — powers the 'must comment before accepting another lead' gate (comment = member's non-removed MediaObj in lead stream) - **************** ...
Credit lead-assignment data model (shared-lib)
- Lead: requiresAssignment flag + markedForReassignmentAt/By (nullable; null actor = vendor/API import) - **************** + eventTypeForKey routing + registry ...
Market lifecycle + market-scoped vendors/products
- Markets & Fields: Active/Archived sub-tabs; row action is Archive/Reactivate (PATCH .../active), never delete - Vendors & Products: one sub-tab per active m...
Scope mock lead vendors to a market; drop removed createMarket arg
Market status filter, archive/reactivate, market-scoped vendors
- GET **************** (default active); enrich each market DTO with vendor-products derived from its vendors - Replace DELETE /lead-markets/{id} with PATCH /...
Scope vendors to a market; derive market products; archive markets
- LeadVendor gains a required MARKET_ID (columnDefinition pinned to plain UUID so the FK column does not inherit the referenced PK's gen_random_uuid() default...
Stop refresh icon blinking via infinite check loop
Once a domain was SSL-confirmed, checkDns unconditionally built a new domain object even when sslConfirmed was already true. The new object reference re-trigger...
Add media subdomain to the required records list
media.<domain> backs the realtime websockets (chat, calls, SMS, theme provisioning) and media streaming, but it was missing from the DNS setup catalog, so custo...
Return 422 (not 500) when member has no mailbox
listFolders and other read endpoints threw IllegalStateException from MailContext.toMailCredentials() when a member had no IMAP credentials provisioned, which t...
Don't fetch org with a precision-truncated id
LabelManager derived orgIdStr from getOrgIdString() (precision-safe) with a fallback to String(organization.id). organization.id is a JS number and silently tru...
Onyesha TRIAL inayosubiri (haikuanza) kwa wazi kutoka kwa muda mrefu kwenye tabo ya mashirika ya jukwaa
Kuanza saa ya majaribio kwenye login ya kwanza ya mmiliki wa org
Seed new orgs with a PENDING trial (source=TRIAL, trialExpiresAt=null) that grants nothing until started, then start the 3-day clock on the owner's first FQDN-s...
Weka eneo la tovuti + kutumia node-local MinIO kwa pod
Ongeza kamo.minio.region (MINIO REGION, default us-magharibi-ca-s-1) hivyo SigV4 saini zinalingana na eneo la tovuti iliyotekelezwa na seva; kurekebisha backgro...
Maombi ya saini na eneo la tovuti ya uhakika
MinIO sasa inatekeleza MINIO SITE REGION (us-magharibi-ca-s-1) katika SigV4. Uwezo wa kufanya kazi kwa kuwa tovuti imewezeshwa. Mteja alikuwa Ilijengwa bila ene...
Weka picha za nyuma ambazo 404 badala ya kuonyesha sura iliyovunjika
Track failed background image loads and filter them out of the Swiper carousel, so an incompletely provisioned theme (e.g. optionone, whose bg/2.webp was never ...
Ondoa 2s Utangulizi / upakiaji wa uhuishaji
Drop showIntro / Intro state hali, 2s utangulizi timer athari, na branded Screen ya upakiaji wa haraka. Ukurasa huu sasa unatoa moja kwa moja kwenye background ...
Chip kesi juu ya NavPri (nyeupe / nyekundu, tooltip = expiry) + homepage chip nyekundu; kuondoa NavTop Chip
Never return 401 from proxy (was logging users out on enter-as); degrade to empty
Jopo linavuja ukurasa wa kushoto kwa hivyo makali yake hayaonyeshi kwenye bounce; kadi hupungua ~ 250m mapema
- Welcome/recover panel now extends --welcome-bleed (16rem) off the left edge with its right edge still pinned to --welcome-w; inner content padding is comp...
Proxy injects X-Member-Id from session (me endpoint 400'd, so trial banner never had data)
Choreographed entrance — panel springs in after bg loads, then card fades
Kusubiri picha ya kwanza ya background (onLoad, na 3s kuanguka usalama), kisha Katika upande wa kulia, utaona sehemu "Maelezo". 300/-Kupunguza uzito). Juu ya bo...
Show trial banner on the welcome homepage (app/page.tsx) top-right, not just NavTop
Je, unaona nini kuhusu usafiri?
Kila moja ya hizi updates ardhi katika nafasi yako ya kazi moja kwa moja. Kuanza bure na kuangalia kukua wiki baada ya wiki.