// WithMetadataContext adds a metadata context to the given context.
metadataCtx := &metadataContext{
Metadata: make(map[string]any),
MarkedActivityIDs: make(map[string]struct{}),
}
return context.WithValue(ctx, metadataCtxKey, metadataCtx)
}
// ContextHasMetadata returns true if the context has metadata support.