I use Pandoc to generate LaTeX, which uses longtable. By default table captions for longtable do not get placed in the margin. Based on this answer a working solution is the following hack:
\makeatletter
\def\LT@makecaption#1#2#3{%
\noalign{\smash{\hbox{\kern\textwidth\rlap{\kern\marginparsep
\parbox[t]{\marginparwidth}{\vspace{10pt}%
\@tufte@caption@font\@tufte@caption@justification\noindent
#1{#2:~}\ignorespaces#3}}}}}}
\makeatother
Caption in the outer margin using longtable within a tufte-latex document
However, this always places the caption on the right. Using the symmetric document option, the margin alternates, and this therefore breaks margin placement. This is using the latest TinyTeX with the XeTeX engine (though PDFTeX doesn't shows the same error).
Another minor issue is that even on pages with right margins the captions are slightly indented horizontally and line spacing seems off?
Showing slightly indented margin caption:

M[non]WE:
\documentclass[symmetric,nobib]{tufte-book}
\usepackage{longtable,booktabs}
% fix longtable captions:
% https://tex.stackexchange.com/questions/182653/caption-in-the-outer-margin-using-longtable-within-a-tufte-latex-document
\makeatletter
\def\LT@makecaption#1#2#3{%
\noalign{\smash{\hbox{\kern\textwidth\rlap{\kern\marginparsep
\parbox[t]{\marginparwidth}{\vspace{10pt}%
@tufte@caption@font@tufte@caption@justification\noindent
#1{#2:~}\ignorespaces#3}}}}}}
\makeatother
\begin{document}
\begin{table}[h]
\centering
\begin{tabular}{lcr}
\toprule
Heading & Style & Size \
\midrule
Part & roman & {40} \
Chapter & italic & {40} \
Section & italic & {26} \
Subsection & italic & {26} \
Paragraph & italic & 10/14 \
\bottomrule
\end{tabular}
\caption{This is a table with a caption. This is some filler text.}
\end{table}
Here is some text.\marginnote{This is a marginnote.}
\begin{longtable}[]{@{}lll@{}}
\caption{This is a longtable with a caption. This is some filler text.}\tabularnewline
\toprule\noalign{}
Sun & Earth & Moon \
\midrule\noalign{}
\endfirsthead
\toprule\noalign{}
Sun & Earth & Moon \
\midrule\noalign{}
\endhead
\bottomrule\noalign{}
\endlastfoot
A & D & G \
B & E & H \
C & F & I \
\end{longtable}
\newpage
\begin{table}[h]
\centering
\begin{tabular}{lcr}
\toprule
Heading & Style & Size \
\midrule
Part & roman & {40} \
Chapter & italic & {40} \
Section & italic & {26} \
Subsection & italic & {26} \
Paragraph & italic & 10/14 \
\bottomrule
\end{tabular}
\caption{This is a table with a caption. This is some filler text.}
\end{table}
Here is some text.\marginnote{This is a marginnote.}
\begin{longtable}[]{@{}lll@{}}
\caption{This is a longtable with a caption. This is some filler text.}\tabularnewline
\toprule\noalign{}
Sun & Earth & Moon \
\midrule\noalign{}
\endfirsthead
\toprule\noalign{}
Sun & Earth & Moon \
\midrule\noalign{}
\endhead
\bottomrule\noalign{}
\endlastfoot
A & D & G \
B & E & H \
C & F & I \
\end{longtable}
\end{document}


has the sole placement option for a float is both a bad idea and pointless, since LaTeX overrides it anyway. (Unlesstufterewrites this.) – cfr Nov 13 '23 at 05:01