Milestone 0282 Release Notes

Blank 28/7/2026 14:49 - 28/7/2026 14:49

In this release, we've made some exciting enhancements like improving custom field searches, adding a help panel to the Team Management page, and allowing AI agents to run background tasks in KJourneys. Plus, we've fixed several bugs to streamline your experience, including issues with promotion management and search functionalities.

Enhancements:

  • #23941: KSalesData: Improve custom field search with case-insensitive matching
  • #23926: KPromotions: Promotion type is now selected before the wizard, with recognition topics preselected
  • #23925: KRecognition: Show current and total periods in the recognition topic list
  • #23924: Platform: Team Management page now includes a help panel
  • #23923: Platform: Add a New Organisation shortcut in the admin mega menu
  • #23920: KMarketingDevelopmentFunds: Show plan and claim counts, and hide claim submission for unapproved plans
  • #23915: KMCP: Show friendlier AI tool names and prompt before risky actions
  • #23910: KBlogs: Add AI tools to list blogs, list/create articles, and publish/unpublish articles
  • #23899: Platform: Consolidate markdown parsing and generation to a single service
  • #23898: KTimesheets: update timesheet review export with SR Title
  • #23897: KLeadForms: Add SR client name to lead export on the client support page
  • #23896: Platform: add a year-only option for date codes
  • #23895: KIntegration: Support environment variables and secret placeholders in endpoint settings
  • #23890: Platform: Preview changes between current and new website versions from the Publish page
  • #23883: Platform: Standardize tool results into a single JSON envelope for reliable AI actions and transparent error reporting
  • #23880: Platform: Implement analytics for spreadsheets
  • #23877: KJourneys: Let AI agents run background tasks to update leads, complete tasks, and progress journeys automatically
  • #23876: KPromotions: Unify points awarding and deduction processes to simplify future staging
  • #23855: KMCP: Safely run third-party JavaScript and modules in a sandbox with CPU, memory, and network limits
  • #23852: KRaffle: Automatically select and award raffle winners on a daily schedule
  • #23842: KReporting: Deploy queries repo as a single snapshot so destination matches source exactly
  • #23839: KSupport: Allow support admins to create tickets on behalf of a specific customer contact
  • #23838: Platform: Visual editor for Intrusion Detection & Prevention (IDP) policies — manage rules, metrics and known IPs
  • #23836: KGameOfChance: Ensure backend errors are presented clearly to users in the game popup for easier troubleshooting
  • #23826: KSignup: Add optional User ID column to Pending Applications component
  • #23824: KPromotions: Allow all promotion mechanics to be configured inline without leaving the page
  • #23797: Platform: Secure AI web fetch returns Markdown summaries and blocks private or spoofed domains
  • #23484: KTimesheets: Add a download button for raw timesheet entries
  • #23260: KAuctions: Various Improvements to Auctions List

Bug fixes:

  • #23930: KSalesData: Search data records by extra fields again
  • #23928: KLearning: Enrolment promotions can now be edited and saved correctly
  • #23927: KCommerce2: Deleted stores are no longer available when creating promotion checkout rules
  • #23911: KBlogs: Builder-created articles will no longer bypass review and approval
  • #23906: KReporting: Hide dashboard widgets when the report is unavailable
  • #23901: Platform: Fix .co.uk domain purchase failing when 'UK Contact Type' is not selected
  • #23889: Platform: Prevent "The requested cache does not exist" errors by auto-restoring cleared named caches
  • #23884: KGameOfChance: Add Default empty-slot layout so Spin to Win reliably shows prizes when using Adaptive Probability
  • #23882: KGameOfChance: Block plays if prize stock is empty and do not deduct points
  • #23870: KLeadman: Tasks list pagination broken — page size changes do not move to the expected records
  • #23868: KPromotions: Fix editing links on promotion details pages
  • #23864: KSalesData: Team filter prevents users from finding sales data
  • #23862: KLearning: Unable to filter training records by organisation — no results shown for valid organisation
  • #23860: KReporting: Allow creators and group members to edit their Personal and Group-restricted queries
  • #23856: KReporting: Missing the query name in the action summary
  • #23854: KPromotions: Promotion management page fails to load and returns a 500 error
  • #23851: Platform: pagination should reset to page 1 when searching
  • #23848: Platform: Profile avatars for parent account users fail to load in child accounts
  • #23844: Platform: Show translated subject lines when creating Group Emails from templates
  • #23840: salesDataClaimer: AI Function ignores configured Amount Behavior when submitting claims, always defaulting to quantity
  • #23833: Platform: Font Awesome icon selector doesn't update for additional text components until the page is saved
  • #23831: KIntegration: Fix "invalid URL" error so admins can re-save SFTP endpoint addresses
  • #23829: Platform: Improve organization search with organization-type filter, multi-field text search, and better relevance -P2
  • #23814: Platform: Cannot install platform app if it's only declared as website dependency
  • #23770: Platform: Controller mappings fail to load for handsontable-lib, preventing related features from initializing
  • #23745: KLearning: Error appears when switching modules, preventing module summary from updating
  • #23632: KLeadman: Journey filter on Tasks page now shows only configured journeys and an "All Journeys" option
  • #23481: KCommerce2: Multi-bucket points checkout uses remaining balances after a bucket is depleted
  • #23251: KScratch: Fix duplicate card name error preventing creation of new scratch cards
  • #23116: KRaffle: Show friendly "Please select a raffle" message in editor when no promotion is set
  • #22991: KOAuth2: 'Create' button on the Manage Users API Keys tab does nothing
  • #22986: Platform: Fix missing admin reason on follow-up "Login as" sessions so actions are properly recorded
  • #22011: KRecognition: Participants see "no access" on leaderboards and period picker even when they're in the recognition period
  • #21686: KReporting: Short-range (1- and 3-day) date histograms now display every non-zero hourly bar
  • #20138: Platform: The Photo component should not allow users to upload WebP images

Performance:

  • #23875: KPromotions: Load promotion options only when the date picker is opened to speed up admin pages

UI/UX Improvements:

  • #23929: Platform: Improve breadcrumbs and page titles
  • #23881: Platform: Standardised UI for showing/hiding introductory text for main app pages
  • #23735: Platform: Update Customize Column Headers modal so the Save action uses the primary visual style for admins
  • #23734: Platform: Remove icons from Manage Users action dropdown to simplify the Admin UI
  • #23689: KLeadman: Fixed the Lead Profile tab so it no longer displays customer leads and assigned leads under the same header
  • #23240: KCommerce2: Disable website links on the eCommerce Stores page when a site is deleted
  • #23218: KGameOfChance: Make auto-rendered High Striker use the same color settings as the dedicated High Striker
  • #23051: Platform: Simplify password reset confirmation on website and admin login pages
  • #23001: Platform: Fix panel tile layout and responsiveness so course, module, promotion and blog cards display consistently on desktop and mobile
  • #13966: KLearning: Improve Journey Builder UX by loading programs/courses/modules after website/version selection and keeping manual code entry for compatibility

Documentation:

  • #23917: Document for AI agent in Journey
  • #23816: Create a blog article - Close to Level Notifications
  • #23807: KRecognition: add help pages for Closed To Level Node
  • #21725: Update the document for DocuSign