Milestone 0275 Release Notes

Blank 21/4/2026 14:13 - 21/4/2026 14:13
Release Notes

In this release, we've introduced exciting enhancements like an AI tool for resolving search text to SKU codes and improved promotion types in KPromotions, along with a new passwordless email login feature for easier access. We've also tackled various bugs and performance issues, ensuring a smoother user experience across the platform!

Enhancements:

  • #23386: KProducts: AI tool to resolve search text to SKU codes
  • #23379: KPromotions: Enhance getPromotions AI tool to include more promotion types
  • #23376: KRecognition: KCode for Percentage of Way to Next Level
  • #23367: KReporting: Add default option for current quarter
  • #23340: KRecognition: Award points for sales using the user's tier at the time of each sale
  • #23338: KProducts: Add PO number field to Cart object and display it on admin Order Detail page P2
  • #23337: Platform: Add email token login flow (send login link to user email) for passwordless authentication
  • #23301: Megamenu: Date selector layout improvements
  • #23290: salesDataClaimer: Expose AI claim scanning as a reusable service so other apps can trigger asynchronous scans
  • #23270: Agents: Capture chat created date when starting a conversation
  • #23241: KCommerce2: Add configurable low-stock warning with threshold, custom message, and label color
  • #23170: Platform: Add "Duplicate column" import action to copy a column into a new column during table/CSV uploads
  • #23165: Platform: Allow creating a local secret/private key inline during "Pair new account" so users can continue without leaving the screen
  • #23153: Platform: Enable audit log search by username or email with cross-account (master/sub-account) lookup
  • #23145: Platform: Implement admin notifications for indexing errors
  • #23144: Platform: Elasticsearch discrepancy notifications
  • #23124: KCommerce2: Add toggle to hide product image in the Product View component
  • #23123: KProducts: Add CSV importer to bulk update inventory stock counts for locations
  • #23122: KCommerce2: Add configurable columns (Product ID, SKU ID, Title, Description, Cost) to product list view
  • #22969: KSalesData: Create a new Journey Node and Automation Trigger for when a Sales Data Record is Created

Bug fixes:

  • #23380: KSalesData: AI function to query sales data is too restrictive
  • #23364: KPromotions: Points statement displays duplicate values across custom text fields
  • #23361: Platform: Asset Types filter should only display types relevant to current query results
  • #23360: KSignup: Prevent empty request payload during signup with upload fields and opt-in
  • #23357: salesDataClaimer: Unable to Preview Claim Attachments in Website
  • #23356: KProducts: Product SKU table uploader fails to match distributor SKU aliases — inserts duplicates instead of updating
  • #23355: user-lib: Users cannot delete saved addresses from the front-end profile page (Delete button fails)
  • #23352: Platform: Email sending blocked for users with "Email Sender" role
  • #23344: KAuctions: Winner name duplicated across other auctions that have no winner
  • #23342: KAuctions: Unable to see Closed Auctions in auctionsList Component
  • #23328: Platform: Uploading assets in Assets List Component causes JavaScript error and prevents asset list from reloading
  • #23327: Platform: Fix asset list mobile layout so cards form a consistent responsive grid
  • #23323: KLearning: Unable to complete the SCORM module.
  • #23321: Platform: prevent modal from being wider than viewport on Android browsers
  • #23318: Platform: Email settings appear editable for users with Email Sender role but changes are not saved
  • #23317: Platform: Domain Viewer cannot open Hosted Zones, Registered Domains or App details
  • #23316: KSalesData: Users with SalesDataViewer role cannot access "Data Records" admin pages
  • #23315: Platform: APIs not respecting relevant roles
  • #23313: Platform: Update admin list pages (Members, eCards, Emails) to match Product Categories layout with panel and improved spacing
  • #23305: Megamenu: Menu should close when clicking through to copilot sidepanel
  • #23302: Platform: Copilot side panel overlaps and hides the megamenu, preventing access to menu items
  • #23300: KJourneys: Fix permissions for non-sensitive reference lists so limited-access roles can load node settings dropdowns - P2
  • #23294: KCommerce2: Default Carts & Orders admin view should show only completed orders
  • #23288: KLeadman: Users with parent-organisation access blocked from running lead summarization due to missing access check
  • #23283: Platform: Admins cannot open an organisation's dashboard from the Organisations list — clicking "Admin dashboard" updates the URL but stays on the parent org
  • #23281: AuthorizeNet: Credit-card top-up option missing at checkout when points are insufficient
  • #23276: salesDataClaimer: Limit claims list to 10 items by default and return thumbnails (or placeholder) instead of full images
  • #23256: KProducts: Prevent duplicate product failures when base cost field is empty
  • #23254: KWarranty: Template Error when viewing Registrations in Admin
  • #23204: Platform: Clear search button behaves unexpectedly in the new search framework
  • #23196: KAuctions: Auction detail page shows product images zoomed/cropped instead of full image as in listing
  • #23187: Platform: Carousel "Height" setting ignored — images render at 400px instead of the configured 200px
  • #23156: KLeadman: Update shopping carts user links to use customer profile URLs (custs/) instead of internal manageUsers IDs
  • #23107: KSignup: Selected optional lists do not appear on signup form
  • #23085: KAuctions: Content editor settings fail to open when an auction's brief contains HTML from a product brief
  • #23067: Platform: Prevent a domain being configured on a website if a matching domain registration is in progress
  • #23036: Platform: Ensure asset-viewer URL always returns 200 and displays login form for non-logged-in users (prevents WhatsApp preview failures)
  • #23008: KLeadForms: Estimated Hours range filter excludes tickets with Min/Max boundary values
  • #22847: KLearning: Allow site editors to modify SCORM module page templates via the page editor
  • #17667: Platform: Photo and video components display outdated images after asset replace

