Release codenames

vibe-sketcher pairs an organic chemist who has a named reaction with a piece of laboratory equipment. Write the chemist’s surname in the possessive, followed by the equipment: Dötz’s Flask. Preserve accents in names; alliteration is optional.

The maintainer selected Dötz’s Flask for 0.1.2 and subsequent 0.1.x patches. Karl Heinz Dötz lends his name to the Dötz benzannulation; his original 1975 paper describes the synthesis of the naphthol skeleton from a chromium carbene and an alkyne.

The earlier 0.1.0 and 0.1.1 candidates retain Couper’s Coati, chosen under the previous structural-chemist/animal scheme. Published candidate files, release records and their historical names are immutable. The new scheme applies from 0.1.2 onward.

How a name resolves

The catalogue lives in vibesketch.codenames and is the single source of truth: the CLI, the server’s /api/version resource and this site all read it. RELEASE_CODENAMES maps the first X.Y.Z that uses a name to that name. codename_for_version() resolves in this order:

  1. Strip any PEP-440 .devN / aN / bN / rcN suffix and local version label, so a dev build inherits the codename of the release it leads up to.

  2. Look up the resulting X.Y.Z.

  3. Use the most recent registered version no later than X.Y.Z in the same minor line. Thus 0.1.3 inherits the name registered at 0.1.2, while 0.1.1 keeps the name registered at 0.1.0. A future name never renames older patches.

  4. Return None when no applicable entry exists; the surfaces then print the bare version rather than a dangling dash.

The catalogue

First version

Codename

For

0.1.0

Couper’s Coati

Historical 0.1.0 and 0.1.1 candidates; previous naming scheme

0.1.2

Dötz’s Flask

Corrected desktop delivery; inherited by subsequent 0.1.x patches

0.3.0

Diels’s Burette

Predictable geometry cleanup and reaction-scheme layout

0.4.0

Wittig’s Pipette

Native QVF and publication interchange: CDXML import, chemfig

0.5.0

Heck’s Beaker

Traceable results, reaction-energy figures and tables

0.6.0

Negishi’s Funnel

Released paper baseline: accepted staged workflows and independent archived replay

Approved release names

The maintainer approved this roadmap on 2026-10-18. These names are assigned to the planned releases; approval does not mean the releases are published. The runtime catalogue is updated with each candidate’s version bump.

Target

Approved codename

0.2

Grignard’s Condenser

0.3

Diels’s Burette

0.4

Wittig’s Pipette

0.5

Heck’s Beaker

0.6

Negishi’s Funnel

0.7

Suzuki’s Stirrer

0.8

Claisen’s Crucible

0.9

Robinson’s Retort

1.0

Sharpless’s Balance

The roadmap defines the scope and acceptance criteria. 0.6.x is the approved release-paper line; 0.6.0 completed scientific acceptance, independent replay and publication on 2026-10-25. Preserve the historical catalogue above when preparing candidates. Release names are registered on the qualified release branch; a development checkout can retain an earlier version until its next candidate version commit.

Adding a name at release time

The codename lands in the same commit as the version bump. Step 2 of the release checklist lists every file it touches. Keep historical entries when adding a new name, including a change partway through a minor line.

tests/test_codenames.py checks version resolution and Unicode display, and checks that the CLI, server, Electron fallback string and this page’s table agree with the catalogue.