Pair the meeting-invite fields into two columns when maximized
The invite form stacks eight full-width rows, which in a maximized compose window pushed the body editor most of the way off screen while leaving half the windo...
Number pages against the document the reader gets
Modifiers were keyed off a page's index in the design, which is an identity that survives deletion and reordering, not a position. So deleting page 2 left the p...
Give every popup tool window 40px more room in both axes
Each tool's defaultSize and minSize in the registry grows by 40x40, and the geometry that was hardcoded alongside it moves with it rather than drifting out of a...
Load the number in the softphone without placing the call
Tapping an extension or a number on a correspondent card passed autoDial, so the call went out the moment the softphone registered. The card opens on hover, whi...
Give the card's readout labels room to breathe
The label column was a hand-picked 76px. DEPARTMENT is wider than that, so it overflowed its box and sat flush against its value with no gap, and LOCAL TIME wra...
Drag, cut, copy and paste recipient chips between To, Cc and Bcc
Moving someone from To to Bcc meant deleting the chip and typing the address again from memory. Chips are now selectable and can be dragged or carried on the cl...
Rotate the field overlay with the page, flag unread imports, order fields for reading
Three things that only start to matter once a document arrives carrying forty detected fields instead of two hand-placed ones. Page rotation: rotating a page t...
Paint the correspondent card in the tenant's brand colour
The card was tinted with --accent-comms, the fixed indigo the instrument panel uses to mark the messages family. On the solid "New message" button that reads as...
Kuacha giza-mode anaweka kutua kama maandishi yasiyoonekana katika mtunzi
Copying an answer out of ChatGPT (or any dark-themed page) and pasting it into the compose body produced a large white block with nothing in it, and the message...
Kushiriki umma kujiunga kiungo, si wanachama tu kuelekeza
A meeting link written into an email was pointing at /meet/join/<id>, which mints a one-time key from the clicker's Kamo session — and redirects anyone without ...
Read Acrobat format actions when detecting fillable fields
Acrobat stores a field's intended format as JavaScript in /AA, which pdf.js surfaces as actions.Format. That is the author's declaration rather than a guess off...
Insert a new meeting link at the coder from the composer
Adds a footer action to the compose window that creates a meeting with the organization's configured provider and writes its join link into the body wherever th...
Rebuild a fillable PDF's AcroForm fields as native Kamo fields
Opening an editable PDF in the document editor now reads its AcroForm widget annotations off the pdf.js document and recreates each one as a DesignField on the ...
Stop recipient names being clipped to a letter
The chips were inline-flex boxes whose label carried `truncate`. A flex child with overflow hidden is allowed to shrink below its own content, and nested inside...
Weka mipangilio ya upakiaji wa faili kwa urefu wa nusu ya kadi
Maelezo/Folder/Doc Type/Access Level fields ameketi kwenye mstari wa pili Chini ya safu ya faili, kwa hivyo kila gharama ya kupakia inayosubiri ~ 108px. kuwaing...
Drop the inset around the Resources document manager
DocManager brings its own toolbar and grid chrome, so the 32px wrapper padding was only shrinking the grid inside an already-bounded pane. The wrapper stays as ...
Kadi ya mawasiliano nyuma ya kila jina kwenye ujumbe
Every person shown in a read view was a dead end. To and Cc rendered as displayNameFor(a).join(', ') — a comma wall of display names with no address, no hover, ...
Show the full section-index rail instead of a nested scrollbar
The left nav rail was capped at calc(100vh - 128px) with overflowY: auto, so an org with most features enabled (up to 18 sections across 4 groups, ~710px) grew ...
Portal the break-glass dialog to the body
Clicking break glass opened the dialog inside the nav rail instead of over the page. The overlay is a bare fixed-position motion.div, not a MUI Dialog, so it ha...
Proxy foreign org logos so the tenant img-src policy can't block them
/network is the one page that renders another tenant's branding: it lists every organization in the network and loads each logo from that org's own theme.<domai...
Merge a caller's query with the browser's instead of concatenating
forwardToApi appended the browser's query string to whatever it was given, so a caller passing its own query produced a URL with two '?'. Everything after the f...
Keep upload Folder/Doc Type labels shrunk over native selects
The per-file Folder and Doc Type selects start with an empty value, so MUI left their labels at rest position while the native <select> still painted its first ...
Let a tab fill the content area, so the document manager gets full height
The content wrapper was a plain block, so a page's `flex: 1` had no flex parent to resolve against and the wrapper sized to its contents. DocManager's root is `...
Merge same-named vendors and products in the filter bar
An org routinely holds one lead supplier under several vendor records, so on the "All Markets" tab the Vendor dropdown listed the same name once per record — id...
Remove the filter button from datagrid column headers
AG Grid 32 defaults to the "new" column menu. On Community (no enterprise module) that means no header menu button ever renders — the only header-cell affordanc...
Weka mstari wa maelezo juu ya Meneja wa Hati ya Rasilimali
It described a tab that now shows its own contents, so it was only taking space. descriptionKey goes optional rather than staying as an unrendered string: a tab...
Stop double-appending the query string on the communications route
All / Calls / Texts / Emails failed with "We couldn't load this lead's communications". The backend was fine — direct calls returned 200 with real entries. The ...
Kichupo cha Rasilimali ni maktaba ya hati ya HR ya org
Inabadilisha msimamizi wa rasilimali na DocManager kwenye mkusanyiko wa hati ya yake mwenyewe - ImageAssocType.HR RESOURCE, ndoo imaging-hr-resources - org-scop...
Timeline a11y, timezone-correct day headings, and a summary card that isn't zero
Three defects, each invisible until it bites. The row expander wrapped the whole header in a <button>, and DateTimeDisplay renders its own interactive tooltip ...
Human Resources module shell with five route-backed tabs
Adds /hr with the accounts-page chrome in its route-backed form (the same one /marketing already uses): a layout owning the gradient hero and underlined tab bar...
Complete the Communications tab
Each sub-tab now holds its own data, and All interleaves every channel by date. Notes keeps MediaStream, because notes are authored here — but readOnlyChrome s...
Withhold the reply box from senders that cannot receive one
Sending a quick reply to a KamoCRM notification put the literal text `{"error":"Invalid Addresses"}` in the reply box. The mail server had rejected NoReply@Kamo...
Kujiandikisha Mtoa Setup katika urambazaji, na kuandika tips haraka
Kichupo cha Mtoa Setup kilichotolewa ndani ya MipangilioView lakini kiliweza kufikiwa tu na kuandika URL - ilikuwa kukosa kutoka maeneo yote mawili kwamba orodh...
Outbound Teams call party, live audio devices, provider-aware prompt
Three confirmed findings from the review of 08cecc6d. Outbound Teams calls showed the wrong remote party. TeamsAcsSession derived remoteNumber/remoteName from ...
Weka sheria za ufikiaji wa geo na IP kwenye mizigo ya ukurasa
checkAccess evaluated the rules itself and matched nothing for its entire life: it compared rule types against **************** while the publisher writes the e...
Platform registration card for the Zoom Marketplace app
Completes Zoom's one-click connect path. The backend already resolves PlatformOAuthProviderType.ZOOM, but with no card here a platform operator had nowhere to e...
Microsoft Teams Phone provider, front to back
Adds Teams to **************** and wires the whole path through: provider selection, the Entra + Azure Communication Services config, tenant admin consent, the ...
Provider Setup tab and capability-gated meeting settings
Adds the Provider Setup tab to /settings/features/meets and makes every other tab honest about the provider it is configuring. useMeeting no longer builds meet...
Fit the trail in one pane — no wrapped intro, no double scrollbar
Three things made the tab feel cramped: The intro was capped at 900px, which broke a 170-character sentence onto a second line for no reason; it now uses the w...
Allow-list countries on the geo-blocking card
The card could only deny countries, so an org that serves one country had to enumerate every other one. It now has both lists: a mode toggle picks which list th...
Move System Debug under Platform Administration
**************** diagnostics are operator tooling, not an access rule, so the tab now sits at **************** behind the platform-admin guard instead of MANAGE...
PHI access audit tab layout + its missing menu entry
The tab rendered its content flush against the card border: SettingsView's tab panel supplies no padding of its own, and this tab was the one manager that never...
Open links back into this app in the tab the member is already in
Mail in the reading pane opens every link in a new tab, which is right for the whole internet and wrong for us. Our notification emails are almost entirely link...
Cleaner invite mark in the chat message
The chat invite led with the video-camera emoji, which the message renderer scales to 1.4em — so it landed as an oversized colour sticker rather than an icon. R...
Show the agent's phone, toll-free and email on the preview
Each on its own line: a run-on of two numbers and an address reads as one string and gets dialled wrongly.
Quotes tab — every quote across the account's leads
A server-paged DataGrid beside Leads, with search over number and title, status, total range and created-date range. Filters share one debounce and collapse in...
Show the assigned agent on the preview
Jopo la "Mawasiliano Yako" juu ya footer - jina, cheo, simu na barua pepe - hivyo mteja Kujua nani kuuliza kuhusu gharama. Kukataa kabisa wakati uongozi haukuba...
Reassign the agent holding an opportunity
The approver's dialog gains an agent picker, drawn from the same pool the backend validates against. The grid's Agent column now shows who HOLDS the opportunity...
Stop rounding the lead id through a JS number
Number("1189175700550025222") is 1189175700550025200 — lead ids are unique_rowid() values above Number.MAX_SAFE_INTEGER. The quotes pane converted the route par...
Overall commission, market defaults, and no pre-picked units
Three changes to how commission is captured. Nothing is pre-selected any more. Percent/Amount and One-time/Recurring both start unset on every commission split...
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.