Performance:

  • #23369: Platform: Add lazy loading to images in component modal to improve performance in editor and KEditor pages

UI/UX Improvements:

  • #23350: Platform: Sort locales in Localisation Selector on the New account page
  • #23308: AI chat history: Missing Slack in the filter list
  • #23289: Admin UI update: unsubscribes page update
  • #23287: Admin UI update: SKU details
  • #23284: KWarranty: Fix UI bug where extra opt-in choices expand content and move step headings out of place
  • #23277: KPromotions: Update Points Statement Batches page to use standard table for consistent UI and accessibility
  • #23262: KAuctions: Auction status title is not updated after status change
  • #23257: Admin UI update: product sku field delete icon update
  • #23253: Admin UI update: manage scratch cards program - p2
  • #23252: Admin UI update: scratch cards checkboxes alignment
  • #23250: Admin UI update: sales allocations - p2
  • #23249: Admin UI Update: raffle list - p2
  • #23248: Admin UI update: recognition topic list
  • #23236: Configuration/Environment variables: update Admin UI
  • #23217: KGameOfChance: Prize wheel is clipped on small screens, making parts of the wheel unviewable
  • #23198: KIntegration: Add URL format validation to Address input on export creation to avoid "Invalid Output Address" and related errors
  • #23009: KGameOfChance: Points in game description not changing after spending points on a game
  • #22992: Manage user: update admin UI
  • #22921: Reporting/Queries: Update admin UI - p2
  • #22918: Configuration management: update admin UI
  • #22884: Platform: Provide an optional link for containers so that clicking anywhere within the container opens a configured URL
  • #22815: Document co-branding: update admin UI - p2
  • #22814: Admin/Auction detail: update Admin UI - p2
  • #22811: Support programs page: update admin UI - p2
  • #22793: Group emails log issue: update admin UI
  • #22792: Sales records page: update admin UI
  • #22790: Manage data series: update admin UI
  • #22782: kScratch settings page: update admin UI
  • #22757: Kwarranty list: update admin UI
  • #22702: Certificates list: update Admin UI

Security Updates:

  • #23325: KSalesData: Fix permissions — 'Sales Data Viewer' currently allowed to perform destructive actions (reset/delete/mark processed) on records
  • #23057: Platform: Add "Log Out From All Devices" to password update component and invalidate all LoginNonce sessions
  • #23020: Platform: Disable browser autocomplete/autofill on sensitive form fields across the site
  • #23018: Platform: Upgrade outdated front-end libraries to address penetration-test security findings