Skip to main content

Cadence Service Releases

Cadence follows semantic versioning and you can find more information about changes between version on the Cadence changelog.

Latest release for General Availability

v1.4.0 published on 2026-02-27

Major Releases

v1.4.x

v1.3.x

v1.2.x


Release published by eleonoradgr on 3/6/2026

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.4.1-prerelease04...v1.4.1-prerelease05


Release v1.4.1-prerelease04 published by eleonoradgr on 3/5/2026

What's Changed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease33...v1.4.1-prerelease04


Release v1.4.0 published by neil-xie on 2/27/2026

Major Features

1. Active-Active Domains

Cadence domains have been running in active-passive mode for years, which has been limiting for use cases requiring processing in all clusters (regions). Since late 2025, Cadence can process domains in both regions and distribute traffic based on users’ preferences within domains. This change will make your domains more flexible and more efficient due to utilizing resources in all regions.

Key Capabilities

  • Introduced ClusterAttribute as a flexible abstraction for defining cluster groupings beyond traditional region-based configurations
  • Active Cluster Selection Policy allows workflows to specify which cluster attributes they should run on

Migration Path

Active-active support is designed for backward compatibility:

  1. All domains will support active-active by default and without breaking existing behavior. While users setting “cluster attributes” while starting their workflows will be able to benefit from active-active processing
  2. Existing active-passive domains continue to work without changes if leaving “cluster attributes” empty

Current Limitations

This feature is currently implemented for Cassandra and the support for other DBs will come in Q1. We will also release a blog explaining how this improved related use cases, a wiki explaining how to use it and a code lab to help you try out. There is a risk for failover which causes workflows to be stuck if the schedule to start latency plus replication lag is more than 25 mins. We're working on a project to resolve the risk.

2. Replication Improvements

Cadence orchestrates its own replication, which allows us to seamlessly migrate from one DB technology to another, one cloud provider to another etc. The way it was working in the past was that the replication messages would be generated by reading workflow tasks from the database.

Given that replication is a continuous process between Cadence regions, we implemented a cache to keep the replication messages in memory until a replication poll message arrives so we could eliminate the DB calls due to replication. This came with a 99%+ cache hit rate, which almost entirely eliminated the DB calls due to replication, which used to be more than 20% of all DB calls. Another big benefit was for replication latencies; since we can directly serve the messages from memory, our replication latencies dropped from 13s to 2s.

Key Capabilities

  • Replication Budget Manager: New cache capacity control mechanism to prevent memory exhaustion during replication bursts
  • Improved task fetcher concurrency: Better handling of concurrent replication task fetching with enhanced metrics
  • BoundedAckCache optimizations: Generic cache implementation with improved ack handling

3. Shard Distributor Service (in progress)

The Shard Distributor is a new service component that provides dynamic shard assignment and load balancing across matching service instances. This enables better resource utilization, improved scalability, and operational flexibility for large-scale deployments.

Service Components

  • Leader Processor: Centralized controller for shard assignment decisions
  • Executor Client: Integration point for matching service instances to receive shard assignments
  • Spectator Client: Read-only monitoring interface for shard state
  • Canary: Health verification and ping protocol for shard ownership validation

Key Capabilities

  • Dynamic Shard Assignment
  • Dynamic spectator client control with enable/disable support
  • Load Balancing
  • Drain watching support for graceful shard handoff
  • Automatic retry on rebalancing loop failures
  • Migration Support: Migration mode for gradual rollout alongside existing static shard assignment
  • Integration with Matching Service: The matching service has been refactored to support shard distributor integration:

Configuration

The shard distributor can be enabled via dynamic config:

  shard-distributor:
      enabled: true
      loadBalancingMode: "shadow-mode"  # Options: naive, shard-stats, shadow-mode
      migrationMode: true  # Enable gradual migration

Monitoring

  • shard_handover_latency: Time taken for shard ownership transfer
  • active_shards_count: Number of active shards per executor
  • shard_assignment_conflicts: Concurrent assignment conflicts detected
  • executor_heartbeat_status: Executor health and liveness
  • ETCD watch event metrics for observability

4. Caller Type-Based Rate Limiting

