Milestone 0278 Release Notes

Blank 4/6/2026 15:38 - 4/6/2026 15:38

In this release, we've introduced exciting enhancements like RP-Initiated Logout for OpenIDConnect and improved account management telemetry, while also fixing several bugs that were causing issues with inventory sorting and report configurations. Plus, we've made performance boosts and UI improvements to streamline your experience, ensuring everything runs smoothly and looks great!

Enhancements:

  • #23622: OpenIDConnect: Enable RP‑Initiated Logout with a configurable Post Logout Redirect URI
  • #23613: Platform: Implement account management telemetry
  • #23603: Platform: Non-4K source videos are incorrectly generating 4K HLS renditions
  • #23590: Platform: Column configuration missing on Manage Users page, blocking admins from customizing visible columns
  • #23585: Platform: Add parentOrgId and directOnly query parameters to /api/v4/orgs to filter organizations by parent
  • #23569: Platform: Update Point Allocations page to use standard table while maintaining 'cannot delete' logic and pagination/page size selection
  • #23540: KReporting: update recognitionPeriodResult index to support relational fields
  • #23366: KPromotions: Create automation trigger to show a specified alert
  • #23314: Platform: Show list of saved configuration diffs and allow users to open each diff
  • #22767: KIntegration: Add KCode templating and KCode selector to the Import "File Name" field

Bug fixes:

  • #23636: KReporting: Cannot open "Configure column headers" dialog after filtering index queries
  • #23629: KProducts: Manage Inventory Sorting is not working
  • #23627: KRecognition: Amount Column not Formatted in KPI Web Recognition Leaderboard
  • #23623: Platform: Restore expected behavior when selecting default page size on StandardTable — preserve current tab, params and paging
  • #23620: KReporting: Fix unresponsive Add-to-dashboard / '+' buttons on report pages so widgets can be saved to dashboards
  • #23618: Platform: Admins cannot reorder columns in "Configure column headers" after clicking "Reset defaults"
  • #23612: Platform: Prevent CloudFront cost and throttling by batching/deduplicating invalidations for HLS segment publishing
  • #23610: KSurvey: Fix display of survey creator — prevents $createdBy.formattedName from appearing in the "By" column
  • #23609: Platform: Default user avatar is missing on profile page, showing a blank image
  • #23608: KLeadForms: KPA2 Partner Assistant now returns customer leads instead of showing an unexpected error
  • #23602: KProducts: Product table uploader rejects RRP (Recommended Retail Price) values with decimals, blocking price imports
  • #23594: Platform: Cannot open individual criteria record — ID link redirects back to manageCriteria table list
  • #23593: KSupport: Fix Manage Tickets filter so tickets for the chosen program are displayed
  • #23591: KLeadForms: Fix missed refactor — update Velocity caller to use new findCustomerLeads options (restores leads listing)
  • #23567: kfeedbackapp: Export Feedbacks button returns 404 on survey report page
  • #23561: KLearning: Enrolments page pagination causes HTTP 400 when changing pages or page size
  • #23544: KCommerce2: Stop saving large Order Notes to SalesData extra fields to avoid 1024-character overflow errors when placing orders
  • #23539: KProducts: SKU alias link opens a 404 page preventing admins from viewing the aliased product
  • #23531: KSalesData: Incorrect sales data returned when querying a specific date range on KPA2
  • #23520: KReporting: Allow limited admin users to create and edit index queries limited to their reporting org access -P2
  • #23471: KCommerce2: Shopping Assistant stops working when switching between Grid and List views until the page is reloaded
  • #23413: Platform: Exceptions in sanity checks result in no action taken, but no message is shown to the user
  • #23201: KSupport: Website and Program dropdowns not preselected on admin ticket detail page
  • #23045: Blogs: Unable to create a second category — modal error "Sorry, we could not process your request"
  • #23037: Platform: Content editor should assign stable unique id to each dynamic component instance so reloadFragment works with duplicates
  • #22994: KVoucher: "Redeem by" value not saved when allocating vouchers on the list page
  • #22849: KTimesheet: Auto-populated Vendor appears filled but fails validation when generating invoice from lead
  • #21783: Platform: Deduplicate Profiles page throws server error and fails to show duplicate profiles for admins
  • #21646: KSalesData: Group selection is cleared from Data Series configuration after updating the series
  • #21344: KDashboard: User Administrator sees 404 opening Password Reset record for an Administrator profile
  • #17342: Platform: Date Range component shows promotions from the previously selected website when switching sites in the content editor

Performance:

  • #23616: Platform: Increase cache limits to stabilize performance and reduce cache misses
  • #23475: Platform: Speed up website app-path resolution by applying the admin optimization to getResourceByPath

UI/UX Improvements:

  • #23631: Platform: Move feedback button into megamenu
  • #23625: Platform: Column headers UI polishing — use icon-only controls and add descriptive hover messages (Rename, Drag to reorder, Show/Hide)
  • #23614: KSalesData: Optimise page layout of sales records page
  • #23581: KReporting: Query results default to 100 rows even when page size is set to 20
  • #23576: KSupport: Wrap Manage Tickets table in a panel-default container and apply standard table styling
  • #23575: Admin-lib: Unable to change page size on Website Activity list because selector is absent
  • #23573: KWarranty: Set default warranty registrations list to 20 records per page
  • #23564: Platform: Agentic Email settings — replace trash icon with FontAwesome "times" (fa-times) on delete buttons
  • #23554: Platform: Remove duplicate membership table on User Memberships page so only the updated table is shown
  • #23548: KMarketingDevelopmentFunds: Marketing Plans pagination not applying default 20-record page size
  • #23542: KProducts: Remove default panel for products data list
  • #22653: KGameOfChance: Restore missing Spin-to-Win settings — add Unlucky icon and Win/Lose image options

Security Updates:

  • #23634: Platform: Prevent full expansion of very large numeric ranges — enforce max early to stop excessive memory allocation and DoS risks (K-Editor Build Tool)
  • #23633: Platform: Upgrade async-http-client to 2.15.0 to fix Cookie header leak on cross-origin redirects (CVE-2026-45300)
  • #23545: KLeadman: LeadViewer role incorrectly allows adding and removing tags on customer profiles

Documentation:

  • #23606: Platform: Update Organisations Core Entities API documentation to include new parameters