Sessions and State
How Routling saves your graph, restores it on launch, and what happens when hardware is missing.
Routling remembers your work two ways: it restores automatically, and it saves named sessions you switch between.
Automatic restore#
Whatever is on the canvas when you close is restored when you reopen. You do not have to save.
This covers nodes, connections and their gains, groups, node positions and names, the device and its configuration, and FX chains including plugin settings.
Named sessions#
A named session is a snapshot you can return to - Streaming, Recording, Just Music.
The Save Session dialog.
session-save| Action | How |
|---|---|
| Save | Toolbar ⋮ → Save, name it |
| Overwrite | Save with an existing name, then confirm |
| Load | Toolbar ⋮ → Load, pick one |
| Delete | The delete control beside a session in the load list |
Each entry shows its device, node count, and when it was saved.
Default session#
Preferences → General → Default session picks one to auto-restore at startup, instead of the last state. Set it to None (fresh start) to open empty every time.
Starting over#
Toolbar ⋮ → New clears everything. It asks twice - the button changes to Discard? - because tearing down a session is not undoable.
What restore does when things are missing#
Restore is deliberately conservative. It recreates only what it can verify, and reports the rest rather than failing silently.
| Situation | Behaviour |
|---|---|
| Primary device missing | Retries, then aborts restore and logs it |
| Primary device renamed | Matched by stable ID, restore continues |
| Secondary device absent | Node kept as a disconnected placeholder |
| App Capture target not running | Node kept as a placeholder |
| Plugin fails to load | Removed from its chain, chain otherwise intact |
| Virtual ASIO unavailable | Skipped |
Placeholders are live: start the app or reconnect the device and the node revives on its own.
At the end you get a summary - Skipped N unavailable node(s) and N connection(s). Connections to skipped nodes are dropped, because a connection to a node that does not exist has nowhere to go.
Device identity#
Sessions match devices on a stable identifier first, falling back to the name - Windows renames audio devices often enough that matching on name alone would break restore.
Undo is separate#
Ctrl+Z gives 20 steps of undo for graph edits. Loading a session is not an undo step, and undo does not travel between sessions.
Where sessions live#
Everything lives under %APPDATA%\Routling:
| Path | Holds |
|---|---|
session.json | The auto-restore snapshot |
sessions\<name>.json | One file per named session |
preferences.json | Your settings |
Use the in-app Save and Load rather than editing these. Copy the folder to back your setups up.
Related#
- Nodes and Connections - what gets saved
- Preferences - default session setting
- Troubleshooting - restore messages explained