We built hash-chained workflow histories to make agent execution tamper-evident Dapr has introduced cryptographic tamper detection for workflow execution histories by signing each history event with the sidecar's mTLS identity, creating an auditable hash chain. The feature requires careful root CA lifecycle planning, as expired or rotated roots will invalidate all signed workflows. This ensures that workflow events cannot be modified, reordered, or removed after being written. Workflow history signing Dapr workflow history signing provides cryptographic tamper detection for workflow execution histories. Every history event produced during a workflow’s lifetime is signed using the sidecar’s mTLS identity X.509 SPIFFE Verifiable Identity Document SVID , creating an auditable chain of signatures that is verified each time the workflow state is loaded. Before you enable signing: plan your root CA lifecycle Workflow history signing trusts your Dapr root CA . The default Dapr-generated self-signed root is valid for one year . If that root expires, or if you rotate to a new root with a different private key, every signed workflow issued under the old root stops verifying and fails to load with error type SignatureVerificationFailed . There is no re-sign path. Before turning the feature on, decide which of the following you will commit to: Renew the leaf/issuer with the same root key recommended . Back up the Dapr-generated root private key now and reuse it for every renewal, or Bring your own CA with a root key you control and store securely HSM or secret store , and reuse it for all issuer renewals, or Drain before rotating to a new root. Only run workflows short enough to complete or be purged inside one root-CA validity window, and complete or purge all signed workflows before rotating the root. If you cannot guarantee one of these for the full lifetime of your longest workflow, do not enable signing yet . See long-running workflows and root CA expiry /developing-applications/building-blocks/workflow/workflow-history-signing/ long-running-workflows-and-root-ca-expiry for the full guidance. About SPIFFE Verifiable Identity Documents SVIDs An SVID is the workload’s digital passport. Each Dapr sidecar gets one from Sentry and uses it both for mTLS and for signing workflow history. SPIFFE ID : embedded in the X.509 certificate in the URI Subject Alternative Name as spiffe://