I encountered something weird, that I cannot explain. It could be an error, but I was not able to pinpoint this.
It seems as if the \rotate macro plays havoc with the macro definitions used to set the color of the frame and an outside title.
Placing the outside title before the rotate proves that the call to \rotate is the culprit.
I enclose an MWE with a little jpeg figure as illustration.

yours sincerely
dr. Hans van der Meer

\def\formattitle#1{\color[\boxtitlecolor]{#1\strut}}
\def\boxfigurerotate#1#2{%
\rotate[rotation=10]%
{%
\externalfigure[#1]%
[rulethickness=4pt,width=100pt,height=50pt,frame=on,framecolor=\boxframecolor,]%
}%
\formattitle{#2}%
}
\def\boxfigure#1#2{%
\externalfigure[#1]%
[rulethickness=4pt,width=100pt,height=50pt,frame=on,framecolor=\boxframecolor,]%
\formattitle{#2}%
}

\def\boxtitlecolor{blue}
\def\boxframecolor{blue}

\starttext
\ConTeXt\ \contextversion
\blank
Problem:\crlf
it looks like \type{\rotate[]{}} kills the definition of boxtitlecolor.
Changing the names of the titlecolor/framecolor definitions makes no difference.
\crlf
Why is this? ConTeXt error?
\blank

\boxfigure{test}{norotation: title color is blue}
\blank

\boxfigurerotate{test}{rotation: title color should be blue but is not}
\blank

\def\boxframecolor{red}
\boxfigurerotate{test}{rotation: title color different from framecolor now blue}

\stoptext