# Every key path of a serialized `History` at format version 1.
#
# Paths follow the same form as accounted_fields.txt: arrays add `[]`, and an
# object tagged with `role` or `type` adds its tag as a segment. A path ending
# in `{}` holds free-form JSON (provider data, application data, `Other` wire
# data, provider tool output, a tool result object), whose keys are not part
# of the format.
#
# `history_format_paths_are_pinned` (accounted.rs) serializes a history with
# every message, content and source kind and every field set, and fails when
# a path appears or disappears. That is a format change: after 0.1 it bumps
# `HISTORY_FORMAT_VERSION`, in a minor release only.
format_version
messages[].assistant.app_data{}
messages[].assistant.cache.retention
messages[].assistant.content[].image.detail
messages[].assistant.content[].image.media_type
messages[].assistant.content[].image.provider_data{}
messages[].assistant.content[].image.source.base64.data
messages[].assistant.content[].image.source.base64.media_type
messages[].assistant.content[].other.data{}
messages[].assistant.content[].other.origin
messages[].assistant.content[].other.provider_data{}
messages[].assistant.content[].other.type_name
messages[].assistant.content[].provider_tool_call.arguments
messages[].assistant.content[].provider_tool_call.id
messages[].assistant.content[].provider_tool_call.name
messages[].assistant.content[].provider_tool_call.origin
messages[].assistant.content[].provider_tool_call.provider_data{}
messages[].assistant.content[].provider_tool_result.call_id
messages[].assistant.content[].provider_tool_result.is_error
messages[].assistant.content[].provider_tool_result.origin
messages[].assistant.content[].provider_tool_result.output{}
messages[].assistant.content[].provider_tool_result.provider_data{}
messages[].assistant.content[].reasoning.provider_data{}
messages[].assistant.content[].reasoning.text
messages[].assistant.content[].refusal.provider_data{}
messages[].assistant.content[].refusal.text
messages[].assistant.content[].text.citations[].cited_text
messages[].assistant.content[].text.citations[].provider_data{}
messages[].assistant.content[].text.citations[].source.document.index
messages[].assistant.content[].text.citations[].source.document.title
messages[].assistant.content[].text.citations[].source.file.file_id
messages[].assistant.content[].text.citations[].source.file.filename
messages[].assistant.content[].text.citations[].source.url.title
messages[].assistant.content[].text.citations[].source.url.url
messages[].assistant.content[].text.citations[].span.end
messages[].assistant.content[].text.citations[].span.start
messages[].assistant.content[].text.provider_data{}
messages[].assistant.content[].text.text
messages[].assistant.content[].tool_call.arguments
messages[].assistant.content[].tool_call.id
messages[].assistant.content[].tool_call.name
messages[].assistant.content[].tool_call.provider_data{}
messages[].assistant.provider_data{}
messages[].tool.app_data{}
messages[].tool.cache.retention
messages[].tool.content
messages[].tool.content[].file.filename
messages[].tool.content[].file.media_type
messages[].tool.content[].file.provider_data{}
messages[].tool.content[].file.source.base64.data
messages[].tool.content[].file.source.base64.media_type
messages[].tool.content[].file.source.provider_file.id
messages[].tool.content[].file.source.provider_file.origin
messages[].tool.content[].file.source.url.url
messages[].tool.content[].image.detail
messages[].tool.content[].image.media_type
messages[].tool.content[].image.provider_data{}
messages[].tool.content[].image.source.base64.data
messages[].tool.content[].image.source.base64.media_type
messages[].tool.content[].image.source.provider_file.id
messages[].tool.content[].image.source.provider_file.origin
messages[].tool.content[].image.source.url.url
messages[].tool.content[].other.data{}
messages[].tool.content[].other.origin
messages[].tool.content[].other.provider_data{}
messages[].tool.content[].other.type_name
messages[].tool.content[].text.citations[].cited_text
messages[].tool.content[].text.citations[].provider_data{}
messages[].tool.content[].text.citations[].source.document.index
messages[].tool.content[].text.citations[].source.document.title
messages[].tool.content[].text.citations[].source.file.file_id
messages[].tool.content[].text.citations[].source.file.filename
messages[].tool.content[].text.citations[].source.url.title
messages[].tool.content[].text.citations[].source.url.url
messages[].tool.content[].text.citations[].span.end
messages[].tool.content[].text.citations[].span.start
messages[].tool.content[].text.provider_data{}
messages[].tool.content[].text.text
messages[].tool.content{}
messages[].tool.is_error
messages[].tool.name
messages[].tool.provider_data{}
messages[].tool.tool_call_id
messages[].user.app_data{}
messages[].user.cache.retention
messages[].user.content
messages[].user.content[].file.filename
messages[].user.content[].file.media_type
messages[].user.content[].file.provider_data{}
messages[].user.content[].file.source.base64.data
messages[].user.content[].file.source.base64.media_type
messages[].user.content[].file.source.provider_file.id
messages[].user.content[].file.source.provider_file.origin
messages[].user.content[].file.source.url.url
messages[].user.content[].image.detail
messages[].user.content[].image.media_type
messages[].user.content[].image.provider_data{}
messages[].user.content[].image.source.base64.data
messages[].user.content[].image.source.base64.media_type
messages[].user.content[].image.source.provider_file.id
messages[].user.content[].image.source.provider_file.origin
messages[].user.content[].image.source.url.url
messages[].user.content[].other.data{}
messages[].user.content[].other.origin
messages[].user.content[].other.provider_data{}
messages[].user.content[].other.type_name
messages[].user.content[].text.citations[].cited_text
messages[].user.content[].text.citations[].provider_data{}
messages[].user.content[].text.citations[].source.document.index
messages[].user.content[].text.citations[].source.document.title
messages[].user.content[].text.citations[].source.file.file_id
messages[].user.content[].text.citations[].source.file.filename
messages[].user.content[].text.citations[].source.url.title
messages[].user.content[].text.citations[].source.url.url
messages[].user.content[].text.citations[].span.end
messages[].user.content[].text.citations[].span.start
messages[].user.content[].text.provider_data{}
messages[].user.content[].text.text
messages[].user.provider_data{}