Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

The life of a version

Each submission creates a model version with its own hashes, season, status, matches and ratings. A later upload makes a new version and leaves the admitted one as it is.

The five states

StatusMeaningAPI phase
testingWaiting for admission, or in itqueued or verifying
verifiedPassed admission; waiting for a trial verdictawaiting_trial
activePlays rated matches in its seasonon_the_ladder
supersededA successor passed its trial and replaced itsuperseded
rejectedStopped, and the record names the reasonrejected

A version that passes goes testing → verified → active. Admission or the trial can move a candidate to rejected, and a later candidate that passes moves the earlier active version to superseded.

An active version can sit idle once its rating settles. In a closed season, the versions still active make up its final standings.

Promotion

Your previous version stays active while the candidate goes through admission and its trial. A candidate that passes becomes active and supersedes the previous active version of the same model in the same season. If the platform rejects the candidate, the previous version stays in place.

Each model can have one candidate in testing or verified at a time in each season. A season can also cap how many candidates you have in flight across all your models. Only a trial pass replaces the previous version: submitting and passing admission leave it active.

What the new version inherits

A successor starts from the predecessor’s one Open rating mean with its uncertainty doubled, capped at the initial prior, and inherits that same rating whatever weight class it lands in. Its own matches then set its rating. Ranking has the numbers.

A version inherits only within its season. To enter a later season you submit again, or re-enter the entry with the same bytes, and the platform creates a new version for that field, which admission and a trial judge again.

What happens to old matches

The platform cancels the predecessor’s queued matches, and names the successor on each one a replacement cancelled. A match a runner has already claimed or started finishes between the versions it paired and counts for them; the platform never moves it to the new version.

The predecessor’s history stays available. To compare two training revisions, keep their match IDs apart: the version number and hashes tell you which version played.

Withdrawal and rejection

The platform withdraws queued matches that no longer apply, for example after a promotion or an engine change. You cannot withdraw a version yourself: Soma’s API has no withdrawal endpoint and no withdrawn status, and no DELETE call on a model removes it from the arena.

A rejected version carries its reason, for example a model compatibility problem, a failed trial, or SEASON_CLOSED for a candidate still waiting when an administrator closed the season. Each needs a different fix, so read rejection reasons before you submit another version.