@errcheck/js-core
v0.1.3
Published
Internal shared core for Errcheck SDKs. Not meant for direct use — install @errcheck/js-browser or @errcheck/js-server instead.
Readme
@errcheck/js-core
Internal shared foundation for Errcheck's error-tracking SDKs.
Scope model, client, transport, and rate limiting — shared by every platform package.
This package is not meant to be installed directly. Install one of the platform packages instead — they depend on
@errcheck/js-coreautomatically.
| Package | For |
| --- | --- |
| @errcheck/js-browser | The browser |
| @errcheck/js-server | Server-side JavaScript |
What lives here
graph TD
Browser["@errcheck/js-browser"] --> Core
Server["@errcheck/js-server"] --> Core
subgraph Core["@errcheck/js-core"]
Scope["Scope model<br/>(global · isolation · current)"]
Client["Client<br/>(init, capture*, flush)"]
Transport["Transport<br/>(drop-on-failure, rate-limit aware)"]
end- Scope model — global / isolation / current scopes, merged in that precedence order
at capture time. See
src/scope.ts. - Client —
init,captureException,captureMessage,flush, and the rest of the public API that platform packages re-export as-is. - Transport — drops rather than retries on failure or an active rate limit; a retry
storm during an incident is worse than a few missed events. See
src/transports/. - Async context strategy — an injectable interface (
AsyncContextStrategy) that each platform package implements for its own concurrency model. The browser's default is a simple closure-based scope (one JS thread per tab); the server package overrides it with anAsyncLocalStorage-backed implementation for per-request isolation.
License
MIT
