KOS Release Notes are official documents published with each new version of the KOS platform and its tools, including KOS Studio. They provide a clear summary of all changes delivered in a specific release.
Release Notes are essential for anyone working with the KOS ecosystem—developers, integrators, partners, and business stakeholders—because they help users quickly understand:
- New Features: Highlights of new capabilities or tools added to the platform.
- Enhancements: Enhancements to existing features, performance optimizations, or user experience updates.
- Resolved Issues: Issues resolved from previous versions, helping teams track reliability improvements.
- Breaking Changes: Changes that may affect backward compatibility or require adjustments to existing projects.
- Known Issues: Current limitations or defects that users should be aware of, often with workarounds or planned fixes.
For developers and technical teams, KOS Release Notes are an essential guide for planning upgrades, testing new features, and ensuring ongoing compatibility in projects built on the KOS smart dispense operating system.
Java Docs
KOS Release v1.6.5
June 20, 2025
Enhancements:
- MSV Support: Added support for Multi-Sweetener Valve(MSV).
KOS Release v1.6.4
June 11, 2025
Resolved Issues
- Global Flush Card Error Logging: Fixed an issue where failures to send the Global Flush card were not logged in the Java logs. Additionally, these failures are now correctly reported in analytic events.
Enhancements
- Sim Pour Strategy: Added catch-up state handling to the Pour Strategy on Sim.
KOS Release v1.6.3
April 17, 2025
Resolved Issues
- Fixed api name in BeveragePourBuilder: addSeletedFixedPour() is now addSelectedFixedPour()
- Fixed bug in BeveragePourBuilder where percentage volumes are scaled by 100.
- Fixed DelayPourable to properly complete future.
KOS Release v1.6.2.2
March 31, 2025
Resolved Issues
- Fixed analytic event types for troubles.
- Fixed pump tech
KOS Release v1.6.2.1
March 11, 2025
Enhancements
- Added support for reading extraPostWashVolume from recipe ingredient data.
KOS Release v1.6.2
February 24, 2025
Enhancements
- Added ResolveDeviceManifest.getAllKabs() to return information about every kab that is in use by the running manifest.
- Implemented back end events for replace line functionality. This now deletes ingredient assignments, removes the existing container and purges the previous ingredient history for the holder, allowing new ingredients to be inserted without impact from change out rules.
- Added analytic event for replace line requests.
KOS Release v1.6.0
February 17, 2025
Enhancements
- BeveragePourListener replaces the BeverageSequence argument with BeveragePour. This new type contains the sequence as well as other pour-related information.
- Pump.getPour() is now of type Pour instead of Terminable, allowing access to more high-level information about the pour. Both PumpIntent and BeveragePour implement the Pour interface.
- BeveragePourEngine.buildFuture(Pourable p, Object lock) has been changed to buildFuture(Pourable p, BeveragePumpEventInitiator initiator). This improves the generation of pump lifecycle events for beverage pours. When using freestyle extension, this is handled internally.
- FreestylePipelineErrorHandler is replaced by a new error handling infrastructure. References to this class must be removed.
- Freestyle extension has a new pump error handling infrastructure that implements the complex Freestyle error semantics. This brings KOS error handling in line with FOS error handling.
- CartridgeAgitationService has a config setting to enable InsufficientAgitationTroubles. This is now off by default as it’s not required for platforms with towers. This prevents beverages from being blocked during startup agitation.
- MSV two strike sold out now uses pump error handler service.
- LFCV two strike sold out now uses pump error handler service.
- Added PumpOp error handler to allow LCFV to go sold out on a single strike. This should be used for LFCV calibration pours to ensure failed pours generate sold out and force a reset. To use this, specify errorHandlerId=”lfcvSingleStrikeSoldOut” in the vpour operation for the calibration intent.
- Support for delegated pump intents when used with composite pumps / super pumps (logical pumps that are made up of multiple physical pumps). When an intent specifies delegated=”true” then the intent will be applied to each child pump that makes up the composite pump. The logical composite pump will also generate pump intent lifecycles but without actually pouring. The parent intent will only be successful if all child intents are also successful.
- Added LFCVPumpNoFlowTrouble as a single strike trouble used to generate LFCVSoldOutTrouble.
- Added MSVPumpNoFlowTrouble as a single strike trouble used to generate MSVSoldOutTrouble.
- Initial support for log level overrides.
- Convert class strips decimal places from integer types before attempting conversions to avoid throwing exceptions.
- InsertionService now supports group/position for filters, allowing finer-grained control over the ordering of filters in the insertion pipeline, including the ability to add new filters in an arbitrary position in the pipeline.
Resolved Issues
- Bug fix for agitator interlocks when using multiple pumps concurrently. This could have resulted in the agitator running during pouring operations.
