What makes a version
A backtest of code that no version names yet makes a new version, so every run records the code it tested. Saving, restoring and cloning versions in the workflow editor are described in Versions.
Versions and configurations
A version is the code. A configuration is the version plus the settings a run used: the symbols, the bars, the starting capital, margin, the cost profile, slippage, the fill rule, the benchmark and any declared parameters' values. The period is left out, so one configuration can be tested over several periods and compared. A Signals strategy is the exception: its signals are made for one period, so another period is another configuration.
Changing a setting makes a new configuration under the same version and adds one to the strategy's trial count. Running the same configuration over another period adds a run, not a trial. The deflated Sharpe ratio sizes its hurdle by the trial count. From two configurations on, the version line in Run properties ends with a sentence such as 12 configurations were tried to reach this one. See Run properties.
Main
For a Rules or Program strategy, main starts at the first version whose backtest, run by a person, completes. Main also waits when an enabled schedule, webhook or signal cannot run that version; after a backtest nothing on screen says why, and Make main then names the automation.
After that, main moves only by Make main:
Open the version's run
Pick the version in the menu on the settings line, or open one of its runs from the Runs tab. A version with no completed run cannot be picked.
Click Make main under More actions
It appears when the run on screen is not main's and you can edit the workflow.
Make main refuses a version with no completed backtest: Backtest v4 first. See Main.
An agent moves main only under its Make main permission, and its request is refused until a workspace owner or admin sets it; see Make main.
A running deployment keeps the version it was deployed with and never follows main; see Editing a strategy after it is deployed.
Change notes on runs
The line above Run backtest in the Run dialog says where the run lands: Run #2 of v1, Creates v1, or Creates v2 from v1. While the estimate runs it reads Checking which version this is…. When there is a choice, the line is a menu of every version, plus Edited while the canvas holds changes no version has. It opens on Edited in that case, otherwise on the version of the run you launched from, or else on the version the canvas holds.
When the run creates a version, What changed? takes an optional note of up to 200 characters, recorded on the new version. A run of an existing version leaves that version's note as it was. The editor's Save version dialog asks the same question.
Notes appear in the version menu on the settings line, the Versions card, the editor's Versions list, and Trade's Versions card and deploy review. Run properties prints the lineage with the note, such as v3 · from v2 (widened the vertical barrier).
Versions on the Runs tab
The Runs tab's Versions card lists the versions with their Main mark, notes and best runs, and a click on one narrows the runs table to it; see The Runs view.