cluster() stores the measures that cost no more than one pass over the
assignments on its result, where get_metrics() returns them, and reports
the mean silhouette as not requested. This function computes the same
measures and the mean silhouette, whose cost is quadratic in the number of
cases. The silhouette uses Euclidean distances over the clustered features,
clust@config@features, and excludes cases labeled noise (label 0).
Each measure carries a status: computed, unsupported (the clustering
does not have what the measure needs, such as a membership matrix), or
not_applicable (the silhouette when fewer than two clusters hold a case).
x must be the data clust was fitted on, with one row per case, since the
measures pair each row with its fitted assignment. Data whose fingerprint
differs from the one cluster() recorded raises an error.