dapr/dapr · error

failed to unmarshal history signature from state key '%s': %

Error message

failed to unmarshal history signature from state key '%s': %w

What it means

Error "failed to unmarshal history signature from state key '%s': %w" thrown in dapr/dapr.

Source

Thrown at pkg/runtime/wfengine/state/state.go:937

		}
		return wState, wferrors.NewVerificationError(err)
	}

	for i := range metadata.GetSignatureLength() {
		key = getMultiEntryKeyName(signatureKeyPrefix, i)
		if bulkRes[key].Data == nil {
			if hasTamperMarker(wState) {
				return wState, nil
			}
			return wState, wferrors.NewVerificationError(
				fmt.Errorf("signature state key '%s' declared in metadata but not found in state store — possible tampering", key),
			)
		}

		var sig backend.HistorySignature
		err = proto.Unmarshal(bulkRes[key].Data, &sig)
		if err != nil {
			return nil, fmt.Errorf("failed to unmarshal history signature from state key '%s': %w", key, err)
		}

		wState.Signatures = append(wState.Signatures, &sig)
		raw := make([]byte, len(bulkRes[key].Data))
		copy(raw, bulkRes[key].Data)
		wState.RawSignatures = append(wState.RawSignatures, raw)
	}

	if bulkRes[customStatusKey].ETag != nil {
		wState.customStatusPersisted = true
	}
	if len(bulkRes[customStatusKey].Data) > 0 {
		wState.CustomStatus = &wrapperspb.StringValue{}

		err = proto.Unmarshal(bulkRes[customStatusKey].Data, wState.CustomStatus)
		if err != nil {
			// Fallback to JSON unmarshaling
			var customStatusValue string

View on GitHub (pinned to 74ad417027)

When it happens

Trigger: Thrown at pkg/runtime/wfengine/state/state.go:937 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of dapr/dapr@74ad417027 (2026-08-16). Data as JSON: /api/errors/23350976bccaef43. Report an issue: GitHub.