# Option conventions - `match()` takes **2 callbacks**: `(onSome, onNone)` - `filter()` takes ONLY a predicate — **no errorFactory** (unlike Result) - `mapErr()` and `flatMapErr()` do **NOT exist** on Option - `none()` returns a frozen singleton - `Option.from()` treats only `null | undefined` as None — `0`, `false`, `""` become `Some` - `flatMap` callback must return `Option` - Async return type: `OptionPromise` — never `Promise>` See `/native-monad-option` skill for full API reference.