A new caller type tracking and bypass mechanism has been introduced to allow granular rate limiting control for debugging and mitigation purposes. Key Capabilities:

  • Caller Type Header Propagation (#7644, #7653, #7638): Introduced cadence-caller-type header that propagates through service boundaries
    • Extracted at service inbound boundaries using middleware
    • Available in CLI via header support
    • Minimal performance impact (~150-300ns per request)
  • Persistence Rate Limiter Bypass (#7656): Dynamic config persistence.rateLimiterBypassCallerTypes allows specific caller types to bypass persistence rate limits
  • Frontend Regional Rate Limiter Bypass (#7662): Caller type-based bypass for regional frontend rate limiter to allow priority requests during high load

5. Visibility Enhancements - Cron and Execution Status (#7527)

Added comprehensive cron workflow visibility with new fields in visibility records:

New Fields:

  • CronSchedule: Display the cron schedule for workflows
  • ExecutionStatus: Show actual execution status (PENDING, STARTED, or close statuses) instead of just CONTINUED_AS_NEW for cron workflows
  • ScheduledExecutionTime: Track the actual scheduled execution time for cron workflows

Schema Changes Required: This feature requires database schema upgrades for all persistence stores (Cassandra, MySQL, PostgreSQL, SQLite, Elasticsearch)

CLI Updates:

  • New --print_cron flag to display cron-related fields in cadence workflow list
  • Shows execution status by default

Performance & Scalability Improvements

  • Database & Persistence

    • PostgreSQL timer task pagination (#7621): Improved pagination logic to handle large timer task queries efficiently
    • History node deletion (#7484): Configurable page size for history deletion via dynamic config
    • Snappy compression for history blobs (#7269): Reduced storage footprint and network transfer for history events
    • SQLite fixes (#7469): Resolved database locking issues for local/test deployments
  • Memory & Resource Usage

    • ETCD watch optimization (#7578): Removed WithPrevKV() to reduce memory overhead in shard manager
    • Reduced allocations in metrics (#7456): Optimized insertReportIntoSizes to minimize GC pressure
    • History deletion improvements (#7472): Fixed infinite loop in RangeCompleteHistoryTask when invalid page size provided

Notable Bug Fixes

  • History & Workflow Execution

    • Child workflow duplicate events (#7400): Proper handling of duplicate child workflow started events
    • Activity scheduled time on reset (#7597): Correctly update not-started activities scheduled time when resetting workflows
    • Restart workflow cron scheduling (#7247): Fixed bug where each restart skipped an additional cron scheduled run
    • History cleanup timeout handling (#7617): Avoid dangerous timeout conditions in history cleanup process
    • Workflow creation leak (#7523): Fixed resource leak during workflow creation in history service
    • Signal-with-start cleanup (#7540): Proper handling of signal-with-start in cleanup logic
    • Signal handling with DelayStart (#7702): Prevent signals from bypassing DelayStart configuration
  • Cross-Datacenter Replication

    • Domain ID usage in replication (#7550): Use domain ID instead of domain name for more reliable replication
    • Replication panic logging (#7396): Improved error handling and logging for replication stack panics
    • Database consistency error detection (#7573): More accurate detection of DB consistency errors
  • Active-Active Operations

    • Race condition in failover (#7587): Fixed race condition during active-active failover
    • Query workflow support (#7339): Proper query handling for active-active domains
    • StartWorkflow with terminate-if-running (#7361): Correct policy enforcement for active-active workflows
    • Auto-forwarding (#7356): Fixed cluster forwarding logic for active-active domains
    • Standby task handling (#7423): Prevent premature dropping of standby tasks in active-active scenarios
  • Matching Service

    • TaskList stop on shard stop (#7581): Properly stop task lists when stopping shard processor
    • TaskListActivitiesPerSecond enforcement (#7575): Correct rate limiting enforcement
    • Nil load hints handling (#7551): Added nil pointer checks for load hints
    • TaskList partition config invalidation (#7618): Properly invalidate TaskListPartitionConfig on attempted writes to read-only partitions
    • Domain not active error handling (#7676): Fixed domain not active error to be non-retryable for matching service in active-active scenarios
    • TaskList management with shard distributor (#7682): Properly handle shard processor lifecycle when onboarded to SD
    • Task list registry pattern (#7720): Introduced registry for better task list management
  • Persistence & Database

    • Host tag reversion (#7675): Reverted addition of host tag to persistence calls due to issues
    • History cleanup defaults (#7661): Changed defaults for history cleanup configuration
    • History cleanup error classification (#7627): Tightened error classifications for history cleanup operations
    • Visibility upsert optimization (#7693): Only upsert search attributes when advanced visibility is enabled
  • CLI

    • Rate limiter fix (#7585): Replaced token bucket with standard limiter in CLI for more reliable rate limiting
    • Admin CLI config parsing (#7726): Fixed parsing of multiple config values

Observability Enhancements

  • Metrics

    • Host tagging for persistence metrics (#7530): Better attribution of persistence operations to specific hosts
    • Shard handover latency (#7442, #7614): Track time taken for shard ownership transfers
    • Replication task fetcher metrics (#7462): Enhanced visibility into task fetcher performance
    • Workflow access tracking (#7331): New metrics to track workflow access patterns
  • Logging

    • CallerType and CallerInfo propagation (#7564, #7574, #7588): Context propagation for request tracing
    • Improved replication logging (#7584): Better logs for matching and active-active operations
    • Cluster redirection logs (#7333): Enhanced logging for cluster redirection handler
    • Error classification (#7466): Better categorization of errors in shard distributor
  • Monitoring Tools

    • Canary Grafana dashboard (#7464): Documentation for workflow success counter panels
    • Dynamic config observability (#7605): Standardized comments for all dynamic configs

CLI Enhancements

  • Failover domain command (#7295): New cadence domain failover command for active-active domains
  • Cluster attributes in start workflow (#7494): Support --cluster-attributes flag when starting workflows
  • Describe workflow improvements (#7461): Show ActiveClusterSelectionPolicy in describe output
  • Cluster attributes in domain describe (#7539): Display cluster attributes when describing domains
  • Failover history rendering (#7444, #7407): Improved rendering of domain failover history
  • Workflow refresh tasks command (#7657): New cadence workflow refresh-tasks command allows non-admin users to refresh workflow tasks

Code Quality & Maintenance

  • Refactoring

    • Domain handler refactoring (#7403, #7401, #7395): Multi-phase cleanup and modernization
    • History engine test refactoring (#7343, #7342): Improved test structure and maintainability
    • Matching engine refactoring (#7593, #7592, #7591, #7547): Replaced callbacks with explicit Registry pattern
    • Mapper nil handling (#7434): Comprehensive nil checking improvements across all mappers
    • Remove panics in type conversions (#7258): Safer error handling in proto/thrift mappers
    • QueueManager/Queue interfaces (#7652): Refactored queue manager and queue interfaces for better maintainability
    • Matching load calculation (#7647): Simplified load calculation for shards
    • Domain audit filter cleanup (#7725): Removed MaxCreatedTime from DomainAuditLogFilter
  • Testing

    • Simulation test improvements (#7303, #7283): Better active-active simulation testing
    • Integration tests (#7344): New DescribeCluster integration test
    • Conventional commit enforcement (#7278): CI validation of commit message structure
  • Deprecation & Cleanup

    • Removed deprecated dynamic configs (#7613): Cleanup of unused configuration properties
    • Removed deprecated fields (#7388, #7365, #7357, #7275): Cleanup of legacy active-active fields
    • Commented code removal (#7592): Removed obsolete code in matching engine
    • ExternalEntityProvider removal (#7292): Removed deprecated active-active provider
  • Infrastructure

    • CI improvements (#7649): Added pull request reviewer automation via gitar
    • PR template updates (#7596): Added comprehensive reviewers checklist to pull request description
    • Issue automation (#7615): GitHub action to standardize issue descriptions and labeling
    • Code ownership (#7659): Added natemort and c-warren to CODEOWNERS
  • Code Generation

    • Missing codegen (#7663): Fixed missing code generation that had snuck into master

Security & Authorization

  • ResetStickyTaskList auth (#7340): Added to non-domain auth API list
  • Auth README documentation (#7368): Comprehensive authentication documentation

Infrastructure

  • Docker compose for OpenSearch (#7510): Local development support for OpenSearch
  • Go toolchain upgrade (#7414): Updated Go toolchain and mockery
  • ETCD integration test fixes (#7502): Stabilized ETCD-based tests
  • Multi-cluster test scripts (#7327): Moved scripts to proper location

Migration Notes

Schema Upgrades Required

  • Visibility Schema v0.10 (Cassandra): Adds ExecutionStatus, CronSchedule, and ScheduledExecutionTime fields
  • Visibility Schema v0.8 (MySQL): Adds execution-related fields
  • Visibility Schema v0.9 (PostgreSQL): Adds execution-related fields
  • Visibility Schema v0.2 (SQLite): Adds execution-related fields
  • Elasticsearch Templates: Updated for v6, v7, and OpenSearch v2
  • PostgreSQL support for DomainAudit (#7665)
  • Cassandra schema updates synced with IDL changes (#7727, #7723)

Dynamic Config Changes

  • New config: persistence.rateLimiterBypassCallerTypes - List of caller types to bypass persistence rate limiting

Documentation

  • Auth system documentation (#7368)
  • Canary monitoring dashboard guide (#7464)
  • Domain update and failover documentation (#7382)
  • Multi-cluster setup improvements (#7282)
  • Contributor guide updates (#7337)

New Contributors

Resources


Release v1.3.7-prerelease33 published by eleonoradgr on 2/16/2026

What's Changed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease31...v1.3.7-prerelease33


Release v1.3.7-prerelease31 published by fimanishi on 2/5/2026

What's Changed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease29...v1.3.7-prerelease31


Release v1.3.7-prerelease29 published by davidporter-id-au on 1/21/2026

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease28...v1.3.7-prerelease29


Release v1.3.7-prerelease28 published by davidporter-id-au on 1/14/2026

What's Changed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease26...v1.3.7-prerelease28


Release v1.3.7-prerelease26 published by eleonoradgr on 1/2/2026

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease23...v1.3.7-prerelease26


Release v1.3.7-prerelease23 published by fimanishi on 12/8/2025

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease21...v1.3.7-prerelease23


Release v1.3.7-prerelease21 published by davidporter-id-au on 12/3/2025

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease20...v1.3.7-prerelease21


Release v1.3.7-prerelease20 published by eleonoradgr on 11/27/2025

  • feat(shard-distributor): add spectator client for read-only shard state monitoring by @jakobht in #7438
  • chore(shard-distributor): classify errors by @arzonus in #7466
  • docs: Canary Grafana Dashboard Panel for workflow success counter by @vishwa-uber in #7464
  • fix(sqlite): fix database locked issues by @arzonus in #7469
  • feat(shard-distributor): refactor time handling, data store structures, key building in etcd by @arzonus in #7447
  • feat(shard-distributor): add GetMetadata and GetNamespace methods to executor interface by @jakobht in #7477
  • fix(shard-distributor): prevent context cancellation in streaming WatchNamespaceState RPC by @jakobht in #7474
  • fix(shard-distributor): fix unit test in handler by @arzonus in #7479
  • fix(shard-distributor): make DeleteShardStats non-transactional and fix cleanup condition by @AndreasHolt in #7465
  • feat: [shard-distributor]Compress data before writing to ETCD by @gazi-yestemirova in #7412
  • fix(etcdstore): fix merge conflict on etcdstore_test by @fimanishi in #7483
  • fix(rpc): dns updater should not update current peer on failures by @shijiesheng in #7424
  • feat(active-active): Fail StartWorkflow request if cluster attribute doesn't exist by @Shaddoll in #7485
  • fix(RangeCompleteHistoryTask): fix infinite loop when page size provided is <= 0 by @fimanishi in #7472
  • fix(jitter): allow input equal to 0 to be provided without panic by @fimanishi in #7481
  • feat(persistence): make DeleteFromHistoryNode page size a dynamic config by @fimanishi in #7484
  • feat(persistence): make DeleteFromHistoryNode page size a dynamic config by @fimanishi in #7488
  • feat(shard-distributor): add canary gRPC protocol for executor-to-executor pings by @jakobht in #7475
  • [fix(shard-distributor): remove trimming of prefixes by @eleonoradgr in #7490

Release v1.3.7-prerelease19 published by arzonus on 11/20/2025

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease18...v1.3.7-prerelease19


Release v1.3.7-prerelease18 published by davidporter-id-au on 11/18/2025

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease17...v1.3.7-prerelease18


Release v1.3.7-prerelease17 published by fimanishi on 11/18/2025

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease16...v1.3.7-prerelease17


Release v1.3.7-prerelease16 published by fimanishi on 11/14/2025

What's Changed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease15...v1.3.7-prerelease16


Release v1.3.7-prerelease16 published by fimanishi on 11/14/2025

What's Changed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease15...v1.3.7-prerelease16


Release v1.3.7-prerelease15 prerelease published by davidporter-id-au on 11/12/2025

What's Changed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease12...v1.3.7-prerelease15


Release v1.3.7-prerelease15 prerelease published by davidporter-id-au on 11/12/2025

What's Changed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.7-prerelease12...v1.3.7-prerelease15


Release v1.3.7-prerelease12 published by davidporter-id-au on 11/6/2025


Release v1.3.6 published by neil-xie on 10/15/2025

What's Changed

Added

Changed

Fixed

Removed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.5...v1.3.6


Release v1.3.6 published by neil-xie on 10/15/2025

What's Changed

Added

Changed

Fixed

Removed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.5...v1.3.6


Release v1.3.5 published by jakobht on 9/18/2025

New Features & Major Enhancements

  • Shard Management & Distribution:
    • We now assign shards to empty executors, so when a new executor joins it will have shards assigned to it (#7175) by @jakobht
    • Support for creating ephemeral shards (#7209) by @jakobht
    • Remove done ephemeral shards (#7212) by @jakobht
    • Integration of removal of ephemeral shards in the executor library (#7216) by @jakobht
    • Determinized the shard assignments (#7184) by @jakobht
    • Add multi-namespace support to shard distributor executor client (#7236) by @jakobht
  • Active-Active:
    • [active-active] Insert cluster selection policy row as part of continue-as-new (#7146) by @taylanisikdemir
    • Return ActiveClusterSelectionPolicy on DescribeWorkflow requests (#7181) by @c-warren
    • [active-active] Add simple lru cache for workflow cluster selection policies (#7174) by @taylanisikdemir
  • Authorization & Security:
    • Introduce a feature flag to enable admin authorization (#7168) by @gazi-yestemirova
    • [admin-auth]Make ListDomainEndpoint accessible for customers (#7187) by @gazi-yestemirova
  • History & Matching:
    • Define feature flags to support virtual queue split for history queue v2 (#7141) by @Shaddoll
    • Implement handler for queue pending task count alert (#7150) by @Shaddoll
    • Support dispatching activities with a specific TaskListKind (#7157) by @natemort
  • Workflow Diagnostics:
    • [Wf-Diagnostics] return details of currently running diagnostics on duplicate trigger (#7142) by @sankari165
    • [Wf-Diagnostics] Limit number of issues per type returned in diagnostics (#7189) by @sankari165
  • Serialization:
    • Add a feature flag for serialization encoding (#7148) by @tubignat

Bug Fixes

  • History / Matching:
    • Do not generate scheduled task with timestamp in the past (#7070) by @Shaddoll
    • Don't attempt to dispatch expired activities (#7204) by @natemort
    • Fix standby task processing for history queue v1 (#7144) by @Shaddoll
    • Fix bugs for history queue v2 (#7178) by @Shaddoll
    • Reset update queue state timer on failure (#7194) by @Shaddoll
    • [active-active] Fix lookup workflow by domain id (#7171) by @taylanisikdemir
  • Persistence & Visibility:
    • Remove version constraint for OpenSearch bulk delete requests (#7163) by @neil-xie
    • Remove version constraint for es v6 and v7 bulk delete requests (#7167) by @neil-xie
    • Fix write fallback logic when use advanced writing mode but only db is available (#7200) by @neil-xie
    • catch scroll node not found exception and start fresh scroll (#7155) by @anuragrai16
  • CLI & UI:
    • Fix the incorrect error message output of the command cadence workflow start/run (#7182) by @ins-tril
    • fix: update the incorrect UI URL (#7183) by @ins-tril
    • fixed typo in Search Attributes creation (#7208) by @dkrotx
  • Other Fixes:
    • [Wf-Diagnostics] fix marshalling error in failure rootcause (#7166) by @sankari165
    • Grafana: Client Concurrency Panel bugs fixes (#7198) by @Bueller87

Improvements & Refactoring

  • Core Internals & Performance:
    • Improve handling of unknown isolation groups (#7143) by @natemort
    • Validate workflow reset based on requested event type (#7116) by @fimanishi
    • Force creating new virtual slice every 5 mins (#7161) by @Shaddoll
    • Check peer existence before release peer (#7162) by @neil-xie
    • Set a limit on page size for history queue v2 (#7179) by @Shaddoll
    • Added shard not found error (#7186) by @jakobht
    • Bypass failover drills for active-active domains (#7191) by @c-warren
    • Retry standby tasks immediately on failover (#7199) by @Shaddoll
    • Improve domain failover for history queue v2 (#7205) by @Shaddoll
  • Code Quality & API:
    • exposes constructor for Cassandra DB instance tooling use (#7153) by @davidporter-id-au
    • makes the option to pass in a GoCQL connection public (#7154) by @davidporter-id-au
    • [Wf-Diagnostics] remove workflow retry as a potential diagnostic issue (#7156) by @sankari165
    • Fix Best Practice in Rule File (#7152) by @jayne-s
    • Refactered the shard reassignment method (#7165) by @jakobht
    • refactor unit test cases for ConstructStartWorkflowRequest to reduce code duplication (#7206) by @ansidev
    • Refactor data manager interface (#7229) by @ansidev
  • Observability (Metrics & Logging):
    • Introduce new tag for actor type (#7197) by @sankari165
    • Improve logging and metric for history queue v2 (#7221) by @Shaddoll
    • Add Domain Redirection Metrics for Active-Active (#7202) by @c-warren
    • Add complete history tasks metric (#7234) by @Shaddoll
  • Configuration & Defaults:
    • Update the default value of history.readNoSQLHistoryTaskFromDataBlob to true (#7173) by @Shaddoll

Tooling, CI, & Operations

  • CLI & Admin Tools:
    • Add MCP Tool for Cadence Workflow Commands (#7151) by @jayne-s
    • [cli]Make security token an optinal argument (#7192) by @gazi-yestemirova
  • Local Development & Docker:
    • Use a target-arch-compatible (and more up to date) version of dockerize (#7149) by @Groxx
    • Add direnv support for local development (AI generated/assisted) (#7188) by @jakobht
    • [docker] set matching.enableClientAutoConfig to true in dynamic config (#7193) by @shijiesheng
    • Changing to legacy docker image of bitnami (#7219) by @dkrotx
  • Observability:
    • Add client autoscaler grafana panels (#7177) by @Bueller87
  • Testing & CI:
    • Fix flaky test for virtual queue (#7145) by @Shaddoll
    • Test reapply events active-active logic (#7135) by @c-warren
    • Run replication simulation scenarios as part of CI (#7158) by @taylanisikdemir
    • Fix thrift decode test flakyness (#7160) by @taylanisikdemir
    • Test Mutable State Load() in Active-Active scenarios (#7159) by @c-warren
    • Test StartTransaction (#7169) by @c-warren
    • Test allocateTimerIDsLocked() (#7172) by @c-warren
    • Set up simulation test for history queue v2's pending task alert (#7180) by @Shaddoll
    • Set up integration test for pending task alert of history queue v2 (#7196) by @Shaddoll
    • Changing one of cli tests to be more explicit (#7211) by @dkrotx
    • Fixing flaky-tests in matching (#7213) by @dkrotx
    • Changing test to be compatible with urfave3 (#7217) by @dkrotx

Documentation

  • Add How-To for Async API setup (#7176) by @taylanisikdemir
  • Adding Directives + Using NewBatchFuture for Concurrency Example (#7170) by @jayne-s

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.4...v1.3.5


Release v1.3.5 published by jakobht on 9/18/2025

New Features & Major Enhancements

  • Shard Management & Distribution:
    • We now assign shards to empty executors, so when a new executor joins it will have shards assigned to it (#7175) by @jakobht
    • Support for creating ephemeral shards (#7209) by @jakobht
    • Remove done ephemeral shards (#7212) by @jakobht
    • Integration of removal of ephemeral shards in the executor library (#7216) by @jakobht
    • Determinized the shard assignments (#7184) by @jakobht
    • Add multi-namespace support to shard distributor executor client (#7236) by @jakobht
  • Active-Active:
    • [active-active] Insert cluster selection policy row as part of continue-as-new (#7146) by @taylanisikdemir
    • Return ActiveClusterSelectionPolicy on DescribeWorkflow requests (#7181) by @c-warren
    • [active-active] Add simple lru cache for workflow cluster selection policies (#7174) by @taylanisikdemir
  • Authorization & Security:
    • Introduce a feature flag to enable admin authorization (#7168) by @gazi-yestemirova
    • [admin-auth]Make ListDomainEndpoint accessible for customers (#7187) by @gazi-yestemirova
  • History & Matching:
    • Define feature flags to support virtual queue split for history queue v2 (#7141) by @Shaddoll
    • Implement handler for queue pending task count alert (#7150) by @Shaddoll
    • Support dispatching activities with a specific TaskListKind (#7157) by @natemort
  • Workflow Diagnostics:
    • [Wf-Diagnostics] return details of currently running diagnostics on duplicate trigger (#7142) by @sankari165
    • [Wf-Diagnostics] Limit number of issues per type returned in diagnostics (#7189) by @sankari165
  • Serialization:
    • Add a feature flag for serialization encoding (#7148) by @tubignat

Bug Fixes

  • History / Matching:
    • Do not generate scheduled task with timestamp in the past (#7070) by @Shaddoll
    • Don't attempt to dispatch expired activities (#7204) by @natemort
    • Fix standby task processing for history queue v1 (#7144) by @Shaddoll
    • Fix bugs for history queue v2 (#7178) by @Shaddoll
    • Reset update queue state timer on failure (#7194) by @Shaddoll
    • [active-active] Fix lookup workflow by domain id (#7171) by @taylanisikdemir
  • Persistence & Visibility:
    • Remove version constraint for OpenSearch bulk delete requests (#7163) by @neil-xie
    • Remove version constraint for es v6 and v7 bulk delete requests (#7167) by @neil-xie
    • Fix write fallback logic when use advanced writing mode but only db is available (#7200) by @neil-xie
    • catch scroll node not found exception and start fresh scroll (#7155) by @anuragrai16
  • CLI & UI:
    • Fix the incorrect error message output of the command cadence workflow start/run (#7182) by @ins-tril
    • fix: update the incorrect UI URL (#7183) by @ins-tril
    • fixed typo in Search Attributes creation (#7208) by @dkrotx
  • Other Fixes:
    • [Wf-Diagnostics] fix marshalling error in failure rootcause (#7166) by @sankari165
    • Grafana: Client Concurrency Panel bugs fixes (#7198) by @Bueller87

Improvements & Refactoring

  • Core Internals & Performance:
    • Improve handling of unknown isolation groups (#7143) by @natemort
    • Validate workflow reset based on requested event type (#7116) by @fimanishi
    • Force creating new virtual slice every 5 mins (#7161) by @Shaddoll
    • Check peer existence before release peer (#7162) by @neil-xie
    • Set a limit on page size for history queue v2 (#7179) by @Shaddoll
    • Added shard not found error (#7186) by @jakobht
    • Bypass failover drills for active-active domains (#7191) by @c-warren
    • Retry standby tasks immediately on failover (#7199) by @Shaddoll
    • Improve domain failover for history queue v2 (#7205) by @Shaddoll
  • Code Quality & API:
    • exposes constructor for Cassandra DB instance tooling use (#7153) by @davidporter-id-au
    • makes the option to pass in a GoCQL connection public (#7154) by @davidporter-id-au
    • [Wf-Diagnostics] remove workflow retry as a potential diagnostic issue (#7156) by @sankari165
    • Fix Best Practice in Rule File (#7152) by @jayne-s
    • Refactered the shard reassignment method (#7165) by @jakobht
    • refactor unit test cases for ConstructStartWorkflowRequest to reduce code duplication (#7206) by @ansidev
    • Refactor data manager interface (#7229) by @ansidev
  • Observability (Metrics & Logging):
    • Introduce new tag for actor type (#7197) by @sankari165
    • Improve logging and metric for history queue v2 (#7221) by @Shaddoll
    • Add Domain Redirection Metrics for Active-Active (#7202) by @c-warren
    • Add complete history tasks metric (#7234) by @Shaddoll
  • Configuration & Defaults:
    • Update the default value of history.readNoSQLHistoryTaskFromDataBlob to true (#7173) by @Shaddoll

Tooling, CI, & Operations

  • CLI & Admin Tools:
    • Add MCP Tool for Cadence Workflow Commands (#7151) by @jayne-s
    • [cli]Make security token an optinal argument (#7192) by @gazi-yestemirova
  • Local Development & Docker:
    • Use a target-arch-compatible (and more up to date) version of dockerize (#7149) by @Groxx
    • Add direnv support for local development (AI generated/assisted) (#7188) by @jakobht
    • [docker] set matching.enableClientAutoConfig to true in dynamic config (#7193) by @shijiesheng
    • Changing to legacy docker image of bitnami (#7219) by @dkrotx
  • Observability:
    • Add client autoscaler grafana panels (#7177) by @Bueller87
  • Testing & CI:
    • Fix flaky test for virtual queue (#7145) by @Shaddoll
    • Test reapply events active-active logic (#7135) by @c-warren
    • Run replication simulation scenarios as part of CI (#7158) by @taylanisikdemir
    • Fix thrift decode test flakyness (#7160) by @taylanisikdemir
    • Test Mutable State Load() in Active-Active scenarios (#7159) by @c-warren
    • Test StartTransaction (#7169) by @c-warren
    • Test allocateTimerIDsLocked() (#7172) by @c-warren
    • Set up simulation test for history queue v2's pending task alert (#7180) by @Shaddoll
    • Set up integration test for pending task alert of history queue v2 (#7196) by @Shaddoll
    • Changing one of cli tests to be more explicit (#7211) by @dkrotx
    • Fixing flaky-tests in matching (#7213) by @dkrotx
    • Changing test to be compatible with urfave3 (#7217) by @dkrotx

Documentation

  • Add How-To for Async API setup (#7176) by @taylanisikdemir
  • Adding Directives + Using NewBatchFuture for Concurrency Example (#7170) by @jayne-s

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.4...v1.3.5


Release v1.3.4 published by neil-xie on 8/20/2025

What's Changed

Added

Changed

Fixed

Removed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.3...v1.3.4


Release v1.3.4 published by neil-xie on 8/20/2025

What's Changed

Added

Changed

Fixed

Removed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.3...v1.3.4


Release v1.3.4-prerelease09 published by davidporter-id-au on 8/12/2025

Changes since v1.3.4-prerelease08

Features & Improvements

  • Makes the option to pass in a GoCQL connection public (#7154)
  • Exposes constructor for Cassandra DB instance tooling use (#7153)
  • Implement handler for queue pending task count alert (#7150)

Bug Fixes & Reliability

  • Fix thrift decode test flakyness (#7160)
  • Catch scroll node not found exception and start fresh scroll (#7155)

Testing & CI

  • Run replication simulation scenarios as part of CI (#7158)
  • Test reapply events active-active logic (#7135)

Infrastructure

  • Use a target-arch-compatible (and more up to date) version of dockerize (#7149)
  • Fix Best Practice in Rule File (#7152)

Release v1.3.4-prerelease09 published by davidporter-id-au on 8/12/2025

Changes since v1.3.4-prerelease08

Features & Improvements

  • Makes the option to pass in a GoCQL connection public (#7154)
  • Exposes constructor for Cassandra DB instance tooling use (#7153)
  • Implement handler for queue pending task count alert (#7150)

Bug Fixes & Reliability

  • Fix thrift decode test flakyness (#7160)
  • Catch scroll node not found exception and start fresh scroll (#7155)

Testing & CI

  • Run replication simulation scenarios as part of CI (#7158)
  • Test reapply events active-active logic (#7135)

Infrastructure

  • Use a target-arch-compatible (and more up to date) version of dockerize (#7149)
  • Fix Best Practice in Rule File (#7152)

Release v1.3.3 published by neil-xie on 8/6/2025

What's Changed

Added

Changed

Fixed

Removed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.2...v1.3.3


Release v1.3.3 published by neil-xie on 8/6/2025

What's Changed

Added

Changed

Fixed

Removed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.2...v1.3.3


Release v1.3.2 published by neil-xie on 7/3/2025

What's Changed

Added

Changed

Fixed

Removed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.1...v1.3.2


Release v1.3.2 published by neil-xie on 7/3/2025

What's Changed

Added

Changed

Fixed

Removed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.1...v1.3.2


Release v1.3.1 published by jakobht on 6/11/2025

What's Changed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.0...v1.3.1


Release v1.3.1 published by jakobht on 6/11/2025

What's Changed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.3.0...v1.3.1


Release v1.3.0 published by neil-xie on 5/14/2025

What's Changed

Added

Changed

Fixed

Removed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.2.18...v1.3.0


Release v1.3.0 published by neil-xie on 5/14/2025

What's Changed

Added

Changed

Fixed

Removed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.2.18...v1.3.0


Release v1.2.19-prerelease07 published by davidporter-id-au on 4/22/2025

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.2.19-prerelease06...v1.2.19-prerelease07


Release v1.2.19-prerelease07 published by davidporter-id-au on 4/22/2025

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.2.19-prerelease06...v1.2.19-prerelease07


Release published by davidporter-id-au on 4/18/2025


Release published by davidporter-id-au on 4/18/2025


Release v1.2.18 published by neil-xie on 4/3/2025

What's Changed

Important Notice:

There's a new opt-in feature for autoscale of tasklist partitions. It's optional but recommended for large scale use cases. Please refer to tasklist-partition-config.md for additional details on the migration and its rationale.

Added

Changed

Fixed

Removed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.2.17...v1.2.18


Release v1.2.18 published by neil-xie on 4/3/2025

What's Changed

Important Notice:

There's a new opt-in feature for autoscale of tasklist partitions. It's optional but recommended for large scale use cases. Please refer to tasklist-partition-config.md for additional details on the migration and its rationale.

Added

Changed

Fixed

Removed

New Contributors

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.2.17...v1.2.18


Release v1.2.17 published by jakobht on 3/5/2025

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.2.16...v1.2.17


Release v1.2.17 published by jakobht on 3/5/2025

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.2.16...v1.2.17


Release v1.2.16 published by neil-xie on 2/19/2025

What's Changed

Full Changelog: https://github.com/cadence-workflow/cadence/compare/v1.2.15...v1.2.16



For a comprehensive list of changes and detailed release notes, please visit the Cadence GitHub Releases page.