Describe the bug
While attempting to load box full of oligomers with some small molecule gases (H2O, O2, CO2, etc.) for a packaging permeability study, I was surprised to receive an UnassignedBondError for any O2 molecules I put in. I found that a Topology containing just a single O2 molecule was enough to trigger the Exception.
To Reproduce
from openff.toolkit import Molecule, ForceField
o2 = Molecule.from_smiles('O=O')
o2.generate_conformers(n_conformers=1)
o2.assign_partial_charges(partial_charge_method='AM1BCC')
ff = ForceField('openff-2.0.0.offxml')
inc = ff.create_interchange(o2.to_topology(), charge_from_molecules=[o2])
Output
---------------------------------------------------------------------------
UnassignedBondError Traceback (most recent call last)
Cell In[27], line 9
6 o2.assign_partial_charges(partial_charge_method='AM1BCC')
8 ff = ForceField('openff-2.0.0.offxml')
----> 9 inc = ff.create_interchange(o2.to_topology(), charge_from_molecules=[o2])
File /projects/tibe3324/software/anaconda/envs/nrel-polymers/lib/python3.11/site-packages/openff/utilities/utilities.py:79, in requires_package..inner_decorator..wrapper(*args, **kwargs)
76 except Exception as e:
77 raise e
---> 79 return function(*args, **kwargs)
File /projects/tibe3324/software/anaconda/envs/nrel-polymers/lib/python3.11/site-packages/openff/toolkit/typing/engines/smirnoff/forcefield.py:1235, in ForceField.create_interchange(self, topology, toolkit_registry, charge_from_molecules, partial_bond_orders_from_molecules, allow_nonintegral_charges)
1232 used_registry = GLOBAL_TOOLKIT_REGISTRY
1234 with toolkit_registry_manager(used_registry):
-> 1235 return Interchange.from_smirnoff(
1236 force_field=self,
1237 topology=topology,
1238 charge_from_molecules=charge_from_molecules,
1239 partial_bond_orders_from_molecules=partial_bond_orders_from_molecules,
1240 allow_nonintegral_charges=allow_nonintegral_charges,
1241 )
File /projects/tibe3324/software/anaconda/envs/nrel-polymers/lib/python3.11/site-packages/openff/interchange/components/interchange.py:161, in Interchange.from_smirnoff(cls, force_field, topology, box, positions, charge_from_molecules, partial_bond_orders_from_molecules, allow_nonintegral_charges)
103 """
104 Create a new object by parameterizing a topology with a SMIRNOFF force field.
105
(...) 157
158 """
159 from openff.interchange.smirnoff._create import _create_interchange
--> 161 return _create_interchange(
162 force_field=force_field,
163 topology=topology,
164 box=box,
165 positions=positions,
166 molecules_with_preset_charges=charge_from_molecules,
167 partial_bond_orders_from_molecules=partial_bond_orders_from_molecules,
168 allow_nonintegral_charges=allow_nonintegral_charges,
169 )
File /projects/tibe3324/software/anaconda/envs/nrel-polymers/lib/python3.11/site-packages/openff/interchange/smirnoff/_create.py:195, in _create_interchange(force_field, topology, box, positions, molecules_with_preset_charges, partial_bond_orders_from_molecules, allow_nonintegral_charges)
190 all_assigned_constraint_indices = {tuple(key.atom_indices) for key in interchange["Constraints"].key_map}
191 bond_like_assigned_constraint_indices = {
192 constraint for constraint in all_assigned_constraint_indices if constraint in topological_bond_indices
193 }
--> 195 _check_all_valence_terms_assigned(
196 handler_class=BondHandler,
197 topology=interchange.topology,
198 assigned_atom_indices=assigned_bond_indices.union(bond_like_assigned_constraint_indices),
199 valence_terms=interchange["Bonds"].valence_terms(interchange.topology),
200 )
202 _angles(interchange, force_field, interchange.topology)
204 if "Angles" in force_field.registered_parameter_handlers:
File /projects/tibe3324/software/anaconda/envs/nrel-polymers/lib/python3.11/site-packages/openff/interchange/smirnoff/_base.py:108, in _check_all_valence_terms_assigned(handler_class, assigned_atom_indices, topology, valence_terms)
105 exception.unassigned_topology_atom_tuples = unassigned_atom_tuples # type: ignore[attr-defined]
106 exception.handler_class = handler_class # type: ignore[attr-defined]
--> 108 raise exception
UnassignedBondError: BondHandler was not able to find parameters for the following valence terms:
- Topology indices (0, 1): names and elements ( O), ( O),
Computing environment (please complete the following information):
- Operating system: Rocky Linux 8.10 (Green Obsidian)
- Output of running
conda list:
# Name Version Build Channel
_openmp_mutex 4.5 7_kmp_llvm conda-forge
absl-py 2.3.1 pyhd8ed1ab_0 conda-forge
aiohappyeyeballs 2.6.1 pyhd8ed1ab_0 conda-forge
aiohttp 3.13.2 py311h0281608_0 conda-forge
aiosignal 1.4.0 pyhd8ed1ab_0 conda-forge
ambertools 23.3 py311hda91260_3 conda-forge
amberutils 21.0 pypi_0 pypi
annotated-types 0.7.0 pyhd8ed1ab_1 conda-forge
anyio 4.12.0 pyhcf101f3_0 conda-forge
anytree 2.13.0 pypi_0 pypi
argon2-cffi 25.1.0 pyhd8ed1ab_0 conda-forge
argon2-cffi-bindings 25.1.0 py311h49ec1c0_2 conda-forge
arpack 3.8.0 nompi_h0baa96a_101 conda-forge
arrow 1.4.0 pyhcf101f3_0 conda-forge
asttokens 3.0.1 pyhd8ed1ab_0 conda-forge
astunparse 1.6.3 pyhd8ed1ab_3 conda-forge
async-lru 2.0.5 pyh29332c3_0 conda-forge
attrs 25.4.0 pyhcf101f3_1 conda-forge
aws-c-auth 0.7.31 h57bd9a3_0 conda-forge
aws-c-cal 0.7.4 hfd43aa1_1 conda-forge
aws-c-common 0.9.28 hb9d3cd8_0 conda-forge
aws-c-compression 0.2.19 h756ea98_1 conda-forge
aws-c-event-stream 0.4.3 h29ce20c_2 conda-forge
aws-c-http 0.8.10 h5e77a74_0 conda-forge
aws-c-io 0.14.18 h2af50b2_12 conda-forge
aws-c-mqtt 0.10.7 h02abb05_0 conda-forge
aws-c-s3 0.6.6 h834ce55_0 conda-forge
aws-c-sdkutils 0.1.19 h756ea98_3 conda-forge
aws-checksums 0.1.20 h756ea98_0 conda-forge
aws-crt-cpp 0.28.3 h3e6eb3e_6 conda-forge
aws-sdk-cpp 1.11.379 h9f1560d_11 conda-forge
babel 2.17.0 pyhd8ed1ab_0 conda-forge
backports.zstd 1.2.0 py311h6b1f9c4_0 conda-forge
beautifulsoup4 4.14.3 pyha770c72_0 conda-forge
bleach 6.3.0 pyhcf101f3_0 conda-forge
bleach-with-css 6.3.0 h5f6438b_0 conda-forge
blosc 1.21.6 he440d0b_1 conda-forge
boltons 25.0.0 pyhd8ed1ab_0 conda-forge
boost 1.78.0 py311h92ebd52_5 conda-forge
boost-cpp 1.78.0 h2c5509c_4 conda-forge
brotli 1.2.0 hed03a55_1 conda-forge
brotli-bin 1.2.0 hb03c661_1 conda-forge
brotli-python 1.2.0 py311h66f275b_1 conda-forge
bson 0.5.10 pyhd8ed1ab_0 conda-forge
bzip2 1.0.8 hda65f42_8 conda-forge
c-ares 1.34.6 hb03c661_0 conda-forge
c-blosc2 2.17.1 h3122c55_0 conda-forge
ca-certificates 2025.11.12 hbd8a1cb_0 conda-forge
cached-property 1.5.2 hd8ed1ab_1 conda-forge
cached_property 1.5.2 pyha770c72_1 conda-forge
cachetools 6.2.2 pyhd8ed1ab_0 conda-forge
cairo 1.18.0 hbb29018_2 conda-forge
certifi 2025.11.12 pyhd8ed1ab_0 conda-forge
cffi 2.0.0 py311h03d9500_1 conda-forge
charset-normalizer 3.4.4 pyhd8ed1ab_0 conda-forge
chemspipy 2.0.0 pypi_0 pypi
cirpy 1.0.2 pypi_0 pypi
click 8.3.1 pyh8f84b5b_1 conda-forge
click-option-group 0.5.6 pyhd8ed1ab_0 conda-forge
cloudpickle 3.1.2 pyhcf101f3_1 conda-forge
colorama 0.4.6 pyhd8ed1ab_1 conda-forge
comm 0.2.3 pyhe01879c_0 conda-forge
contourpy 1.3.3 py311hdf67eae_3 conda-forge
cpython 3.11.14 py311hd8ed1ab_2 conda-forge
cuda-nvrtc 13.1.80 hecca717_0 conda-forge
cuda-version 13.1 h2ff5cdb_3 conda-forge
cycler 0.12.1 pyhcf101f3_2 conda-forge
debugpy 1.8.17 py311hc665b79_1 conda-forge
decorator 5.2.1 pyhd8ed1ab_0 conda-forge
defusedxml 0.7.1 pyhd8ed1ab_0 conda-forge
deprecation 2.1.0 pyh9f0ad1d_0 conda-forge
dgl 2.3.0 py311h1772aec_0 conda-forge
edgembar 0.2 pypi_0 pypi
ele 0.2.0 pyhd8ed1ab_0 conda-forge
espaloma_charge 0.0.8 pyhd8ed1ab_3 conda-forge
exceptiongroup 1.3.1 pyhd8ed1ab_0 conda-forge
executing 2.2.1 pyhd8ed1ab_0 conda-forge
fftw 3.3.10 nompi_h3b011a4_111 conda-forge
filelock 3.20.0 pyhd8ed1ab_0 conda-forge
flatbuffers 24.3.25 h59595ed_0 conda-forge
flexcache 0.3 pyhd8ed1ab_1 conda-forge
flexparser 0.4 pyhd8ed1ab_1 conda-forge
font-ttf-dejavu-sans-mono 2.37 hab24e00_0 conda-forge
font-ttf-inconsolata 3.000 h77eed37_0 conda-forge
font-ttf-source-code-pro 2.038 h77eed37_0 conda-forge
font-ttf-ubuntu 0.83 h77eed37_3 conda-forge
fontconfig 2.15.0 h7e30c49_1 conda-forge
fonts-conda-ecosystem 1 0 conda-forge
fonts-conda-forge 1 hc364b38_1 conda-forge
fonttools 4.61.0 py311h3778330_0 conda-forge
forcefield-utilities 0.5.0 pyhd8ed1ab_0 conda-forge
foyer 1.0.0 pyhd8ed1ab_0 conda-forge
fqdn 1.5.1 pyhd8ed1ab_1 conda-forge
freetype 2.14.1 ha770c72_0 conda-forge
freetype-py 2.3.0 pyhd8ed1ab_0 conda-forge
frozenlist 1.7.0 py311h52bc045_0 conda-forge
fsspec 2025.12.0 pyhd8ed1ab_0 conda-forge
gast 0.7.0 pyhd8ed1ab_0 conda-forge
giflib 5.2.2 hd590300_0 conda-forge
gmp 6.3.0 hac33072_2 conda-forge
gmpy2 2.2.1 py311h92a432a_2 conda-forge
gmso 0.13.0 pyhd8ed1ab_0 conda-forge
google-pasta 0.2.0 pyhd8ed1ab_2 conda-forge
greenlet 3.3.0 py311h1ddb823_0 conda-forge
grpcio 1.62.2 py311ha6695c7_0 conda-forge
h11 0.16.0 pyhd8ed1ab_0 conda-forge
h2 4.3.0 pyhcf101f3_0 conda-forge
h5py 3.13.0 nompi_py311hb639ac4_100 conda-forge
hdf4 4.2.15 h2a13503_7 conda-forge
hdf5 1.14.3 nompi_h2d575fe_109 conda-forge
hpack 4.1.0 pyhd8ed1ab_0 conda-forge
httpcore 1.0.9 pyh29332c3_0 conda-forge
httpx 0.28.1 pyhd8ed1ab_0 conda-forge
hyperframe 6.1.0 pyhd8ed1ab_0 conda-forge
icu 73.2 h59595ed_0 conda-forge
idna 3.11 pyhd8ed1ab_0 conda-forge
importlib-metadata 8.7.0 pyhe01879c_1 conda-forge
importlib_resources 6.5.2 pyhd8ed1ab_0 conda-forge
ipykernel 7.1.0 pyha191276_0 conda-forge
ipython 9.8.0 pyh53cf698_0 conda-forge
ipython_pygments_lexers 1.1.1 pyhd8ed1ab_0 conda-forge
ipywidgets 8.0.4 pypi_0 pypi
isoduration 20.11.0 pyhd8ed1ab_1 conda-forge
jedi 0.19.2 pyhd8ed1ab_1 conda-forge
jinja2 3.1.6 pyhcf101f3_1 conda-forge
joblib 1.5.2 pyhd8ed1ab_0 conda-forge
json5 0.12.1 pyhd8ed1ab_0 conda-forge
jsonpointer 3.0.0 pyhcf101f3_3 conda-forge
jsonschema 4.25.1 pyhe01879c_0 conda-forge
jsonschema-specifications 2025.9.1 pyhcf101f3_0 conda-forge
jsonschema-with-format-nongpl 4.25.1 he01879c_0 conda-forge
jupyter-lsp 2.3.0 pyhcf101f3_0 conda-forge
jupyter_client 8.7.0 pyhcf101f3_0 conda-forge
jupyter_core 5.9.1 pyhc90fa1f_0 conda-forge
jupyter_events 0.12.0 pyh29332c3_0 conda-forge
jupyter_server 2.17.0 pyhcf101f3_0 conda-forge
jupyter_server_terminals 0.5.3 pyhd8ed1ab_1 conda-forge
jupyterlab 4.5.0 pyhd8ed1ab_0 conda-forge
jupyterlab_pygments 0.3.0 pyhd8ed1ab_2 conda-forge
jupyterlab_server 2.28.0 pyhcf101f3_0 conda-forge
jupyterlab_widgets 3.0.16 pyhcf101f3_1 conda-forge
keras 3.11.2 pyh753f3f9_0 conda-forge
keyutils 1.6.3 hb9d3cd8_0 conda-forge
kiwisolver 1.4.9 py311h724c32c_2 conda-forge
krb5 1.21.3 h659f571_0 conda-forge
lammps 2024.8.29.0.0 pypi_0 pypi
lark 1.3.1 pyhd8ed1ab_0 conda-forge
lcms2 2.17 h717163a_0 conda-forge
ld_impl_linux-64 2.45 default_hbd61a6d_104 conda-forge
lerc 4.0.0 h0aef613_1 conda-forge
libabseil 20240116.2 cxx17_he02047a_1 conda-forge
libaec 1.1.4 h3f801dc_0 conda-forge
libblas 3.9.0 20_linux64_mkl conda-forge
libbrotlicommon 1.2.0 hb03c661_1 conda-forge
libbrotlidec 1.2.0 hb03c661_1 conda-forge
libbrotlienc 1.2.0 hb03c661_1 conda-forge
libcblas 3.9.0 20_linux64_mkl conda-forge
libcufft 12.1.0.31 hecca717_0 conda-forge
libcurl 8.17.0 h4e3cde8_1 conda-forge
libdeflate 1.25 h17f619e_0 conda-forge
libedit 3.1.20250104 pl5321h7949ede_0 conda-forge
libev 4.33 hd590300_2 conda-forge
libexpat 2.7.3 hecca717_0 conda-forge
libffi 3.5.2 h9ec8514_0 conda-forge
libflint 3.2.2 h754cb6e_0 conda-forge
libfreetype 2.14.1 ha770c72_0 conda-forge
libfreetype6 2.14.1 h73754d4_0 conda-forge
libgcc 15.2.0 he0feb66_16 conda-forge
libgcc-ng 15.2.0 h69a702a_16 conda-forge
libgfortran 15.2.0 h69a702a_16 conda-forge
libgfortran-ng 15.2.0 h69a702a_16 conda-forge
libgfortran5 15.2.0 h68bc16d_16 conda-forge
libglib 2.86.3 h6548e54_0 conda-forge
libgomp 15.2.0 he0feb66_16 conda-forge
libgrpc 1.62.2 h15f2491_0 conda-forge
libhwloc 2.11.2 default_he43201b_1000 conda-forge
libiconv 1.18 h3b78370_2 conda-forge
libjpeg-turbo 3.1.2 hb03c661_0 conda-forge
liblapack 3.9.0 20_linux64_mkl conda-forge
liblapacke 3.9.0 20_linux64_mkl conda-forge
liblzma 5.8.1 hb9d3cd8_2 conda-forge
liblzma-devel 5.8.1 hb9d3cd8_2 conda-forge
libnetcdf 4.9.2 nompi_h135f659_114 conda-forge
libnghttp2 1.67.0 had1ee68_0 conda-forge
libnsl 2.0.1 hb9d3cd8_1 conda-forge
libpng 1.6.53 h421ea60_0 conda-forge
libprotobuf 4.25.3 hd5b35b9_1 conda-forge
libre2-11 2023.09.01 h5a48ba9_2 conda-forge
libsodium 1.0.20 h4ab18f5_0 conda-forge
libsqlite 3.51.1 h0c1763c_0 conda-forge
libssh2 1.11.1 hcf80075_0 conda-forge
libstdcxx 15.2.0 h934c35e_16 conda-forge
libstdcxx-ng 15.2.0 hdf11a46_16 conda-forge
libtiff 4.7.1 h9d88235_1 conda-forge
libtorch 2.3.1 cpu_mkl_h0bb0d08_100 conda-forge
liburing 2.7 h434a139_0 conda-forge
libuuid 2.41.2 h5347b49_1 conda-forge
libuv 1.51.0 hb03c661_1 conda-forge
libwebp-base 1.6.0 hd42ef1d_0 conda-forge
libxcb 1.17.0 h8a09558_0 conda-forge
libxcrypt 4.4.36 hd590300_1 conda-forge
libxml2 2.12.7 h4c95cb1_3 conda-forge
libxslt 1.1.39 h76b75d6_0 conda-forge
libzip 1.11.2 h6991a6a_0 conda-forge
libzlib 1.3.1 hb9d3cd8_2 conda-forge
lightning-utilities 0.15.2 pyhd8ed1ab_0 conda-forge
llvm-openmp 21.1.7 h4922eb0_0 conda-forge
lxml 5.3.0 py311hcfaa980_2 conda-forge
lz4-c 1.10.0 h5888daf_1 conda-forge
markdown 3.10 pyhcf101f3_1 conda-forge
markdown-it-py 4.0.0 pyhd8ed1ab_0 conda-forge
markupsafe 3.0.3 py311h3778330_0 conda-forge
matplotlib-base 3.10.8 py311h0f3be63_0 conda-forge
matplotlib-inline 0.2.1 pyhd8ed1ab_0 conda-forge
mbuild 1.2.0 pyhd8ed1ab_0 conda-forge
mda-xdrlib 0.2.0 pyhd8ed1ab_1 conda-forge
mdtraj 1.11.0 np2py311hb255e1c_3 conda-forge
mdurl 0.1.2 pyhd8ed1ab_1 conda-forge
metis 5.1.1 h59595ed_2 conda-forge
mistune 3.1.4 pyhcf101f3_0 conda-forge
mkl 2023.2.0 ha770c72_50498 conda-forge
ml_dtypes 0.3.2 py311h320fe9a_0 conda-forge
mmpbsa-py 16.0 pypi_0 pypi
mpc 1.3.1 h24ddda3_1 conda-forge
mpfr 4.2.1 h90cbb55_3 conda-forge
mpmath 1.3.0 pyhd8ed1ab_1 conda-forge
multidict 6.6.3 py311h2dc5d0c_0 conda-forge
munkres 1.1.4 pyhd8ed1ab_1 conda-forge
namex 0.1.0 pyhd8ed1ab_0 conda-forge
nbclient 0.10.2 pyhd8ed1ab_0 conda-forge
nbconvert-core 7.16.6 pyhcf101f3_1 conda-forge
nbformat 5.10.4 pyhd8ed1ab_1 conda-forge
ncurses 6.5 h2d0b736_3 conda-forge
nest-asyncio 1.6.0 pyhd8ed1ab_1 conda-forge
netcdf-fortran 4.6.1 nompi_h22f9119_108 conda-forge
networkx 3.6.1 pyhcf101f3_0 conda-forge
nglview 3.0.6 pypi_0 pypi
notebook 7.5.0 pyhcf101f3_0 conda-forge
notebook-shim 0.2.4 pyhd8ed1ab_1 conda-forge
numexpr 2.10.1 mkl_py311h8e25920_2 conda-forge
numpy 1.26.4 py311h64a7726_0 conda-forge
ocl-icd 2.3.3 hb9d3cd8_0 conda-forge
ocl-icd-system 1.0.0 1 conda-forge
openbabel 3.1.1 py311h8b422cb_9 conda-forge
opencl-headers 2025.06.13 h5888daf_0 conda-forge
openff-amber-ff-ports 2025.09.0 pyhd8ed1ab_0 conda-forge
openff-forcefields 2025.10.1 pyhd8ed1ab_0 conda-forge
openff-interchange 0.4.9 pyhd8ed1ab_0 conda-forge
openff-interchange-base 0.4.9 pyhd8ed1ab_0 conda-forge
openff-nagl 0.5.4 pyhd8ed1ab_1 conda-forge
openff-nagl-base 0.5.4 pyhd8ed1ab_1 conda-forge
openff-nagl-models 2025.9.0 pyhd8ed1ab_0 conda-forge
openff-toolkit 0.18.0 pyhd8ed1ab_0 conda-forge
openff-toolkit-base 0.18.0 pyhd8ed1ab_0 conda-forge
openff-units 0.3.1 pyhd8ed1ab_2 conda-forge
openff-utilities 0.1.16 pyhd8ed1ab_0 conda-forge
openjpeg 2.5.4 h55fea9a_0 conda-forge
openmm 8.4.0 py311h38e3cd7_2 conda-forge
openssl 3.6.0 h26f9b46_0 conda-forge
opt_einsum 3.4.0 pyhd8ed1ab_1 conda-forge
optree 0.18.0 py311hdf67eae_0 conda-forge
overrides 7.7.0 pyhd8ed1ab_1 conda-forge
packaging 25.0 pyh29332c3_1 conda-forge
packmol 20.15.1 hc8b2c43_1 conda-forge
packmol-memgen 2023.2.24 pypi_0 pypi
pandas 2.3.3 py311hed34c8f_2 conda-forge
pandocfilters 1.5.0 pyhd8ed1ab_0 conda-forge
parmed 4.3.0 py311h8cc7b42_2 conda-forge
parso 0.8.5 pyhcf101f3_0 conda-forge
pcre2 10.47 haa7fec5_0 conda-forge
pdb4amber 22.0 pypi_0 pypi
perl 5.32.1 7_hd590300_perl5 conda-forge
pexpect 4.9.0 pyhd8ed1ab_1 conda-forge
pillow 12.0.0 py311h267f063_1 conda-forge
pint 0.24.4 pyhe01879c_2 conda-forge
pip 25.3 pyh8b19718_0 conda-forge
pixman 0.46.4 h54a6638_1 conda-forge
platformdirs 4.5.1 pyhcf101f3_0 conda-forge
polymerist 1.0.1+17.gdd98bd5 pypi_0 pypi
prometheus_client 0.23.1 pyhd8ed1ab_0 conda-forge
prompt-toolkit 3.0.52 pyha770c72_0 conda-forge
propcache 0.3.1 py311h2dc5d0c_0 conda-forge
protobuf 4.25.3 py311hbffca5d_1 conda-forge
psutil 7.1.3 py311haee01d2_0 conda-forge
pthread-stubs 0.4 hb9d3cd8_1002 conda-forge
ptyprocess 0.7.0 pyhd8ed1ab_1 conda-forge
pubchempy 1.0.5 pypi_0 pypi
pure_eval 0.2.3 pyhd8ed1ab_1 conda-forge
py-cpuinfo 9.0.0 pyhd8ed1ab_1 conda-forge
py3dmol 2.5.3 pypi_0 pypi
pycairo 1.27.0 py311h124c5f0_0 conda-forge
pycparser 2.22 pyh29332c3_1 conda-forge
pydantic 2.11.10 pyh3cfb1c2_0 conda-forge
pydantic-core 2.33.2 py311hdae7d1d_0 conda-forge
pyedr 0.8.0 pyhd8ed1ab_1 conda-forge
pygments 2.19.2 pyhd8ed1ab_0 conda-forge
pymsmt 22.0 pypi_0 pypi
pyparsing 3.2.5 pyhcf101f3_0 conda-forge
pysocks 1.7.1 pyha55dd90_7 conda-forge
pytables 3.10.2 py311h6d53d72_2 conda-forge
python 3.11.14 hd63d673_2_cpython conda-forge
python-constraint 1.4.0 pyhff2d567_1 conda-forge
python-dateutil 2.9.0.post0 pyhe01879c_2 conda-forge
python-fastjsonschema 2.21.2 pyhe01879c_0 conda-forge
python-flatbuffers 25.9.23 pyh1e1bc0e_0 conda-forge
python-json-logger 2.0.7 pyhd8ed1ab_0 conda-forge
python-symengine 0.14.0 py311h7b351a7_1 conda-forge
python-tzdata 2025.2 pyhd8ed1ab_0 conda-forge
python_abi 3.11 8_cp311 conda-forge
pytorch 2.3.1 cpu_mkl_py311hcb16b95_100 conda-forge
pytorch-lightning 2.6.0 pyhcf101f3_0 conda-forge
pytraj 2.0.6 pypi_0 pypi
pytz 2025.2 pyhd8ed1ab_0 conda-forge
pyyaml 6.0.3 py311h3778330_0 conda-forge
pyzmq 27.1.0 py311h2315fbb_0 conda-forge
qhull 2020.2 h434a139_5 conda-forge
rdkit 2025.9.3 pypi_0 pypi
re2 2023.09.01 h7f4b329_2 conda-forge
readline 8.2 h8c095d6_2 conda-forge
referencing 0.37.0 pyhcf101f3_0 conda-forge
reportlab 4.4.6 py311h49ec1c0_0 conda-forge
requests 2.32.5 pyhd8ed1ab_0 conda-forge
rfc3339-validator 0.1.4 pyhd8ed1ab_1 conda-forge
rfc3986-validator 0.1.1 pyh9f0ad1d_0 conda-forge
rfc3987-syntax 1.1.0 pyhe01879c_1 conda-forge
rich 14.2.0 pyhcf101f3_0 conda-forge
rlpycairo 0.4.0 pyh6c17108_0 conda-forge
rocm-core 7.0.2 h54a6638_0 conda-forge
rpds-py 0.30.0 py311h902ca64_0 conda-forge
s2n 1.5.5 h3931f03_0 conda-forge
sander 22.0 pypi_0 pypi
scipy 1.16.3 py311h1e13796_1 conda-forge
send2trash 1.8.3 pyh0d859eb_1 conda-forge
setuptools 80.9.0 pyhff2d567_0 conda-forge
signac 2.3.0 pyhd8ed1ab_0 conda-forge
signac-flow 0.29.0 pyhd8ed1ab_1 conda-forge
six 1.17.0 pyhe01879c_1 conda-forge
sleef 3.9.0 ha0421bc_0 conda-forge
snappy 1.2.2 h03e3b7b_1 conda-forge
sniffio 1.3.1 pyhd8ed1ab_2 conda-forge
soupsieve 2.8 pyhd8ed1ab_0 conda-forge
sqlalchemy 2.0.45 py311h49ec1c0_0 conda-forge
stack_data 0.6.3 pyhd8ed1ab_1 conda-forge
symengine 0.14.0 h064106a_1 conda-forge
sympy 1.14.0 pyh2585a3b_105 conda-forge
synced_collections 1.0.0 pyhd8ed1ab_1 conda-forge
tbb 2021.13.0 hceb3a55_1 conda-forge
tensorboard 2.16.2 pyhd8ed1ab_0 conda-forge
tensorboard-data-server 0.7.0 py311h97c413e_4 conda-forge
tensorflow 2.16.2 cpu_py311h6ac8430_0 conda-forge
tensorflow-base 2.16.2 cpu_py311h7888847_0 conda-forge
tensorflow-estimator 2.16.2 cpu_py311hbc9741f_0 conda-forge
termcolor 3.2.0 pyhd8ed1ab_0 conda-forge
terminado 0.18.1 pyh0d859eb_0 conda-forge
tinycss2 1.4.0 pypi_0 pypi
tk 8.6.13 noxft_ha0e22de_103 conda-forge
tomli 2.3.0 pyhcf101f3_0 conda-forge
torchdata 0.7.1 py311h34085b1_7 conda-forge
torchmetrics 1.8.2 pyhd8ed1ab_0 conda-forge
tornado 6.5.2 py311h49ec1c0_2 conda-forge
tqdm 4.67.1 pyhd8ed1ab_1 conda-forge
traitlets 5.14.3 pyhd8ed1ab_1 conda-forge
treelib 1.7.1 pyhd8ed1ab_0 conda-forge
typing-extensions 4.15.0 h396c80c_0 conda-forge
typing-inspection 0.4.2 pyhd8ed1ab_1 conda-forge
typing_extensions 4.15.0 pyhcf101f3_0 conda-forge
typing_utils 0.1.0 pyhd8ed1ab_1 conda-forge
tzdata 2025b h78e105d_0 conda-forge
unicodedata2 17.0.0 py311h49ec1c0_1 conda-forge
unyt 3.0.4 pyhd8ed1ab_0 conda-forge
uri-template 1.3.0 pyhd8ed1ab_1 conda-forge
urllib3 2.6.1 pyhd8ed1ab_0 conda-forge
wcwidth 0.2.14 pyhd8ed1ab_0 conda-forge
webcolors 25.10.0 pyhd8ed1ab_0 conda-forge
webencodings 0.5.1 pyhd8ed1ab_3 conda-forge
websocket-client 1.9.0 pyhd8ed1ab_0 conda-forge
werkzeug 3.1.4 pyhcf101f3_0 conda-forge
wheel 0.45.1 pyhd8ed1ab_1 conda-forge
widgetsnbextension 4.0.15 pyhd8ed1ab_0 conda-forge
wrapt 2.0.1 py311h49ec1c0_1 conda-forge
xmltodict 1.0.2 pyhcf101f3_0 conda-forge
xorg-libice 1.1.2 hb9d3cd8_0 conda-forge
xorg-libsm 1.2.6 he73a12e_0 conda-forge
xorg-libx11 1.8.12 h4f16b4b_0 conda-forge
xorg-libxau 1.0.12 hb03c661_1 conda-forge
xorg-libxdmcp 1.1.5 hb03c661_1 conda-forge
xorg-libxext 1.3.6 hb9d3cd8_0 conda-forge
xorg-libxrender 0.9.12 hb9d3cd8_0 conda-forge
xorg-libxt 1.3.1 hb9d3cd8_0 conda-forge
xz 5.8.1 hbcc6ac9_2 conda-forge
xz-gpl-tools 5.8.1 hbcc6ac9_2 conda-forge
xz-tools 5.8.1 hb9d3cd8_2 conda-forge
yaml 0.2.5 h280c20c_3 conda-forge
yarl 1.22.0 py311h3778330_0 conda-forge
zeromq 4.3.5 h387f397_9 conda-forge
zipp 3.23.0 pyhcf101f3_1 conda-forge
zlib 1.3.1 hb9d3cd8_2 conda-forge
zlib-ng 2.2.5 hde8ca8f_1 conda-forge
zstd 1.5.7 hb78ec9c_6 conda-forge
Additional context
The MRE above with diatomic nitrogen ("N#N") runs without a hitch and is able to parameterize. I didn't spot anything which looked like a Bond constraint for O2 after a cursory search for SMIRKS like "[#8X1..." through openff-2.0.0.offxml, but I don't want to make any hasty conclusions. I'd like to be sure this is a genuine bug and not just a misunderstanding on my part, but can Sage really not parameterize molecular oxygen?
Describe the bug
While attempting to load box full of oligomers with some small molecule gases (H2O, O2, CO2, etc.) for a packaging permeability study, I was surprised to receive an UnassignedBondError for any O2 molecules I put in. I found that a Topology containing just a single O2 molecule was enough to trigger the Exception.
To Reproduce
Output
Computing environment (please complete the following information):
conda list:# Name Version Build Channel _openmp_mutex 4.5 7_kmp_llvm conda-forge absl-py 2.3.1 pyhd8ed1ab_0 conda-forge aiohappyeyeballs 2.6.1 pyhd8ed1ab_0 conda-forge aiohttp 3.13.2 py311h0281608_0 conda-forge aiosignal 1.4.0 pyhd8ed1ab_0 conda-forge ambertools 23.3 py311hda91260_3 conda-forge amberutils 21.0 pypi_0 pypi annotated-types 0.7.0 pyhd8ed1ab_1 conda-forge anyio 4.12.0 pyhcf101f3_0 conda-forge anytree 2.13.0 pypi_0 pypi argon2-cffi 25.1.0 pyhd8ed1ab_0 conda-forge argon2-cffi-bindings 25.1.0 py311h49ec1c0_2 conda-forge arpack 3.8.0 nompi_h0baa96a_101 conda-forge arrow 1.4.0 pyhcf101f3_0 conda-forge asttokens 3.0.1 pyhd8ed1ab_0 conda-forge astunparse 1.6.3 pyhd8ed1ab_3 conda-forge async-lru 2.0.5 pyh29332c3_0 conda-forge attrs 25.4.0 pyhcf101f3_1 conda-forge aws-c-auth 0.7.31 h57bd9a3_0 conda-forge aws-c-cal 0.7.4 hfd43aa1_1 conda-forge aws-c-common 0.9.28 hb9d3cd8_0 conda-forge aws-c-compression 0.2.19 h756ea98_1 conda-forge aws-c-event-stream 0.4.3 h29ce20c_2 conda-forge aws-c-http 0.8.10 h5e77a74_0 conda-forge aws-c-io 0.14.18 h2af50b2_12 conda-forge aws-c-mqtt 0.10.7 h02abb05_0 conda-forge aws-c-s3 0.6.6 h834ce55_0 conda-forge aws-c-sdkutils 0.1.19 h756ea98_3 conda-forge aws-checksums 0.1.20 h756ea98_0 conda-forge aws-crt-cpp 0.28.3 h3e6eb3e_6 conda-forge aws-sdk-cpp 1.11.379 h9f1560d_11 conda-forge babel 2.17.0 pyhd8ed1ab_0 conda-forge backports.zstd 1.2.0 py311h6b1f9c4_0 conda-forge beautifulsoup4 4.14.3 pyha770c72_0 conda-forge bleach 6.3.0 pyhcf101f3_0 conda-forge bleach-with-css 6.3.0 h5f6438b_0 conda-forge blosc 1.21.6 he440d0b_1 conda-forge boltons 25.0.0 pyhd8ed1ab_0 conda-forge boost 1.78.0 py311h92ebd52_5 conda-forge boost-cpp 1.78.0 h2c5509c_4 conda-forge brotli 1.2.0 hed03a55_1 conda-forge brotli-bin 1.2.0 hb03c661_1 conda-forge brotli-python 1.2.0 py311h66f275b_1 conda-forge bson 0.5.10 pyhd8ed1ab_0 conda-forge bzip2 1.0.8 hda65f42_8 conda-forge c-ares 1.34.6 hb03c661_0 conda-forge c-blosc2 2.17.1 h3122c55_0 conda-forge ca-certificates 2025.11.12 hbd8a1cb_0 conda-forge cached-property 1.5.2 hd8ed1ab_1 conda-forge cached_property 1.5.2 pyha770c72_1 conda-forge cachetools 6.2.2 pyhd8ed1ab_0 conda-forge cairo 1.18.0 hbb29018_2 conda-forge certifi 2025.11.12 pyhd8ed1ab_0 conda-forge cffi 2.0.0 py311h03d9500_1 conda-forge charset-normalizer 3.4.4 pyhd8ed1ab_0 conda-forge chemspipy 2.0.0 pypi_0 pypi cirpy 1.0.2 pypi_0 pypi click 8.3.1 pyh8f84b5b_1 conda-forge click-option-group 0.5.6 pyhd8ed1ab_0 conda-forge cloudpickle 3.1.2 pyhcf101f3_1 conda-forge colorama 0.4.6 pyhd8ed1ab_1 conda-forge comm 0.2.3 pyhe01879c_0 conda-forge contourpy 1.3.3 py311hdf67eae_3 conda-forge cpython 3.11.14 py311hd8ed1ab_2 conda-forge cuda-nvrtc 13.1.80 hecca717_0 conda-forge cuda-version 13.1 h2ff5cdb_3 conda-forge cycler 0.12.1 pyhcf101f3_2 conda-forge debugpy 1.8.17 py311hc665b79_1 conda-forge decorator 5.2.1 pyhd8ed1ab_0 conda-forge defusedxml 0.7.1 pyhd8ed1ab_0 conda-forge deprecation 2.1.0 pyh9f0ad1d_0 conda-forge dgl 2.3.0 py311h1772aec_0 conda-forge edgembar 0.2 pypi_0 pypi ele 0.2.0 pyhd8ed1ab_0 conda-forge espaloma_charge 0.0.8 pyhd8ed1ab_3 conda-forge exceptiongroup 1.3.1 pyhd8ed1ab_0 conda-forge executing 2.2.1 pyhd8ed1ab_0 conda-forge fftw 3.3.10 nompi_h3b011a4_111 conda-forge filelock 3.20.0 pyhd8ed1ab_0 conda-forge flatbuffers 24.3.25 h59595ed_0 conda-forge flexcache 0.3 pyhd8ed1ab_1 conda-forge flexparser 0.4 pyhd8ed1ab_1 conda-forge font-ttf-dejavu-sans-mono 2.37 hab24e00_0 conda-forge font-ttf-inconsolata 3.000 h77eed37_0 conda-forge font-ttf-source-code-pro 2.038 h77eed37_0 conda-forge font-ttf-ubuntu 0.83 h77eed37_3 conda-forge fontconfig 2.15.0 h7e30c49_1 conda-forge fonts-conda-ecosystem 1 0 conda-forge fonts-conda-forge 1 hc364b38_1 conda-forge fonttools 4.61.0 py311h3778330_0 conda-forge forcefield-utilities 0.5.0 pyhd8ed1ab_0 conda-forge foyer 1.0.0 pyhd8ed1ab_0 conda-forge fqdn 1.5.1 pyhd8ed1ab_1 conda-forge freetype 2.14.1 ha770c72_0 conda-forge freetype-py 2.3.0 pyhd8ed1ab_0 conda-forge frozenlist 1.7.0 py311h52bc045_0 conda-forge fsspec 2025.12.0 pyhd8ed1ab_0 conda-forge gast 0.7.0 pyhd8ed1ab_0 conda-forge giflib 5.2.2 hd590300_0 conda-forge gmp 6.3.0 hac33072_2 conda-forge gmpy2 2.2.1 py311h92a432a_2 conda-forge gmso 0.13.0 pyhd8ed1ab_0 conda-forge google-pasta 0.2.0 pyhd8ed1ab_2 conda-forge greenlet 3.3.0 py311h1ddb823_0 conda-forge grpcio 1.62.2 py311ha6695c7_0 conda-forge h11 0.16.0 pyhd8ed1ab_0 conda-forge h2 4.3.0 pyhcf101f3_0 conda-forge h5py 3.13.0 nompi_py311hb639ac4_100 conda-forge hdf4 4.2.15 h2a13503_7 conda-forge hdf5 1.14.3 nompi_h2d575fe_109 conda-forge hpack 4.1.0 pyhd8ed1ab_0 conda-forge httpcore 1.0.9 pyh29332c3_0 conda-forge httpx 0.28.1 pyhd8ed1ab_0 conda-forge hyperframe 6.1.0 pyhd8ed1ab_0 conda-forge icu 73.2 h59595ed_0 conda-forge idna 3.11 pyhd8ed1ab_0 conda-forge importlib-metadata 8.7.0 pyhe01879c_1 conda-forge importlib_resources 6.5.2 pyhd8ed1ab_0 conda-forge ipykernel 7.1.0 pyha191276_0 conda-forge ipython 9.8.0 pyh53cf698_0 conda-forge ipython_pygments_lexers 1.1.1 pyhd8ed1ab_0 conda-forge ipywidgets 8.0.4 pypi_0 pypi isoduration 20.11.0 pyhd8ed1ab_1 conda-forge jedi 0.19.2 pyhd8ed1ab_1 conda-forge jinja2 3.1.6 pyhcf101f3_1 conda-forge joblib 1.5.2 pyhd8ed1ab_0 conda-forge json5 0.12.1 pyhd8ed1ab_0 conda-forge jsonpointer 3.0.0 pyhcf101f3_3 conda-forge jsonschema 4.25.1 pyhe01879c_0 conda-forge jsonschema-specifications 2025.9.1 pyhcf101f3_0 conda-forge jsonschema-with-format-nongpl 4.25.1 he01879c_0 conda-forge jupyter-lsp 2.3.0 pyhcf101f3_0 conda-forge jupyter_client 8.7.0 pyhcf101f3_0 conda-forge jupyter_core 5.9.1 pyhc90fa1f_0 conda-forge jupyter_events 0.12.0 pyh29332c3_0 conda-forge jupyter_server 2.17.0 pyhcf101f3_0 conda-forge jupyter_server_terminals 0.5.3 pyhd8ed1ab_1 conda-forge jupyterlab 4.5.0 pyhd8ed1ab_0 conda-forge jupyterlab_pygments 0.3.0 pyhd8ed1ab_2 conda-forge jupyterlab_server 2.28.0 pyhcf101f3_0 conda-forge jupyterlab_widgets 3.0.16 pyhcf101f3_1 conda-forge keras 3.11.2 pyh753f3f9_0 conda-forge keyutils 1.6.3 hb9d3cd8_0 conda-forge kiwisolver 1.4.9 py311h724c32c_2 conda-forge krb5 1.21.3 h659f571_0 conda-forge lammps 2024.8.29.0.0 pypi_0 pypi lark 1.3.1 pyhd8ed1ab_0 conda-forge lcms2 2.17 h717163a_0 conda-forge ld_impl_linux-64 2.45 default_hbd61a6d_104 conda-forge lerc 4.0.0 h0aef613_1 conda-forge libabseil 20240116.2 cxx17_he02047a_1 conda-forge libaec 1.1.4 h3f801dc_0 conda-forge libblas 3.9.0 20_linux64_mkl conda-forge libbrotlicommon 1.2.0 hb03c661_1 conda-forge libbrotlidec 1.2.0 hb03c661_1 conda-forge libbrotlienc 1.2.0 hb03c661_1 conda-forge libcblas 3.9.0 20_linux64_mkl conda-forge libcufft 12.1.0.31 hecca717_0 conda-forge libcurl 8.17.0 h4e3cde8_1 conda-forge libdeflate 1.25 h17f619e_0 conda-forge libedit 3.1.20250104 pl5321h7949ede_0 conda-forge libev 4.33 hd590300_2 conda-forge libexpat 2.7.3 hecca717_0 conda-forge libffi 3.5.2 h9ec8514_0 conda-forge libflint 3.2.2 h754cb6e_0 conda-forge libfreetype 2.14.1 ha770c72_0 conda-forge libfreetype6 2.14.1 h73754d4_0 conda-forge libgcc 15.2.0 he0feb66_16 conda-forge libgcc-ng 15.2.0 h69a702a_16 conda-forge libgfortran 15.2.0 h69a702a_16 conda-forge libgfortran-ng 15.2.0 h69a702a_16 conda-forge libgfortran5 15.2.0 h68bc16d_16 conda-forge libglib 2.86.3 h6548e54_0 conda-forge libgomp 15.2.0 he0feb66_16 conda-forge libgrpc 1.62.2 h15f2491_0 conda-forge libhwloc 2.11.2 default_he43201b_1000 conda-forge libiconv 1.18 h3b78370_2 conda-forge libjpeg-turbo 3.1.2 hb03c661_0 conda-forge liblapack 3.9.0 20_linux64_mkl conda-forge liblapacke 3.9.0 20_linux64_mkl conda-forge liblzma 5.8.1 hb9d3cd8_2 conda-forge liblzma-devel 5.8.1 hb9d3cd8_2 conda-forge libnetcdf 4.9.2 nompi_h135f659_114 conda-forge libnghttp2 1.67.0 had1ee68_0 conda-forge libnsl 2.0.1 hb9d3cd8_1 conda-forge libpng 1.6.53 h421ea60_0 conda-forge libprotobuf 4.25.3 hd5b35b9_1 conda-forge libre2-11 2023.09.01 h5a48ba9_2 conda-forge libsodium 1.0.20 h4ab18f5_0 conda-forge libsqlite 3.51.1 h0c1763c_0 conda-forge libssh2 1.11.1 hcf80075_0 conda-forge libstdcxx 15.2.0 h934c35e_16 conda-forge libstdcxx-ng 15.2.0 hdf11a46_16 conda-forge libtiff 4.7.1 h9d88235_1 conda-forge libtorch 2.3.1 cpu_mkl_h0bb0d08_100 conda-forge liburing 2.7 h434a139_0 conda-forge libuuid 2.41.2 h5347b49_1 conda-forge libuv 1.51.0 hb03c661_1 conda-forge libwebp-base 1.6.0 hd42ef1d_0 conda-forge libxcb 1.17.0 h8a09558_0 conda-forge libxcrypt 4.4.36 hd590300_1 conda-forge libxml2 2.12.7 h4c95cb1_3 conda-forge libxslt 1.1.39 h76b75d6_0 conda-forge libzip 1.11.2 h6991a6a_0 conda-forge libzlib 1.3.1 hb9d3cd8_2 conda-forge lightning-utilities 0.15.2 pyhd8ed1ab_0 conda-forge llvm-openmp 21.1.7 h4922eb0_0 conda-forge lxml 5.3.0 py311hcfaa980_2 conda-forge lz4-c 1.10.0 h5888daf_1 conda-forge markdown 3.10 pyhcf101f3_1 conda-forge markdown-it-py 4.0.0 pyhd8ed1ab_0 conda-forge markupsafe 3.0.3 py311h3778330_0 conda-forge matplotlib-base 3.10.8 py311h0f3be63_0 conda-forge matplotlib-inline 0.2.1 pyhd8ed1ab_0 conda-forge mbuild 1.2.0 pyhd8ed1ab_0 conda-forge mda-xdrlib 0.2.0 pyhd8ed1ab_1 conda-forge mdtraj 1.11.0 np2py311hb255e1c_3 conda-forge mdurl 0.1.2 pyhd8ed1ab_1 conda-forge metis 5.1.1 h59595ed_2 conda-forge mistune 3.1.4 pyhcf101f3_0 conda-forge mkl 2023.2.0 ha770c72_50498 conda-forge ml_dtypes 0.3.2 py311h320fe9a_0 conda-forge mmpbsa-py 16.0 pypi_0 pypi mpc 1.3.1 h24ddda3_1 conda-forge mpfr 4.2.1 h90cbb55_3 conda-forge mpmath 1.3.0 pyhd8ed1ab_1 conda-forge multidict 6.6.3 py311h2dc5d0c_0 conda-forge munkres 1.1.4 pyhd8ed1ab_1 conda-forge namex 0.1.0 pyhd8ed1ab_0 conda-forge nbclient 0.10.2 pyhd8ed1ab_0 conda-forge nbconvert-core 7.16.6 pyhcf101f3_1 conda-forge nbformat 5.10.4 pyhd8ed1ab_1 conda-forge ncurses 6.5 h2d0b736_3 conda-forge nest-asyncio 1.6.0 pyhd8ed1ab_1 conda-forge netcdf-fortran 4.6.1 nompi_h22f9119_108 conda-forge networkx 3.6.1 pyhcf101f3_0 conda-forge nglview 3.0.6 pypi_0 pypi notebook 7.5.0 pyhcf101f3_0 conda-forge notebook-shim 0.2.4 pyhd8ed1ab_1 conda-forge numexpr 2.10.1 mkl_py311h8e25920_2 conda-forge numpy 1.26.4 py311h64a7726_0 conda-forge ocl-icd 2.3.3 hb9d3cd8_0 conda-forge ocl-icd-system 1.0.0 1 conda-forge openbabel 3.1.1 py311h8b422cb_9 conda-forge opencl-headers 2025.06.13 h5888daf_0 conda-forge openff-amber-ff-ports 2025.09.0 pyhd8ed1ab_0 conda-forge openff-forcefields 2025.10.1 pyhd8ed1ab_0 conda-forge openff-interchange 0.4.9 pyhd8ed1ab_0 conda-forge openff-interchange-base 0.4.9 pyhd8ed1ab_0 conda-forge openff-nagl 0.5.4 pyhd8ed1ab_1 conda-forge openff-nagl-base 0.5.4 pyhd8ed1ab_1 conda-forge openff-nagl-models 2025.9.0 pyhd8ed1ab_0 conda-forge openff-toolkit 0.18.0 pyhd8ed1ab_0 conda-forge openff-toolkit-base 0.18.0 pyhd8ed1ab_0 conda-forge openff-units 0.3.1 pyhd8ed1ab_2 conda-forge openff-utilities 0.1.16 pyhd8ed1ab_0 conda-forge openjpeg 2.5.4 h55fea9a_0 conda-forge openmm 8.4.0 py311h38e3cd7_2 conda-forge openssl 3.6.0 h26f9b46_0 conda-forge opt_einsum 3.4.0 pyhd8ed1ab_1 conda-forge optree 0.18.0 py311hdf67eae_0 conda-forge overrides 7.7.0 pyhd8ed1ab_1 conda-forge packaging 25.0 pyh29332c3_1 conda-forge packmol 20.15.1 hc8b2c43_1 conda-forge packmol-memgen 2023.2.24 pypi_0 pypi pandas 2.3.3 py311hed34c8f_2 conda-forge pandocfilters 1.5.0 pyhd8ed1ab_0 conda-forge parmed 4.3.0 py311h8cc7b42_2 conda-forge parso 0.8.5 pyhcf101f3_0 conda-forge pcre2 10.47 haa7fec5_0 conda-forge pdb4amber 22.0 pypi_0 pypi perl 5.32.1 7_hd590300_perl5 conda-forge pexpect 4.9.0 pyhd8ed1ab_1 conda-forge pillow 12.0.0 py311h267f063_1 conda-forge pint 0.24.4 pyhe01879c_2 conda-forge pip 25.3 pyh8b19718_0 conda-forge pixman 0.46.4 h54a6638_1 conda-forge platformdirs 4.5.1 pyhcf101f3_0 conda-forge polymerist 1.0.1+17.gdd98bd5 pypi_0 pypi prometheus_client 0.23.1 pyhd8ed1ab_0 conda-forge prompt-toolkit 3.0.52 pyha770c72_0 conda-forge propcache 0.3.1 py311h2dc5d0c_0 conda-forge protobuf 4.25.3 py311hbffca5d_1 conda-forge psutil 7.1.3 py311haee01d2_0 conda-forge pthread-stubs 0.4 hb9d3cd8_1002 conda-forge ptyprocess 0.7.0 pyhd8ed1ab_1 conda-forge pubchempy 1.0.5 pypi_0 pypi pure_eval 0.2.3 pyhd8ed1ab_1 conda-forge py-cpuinfo 9.0.0 pyhd8ed1ab_1 conda-forge py3dmol 2.5.3 pypi_0 pypi pycairo 1.27.0 py311h124c5f0_0 conda-forge pycparser 2.22 pyh29332c3_1 conda-forge pydantic 2.11.10 pyh3cfb1c2_0 conda-forge pydantic-core 2.33.2 py311hdae7d1d_0 conda-forge pyedr 0.8.0 pyhd8ed1ab_1 conda-forge pygments 2.19.2 pyhd8ed1ab_0 conda-forge pymsmt 22.0 pypi_0 pypi pyparsing 3.2.5 pyhcf101f3_0 conda-forge pysocks 1.7.1 pyha55dd90_7 conda-forge pytables 3.10.2 py311h6d53d72_2 conda-forge python 3.11.14 hd63d673_2_cpython conda-forge python-constraint 1.4.0 pyhff2d567_1 conda-forge python-dateutil 2.9.0.post0 pyhe01879c_2 conda-forge python-fastjsonschema 2.21.2 pyhe01879c_0 conda-forge python-flatbuffers 25.9.23 pyh1e1bc0e_0 conda-forge python-json-logger 2.0.7 pyhd8ed1ab_0 conda-forge python-symengine 0.14.0 py311h7b351a7_1 conda-forge python-tzdata 2025.2 pyhd8ed1ab_0 conda-forge python_abi 3.11 8_cp311 conda-forge pytorch 2.3.1 cpu_mkl_py311hcb16b95_100 conda-forge pytorch-lightning 2.6.0 pyhcf101f3_0 conda-forge pytraj 2.0.6 pypi_0 pypi pytz 2025.2 pyhd8ed1ab_0 conda-forge pyyaml 6.0.3 py311h3778330_0 conda-forge pyzmq 27.1.0 py311h2315fbb_0 conda-forge qhull 2020.2 h434a139_5 conda-forge rdkit 2025.9.3 pypi_0 pypi re2 2023.09.01 h7f4b329_2 conda-forge readline 8.2 h8c095d6_2 conda-forge referencing 0.37.0 pyhcf101f3_0 conda-forge reportlab 4.4.6 py311h49ec1c0_0 conda-forge requests 2.32.5 pyhd8ed1ab_0 conda-forge rfc3339-validator 0.1.4 pyhd8ed1ab_1 conda-forge rfc3986-validator 0.1.1 pyh9f0ad1d_0 conda-forge rfc3987-syntax 1.1.0 pyhe01879c_1 conda-forge rich 14.2.0 pyhcf101f3_0 conda-forge rlpycairo 0.4.0 pyh6c17108_0 conda-forge rocm-core 7.0.2 h54a6638_0 conda-forge rpds-py 0.30.0 py311h902ca64_0 conda-forge s2n 1.5.5 h3931f03_0 conda-forge sander 22.0 pypi_0 pypi scipy 1.16.3 py311h1e13796_1 conda-forge send2trash 1.8.3 pyh0d859eb_1 conda-forge setuptools 80.9.0 pyhff2d567_0 conda-forge signac 2.3.0 pyhd8ed1ab_0 conda-forge signac-flow 0.29.0 pyhd8ed1ab_1 conda-forge six 1.17.0 pyhe01879c_1 conda-forge sleef 3.9.0 ha0421bc_0 conda-forge snappy 1.2.2 h03e3b7b_1 conda-forge sniffio 1.3.1 pyhd8ed1ab_2 conda-forge soupsieve 2.8 pyhd8ed1ab_0 conda-forge sqlalchemy 2.0.45 py311h49ec1c0_0 conda-forge stack_data 0.6.3 pyhd8ed1ab_1 conda-forge symengine 0.14.0 h064106a_1 conda-forge sympy 1.14.0 pyh2585a3b_105 conda-forge synced_collections 1.0.0 pyhd8ed1ab_1 conda-forge tbb 2021.13.0 hceb3a55_1 conda-forge tensorboard 2.16.2 pyhd8ed1ab_0 conda-forge tensorboard-data-server 0.7.0 py311h97c413e_4 conda-forge tensorflow 2.16.2 cpu_py311h6ac8430_0 conda-forge tensorflow-base 2.16.2 cpu_py311h7888847_0 conda-forge tensorflow-estimator 2.16.2 cpu_py311hbc9741f_0 conda-forge termcolor 3.2.0 pyhd8ed1ab_0 conda-forge terminado 0.18.1 pyh0d859eb_0 conda-forge tinycss2 1.4.0 pypi_0 pypi tk 8.6.13 noxft_ha0e22de_103 conda-forge tomli 2.3.0 pyhcf101f3_0 conda-forge torchdata 0.7.1 py311h34085b1_7 conda-forge torchmetrics 1.8.2 pyhd8ed1ab_0 conda-forge tornado 6.5.2 py311h49ec1c0_2 conda-forge tqdm 4.67.1 pyhd8ed1ab_1 conda-forge traitlets 5.14.3 pyhd8ed1ab_1 conda-forge treelib 1.7.1 pyhd8ed1ab_0 conda-forge typing-extensions 4.15.0 h396c80c_0 conda-forge typing-inspection 0.4.2 pyhd8ed1ab_1 conda-forge typing_extensions 4.15.0 pyhcf101f3_0 conda-forge typing_utils 0.1.0 pyhd8ed1ab_1 conda-forge tzdata 2025b h78e105d_0 conda-forge unicodedata2 17.0.0 py311h49ec1c0_1 conda-forge unyt 3.0.4 pyhd8ed1ab_0 conda-forge uri-template 1.3.0 pyhd8ed1ab_1 conda-forge urllib3 2.6.1 pyhd8ed1ab_0 conda-forge wcwidth 0.2.14 pyhd8ed1ab_0 conda-forge webcolors 25.10.0 pyhd8ed1ab_0 conda-forge webencodings 0.5.1 pyhd8ed1ab_3 conda-forge websocket-client 1.9.0 pyhd8ed1ab_0 conda-forge werkzeug 3.1.4 pyhcf101f3_0 conda-forge wheel 0.45.1 pyhd8ed1ab_1 conda-forge widgetsnbextension 4.0.15 pyhd8ed1ab_0 conda-forge wrapt 2.0.1 py311h49ec1c0_1 conda-forge xmltodict 1.0.2 pyhcf101f3_0 conda-forge xorg-libice 1.1.2 hb9d3cd8_0 conda-forge xorg-libsm 1.2.6 he73a12e_0 conda-forge xorg-libx11 1.8.12 h4f16b4b_0 conda-forge xorg-libxau 1.0.12 hb03c661_1 conda-forge xorg-libxdmcp 1.1.5 hb03c661_1 conda-forge xorg-libxext 1.3.6 hb9d3cd8_0 conda-forge xorg-libxrender 0.9.12 hb9d3cd8_0 conda-forge xorg-libxt 1.3.1 hb9d3cd8_0 conda-forge xz 5.8.1 hbcc6ac9_2 conda-forge xz-gpl-tools 5.8.1 hbcc6ac9_2 conda-forge xz-tools 5.8.1 hb9d3cd8_2 conda-forge yaml 0.2.5 h280c20c_3 conda-forge yarl 1.22.0 py311h3778330_0 conda-forge zeromq 4.3.5 h387f397_9 conda-forge zipp 3.23.0 pyhcf101f3_1 conda-forge zlib 1.3.1 hb9d3cd8_2 conda-forge zlib-ng 2.2.5 hde8ca8f_1 conda-forge zstd 1.5.7 hb78ec9c_6 conda-forgeAdditional context
The MRE above with diatomic nitrogen ("N#N") runs without a hitch and is able to parameterize. I didn't spot anything which looked like a Bond constraint for O2 after a cursory search for SMIRKS like "[#8X1..." through openff-2.0.0.offxml, but I don't want to make any hasty conclusions. I'd like to be sure this is a genuine bug and not just a misunderstanding on my part, but can Sage really not parameterize molecular oxygen?