DataMind Oda saves your chats as session log files on your computer as you work. If Oda stops suddenly, for example in a power cut or a forced restart, everything the chat had saved is kept; Oda repairs the unfinished part when you open the chat again.
A stop in the middle of a save can leave an incomplete piece at the end of a chat's log, one that was never finished. When Oda opens that chat again, it serves every complete record and skips only the incomplete piece. It records the recovery with the note:
session "<id>" recovered from a torn tail; incomplete tail bytes were discarded
You do not need to do anything. The next time Oda writes to the chat, it clears the incomplete bytes and saves the recovered records.
For where session logs live and how Oda keeps them, see Session files on your computer.
If Oda stops in the middle of an answer, the chat's last turn is left open. When you open the chat again, Oda closes it without inventing content:
Earlier messages are unchanged, and the chat is ready to continue.
Oda saves before it acts, so a crash can leave an interrupted call in one of two states:
TOOL_OUTCOME_UNKNOWN) and
carries the note Do not retry blindly. Oda checks what the action did, for example whether a
file was written, before repeating it.TOOL_NOT_STARTED), with a note that it can be retried if it is still needed.If you press Stop in the message box while Oda is still saving a step, before a command starts,
the command does not run. The call is recorded as cancelled before dispatch
(ABORTED_BEFORE_DISPATCH) and its result says Error: tool call aborted before dispatch. Nothing
was executed, so you can ask again if you still need it. See Chat with Oda for
stopping a task.
Oda saves the chat at three points:
If a save fails, Oda stops instead of continuing on unsaved state: the request or action is refused,
you may see Error: disk unavailable, and the turn fails. Work that runs inside a command shares
that command's save point. None of these points can be configured.
A chat can be held for writing by only one copy of DataMind Oda at a time. When another copy holds the chat, for example because the desktop app and the web app are open side by side, the chat does not open: the refusal carries the code session/, and the app asks you to quit the other running instances before you try again. This is not damage to the log; the other copy still holds the chat, and quitting it lets the chat open normally.
A crash can also leave a damaged or out-of-order record in the middle of a log. When Oda reads such a log:
For the messages these cases can produce, see Session log problems. A chat written by a different version of Oda is a separate case; see Opening sessions from other versions.
One chat has one writer at a time. When another copy of DataMind Oda, such as the desktop app or the web app, is holding the chat, the open is refused with session/ and the app asks you to quit the other running instances. It is not a problem with the log: quit the other copy, then open the chat again.
No. Everything the chat had saved before the stop is kept. The unfinished part is repaired: an open turn is closed as interrupted, and a call without a saved result is marked so it is not repeated blindly.
recovered from a torn tail mean?Oda found an incomplete piece at the end of the chat's log, usually from a stop in the middle of a save. It opens the chat with every complete record and skips the incomplete piece. The next time Oda writes to the chat, it clears the incomplete bytes.
Oda closes it as interrupted when you open the chat again: the open step ends, calls that had not finished get error results, and the turn is closed. Oda does not invent an answer for the part that never arrived.
A stop between a call and its result leaves one of two repairs. If the call had been recorded as
started, its outcome is marked as unknown (TOOL_OUTCOME_UNKNOWN). If it had not been recorded as
started, it is marked as not started (TOOL_NOT_STARTED), with a note that it can be retried if it
is still needed.
Do not retry blindly mean?After an interrupted call with an unknown outcome, Oda cannot tell whether the action ran. The note tells Oda to check what the action did, for example whether a file was written, before repeating it, so the same work is not done twice.
No. When a stop arrives while Oda is still saving the step, before a command starts, the command
does not run: the call is recorded as cancelled before dispatch (ABORTED_BEFORE_DISPATCH) and its
result says Error: tool call aborted before dispatch. Ask again if you still need it.
Error: disk unavailable mean?A step could not be saved, so Oda refused to go on: the step was not run and the turn failed. Check the computer's storage and try the request again.
No. The save points and the repairs are part of how Oda runs; there is no setting for them. For where chat logs live on your computer, see Session files on your computer.