mirror of
https://github.com/openai/codex.git
synced 2026-10-29 19:08:43 +00:00
Render assistant file citations as local links (#42650)
## What changed - Convert `codex-file-citation` directives in assistant Markdown into local-file links while preserving paths with Markdown-significant characters, Unicode, Windows separators, and location suffixes. - Apply citation rendering consistently to streaming output, finalized messages and plans, and resume-picker transcript previews. - Keep directives literal in code, HTML, existing links, reference definitions, escaped text, and generic Markdown rendering. - Bound repeated parsing work for malformed directive candidates without limiting valid citations. ## Testing - Add coverage for citation parsing and rendering across finalized, streaming, and resume-preview output, including malformed input and path edge cases. GitOrigin-RevId: 5a0bfb3fc7ac21b7e8846fd170a349fb2d2d5e85
This commit is contained in:
@@ -98,13 +98,13 @@ pub(crate) fn render_markdown_agent_with_links_cwd_and_visualizations(
|
||||
rewritten.trusted_file_links.contains_key(destination)
|
||||
|| crate::markdown_render::hide_web_link_destination(destination)
|
||||
};
|
||||
let mut lines =
|
||||
crate::markdown_render::render_markdown_lines_with_width_cwd_and_hidden_link_destinations(
|
||||
&normalized,
|
||||
width,
|
||||
cwd,
|
||||
&is_hidden_link_destination,
|
||||
);
|
||||
let mut lines = crate::markdown_render::render_streaming_markdown_lines_with_width_and_cwd(
|
||||
&normalized,
|
||||
width,
|
||||
cwd,
|
||||
&is_hidden_link_destination,
|
||||
)
|
||||
.lines;
|
||||
for hyperlink in lines.iter_mut().flat_map(|line| &mut line.hyperlinks) {
|
||||
if let Some(link) = rewritten.trusted_file_links.get(&hyperlink.destination) {
|
||||
hyperlink.retarget_to_trusted_file(&link.destination);
|
||||
|
||||
Reference in New Issue
Block a user