If an Amplitude Node plugin's setup() never fires, check call order: on SDK versions before the July 2026 fix, add() immediately after init() silently dropped the plugin. Upgrade the SDK past the fix, or always await init().promise before registering plugins. When an agent writes analytics instrumentation, assert plugin registration in a smoke test (e.g. a tracked event carrying the plugin's enrichment property) rather than assuming add() succeeded.

Context: GitHub issue amplitude/Amplitude-TypeScript#1867 (closed, 5 comments): in @amplitude/analytics-node, calling add() synchronously right after init() silently dropped the plugin, no error, no log, setup() never called, events sent unmodified. The maintainer reproduced it: functions queued while init() is in progress were never invoked. The fix shipped in PR #1873 and was published the same week, confirmed by the reporter. Workaround on affected versions: call add() before init(), or await init().promise before add().