How Oda stores workspaces

This page describes how DataMind Oda keeps its list of workspaces on the computer, how a chat joins one, and what hiding, pinning or removing never touch. It is for people who build, ship or debug Oda itself. For the user-facing view, see Workspaces, files and permissions; the steps to add, rename or remove a workspace are in Add, rename or delete a workspace.

The workspace list

Oda keeps an ordered, persistent list of its workspaces: one entry per folder, with the chats that ran in it.

Which folders can become a workspace

How chats join a workspace

Archiving and pinning a chat

Removing a workspace

What is stored

Oda's workspace registry holds two kinds of record:

Change safety

Questions, answered

Where is the workspace list kept?

In Oda's own application data on this computer, not inside the folders it points at. The app loads it at start, and it survives restarts; the folders themselves are only referenced.

Can a workspace point at a drive root or a network share?

Yes. A filesystem root counts as fully qualified, so C:\ and a share such as \\server\share are accepted, as is any ordinary directory. What is refused: relative and drive-relative forms, paths that do not exist, and files.

What happens when I add a folder that already has a workspace?

You get the existing workspace, unchanged: it is not retitled and nothing is duplicated. The check runs on the folder's real path, so adding an alias that resolves to the same folder also returns the same workspace.

What happens when the folder behind a workspace is deleted or moved?

The stored path is never rewritten, and Oda does not guess a new location. The folder's status reads missing-dir, and chats whose folder cannot be validated stay under Ungrouped.

Does unarchiving bring back a chat's pin?

No. Archiving clears the pin in the same write, and unarchiving does not restore it. Pin the chat again to surface it ahead of unpinned chats.

Can one chat belong to two workspaces?

No. A chat belongs to one workspace at most, and a chat whose folder cannot be validated belongs to none.

Does the workspace list reach the model?

No. The list is invisible to models and adds no prompt or request cost.

What happens if the stored list is inconsistent?

Oda refuses to guess. At start-up, an inconsistency such as a folder claimed by two workspaces, a chat accounted by two, or an order that repeats or misses a workspace stops the start with a message naming the problem, instead of dropping data silently.