Lesson 19← back to roadmap
Errors are typed. Catch them with intent.
text
std::runtime_error
└── elips::ElipsError
├── ConfigError // identity / dimension / embedder mismatch
├── StorageError // WAL / segments / lock / read-only writes
├── DimensionMismatch // wrong-shape vector
├── InvalidVector // NaN / Inf
├── NotFound // unknown id
├── CollectionNotFoundError // missing collection
├── LockConflict // writer-lock contention
├── NotTrainedError // query before train / compress
├── BackendUnavailableError // requested GPU backend absent
└── ParseError // malformed EQLpython
try:
notes.add(embedding=[float("nan")] * 4)
except elips.InvalidVector as e:
log.warning("rejected: %s", e)