AbsoluteJS

Slo

@absolutejs/slov0.1.0betaPlatform & Infra

Storage-neutral SLO, error-budget, burn-rate, release-gate, and incident-decision primitives for AbsoluteJS.

#Installation

BASH
bun add @absolutejs/slo

#Capabilities

Overview

Storage-neutral service-level objective decisions for AbsoluteJS.

Error budgets and release gates

The package converts already-authorized measurements into deterministic error budgets, burn-rate alerts, release gates, and incident transitions. It does not own storage, scraping, paging providers, or application policy.

Burn rates and incidents

Use evaluateBurnRates for sustained multi-window alerting and sloIncidentDecision to prepare idempotent open/resolve transitions for @absolutejs/incidents.

Outcomes

What you can build

Overview

Storage-neutral service-level objective decisions for AbsoluteJS.

Error budgets and release gates

The package converts already-authorized measurements into deterministic error budgets, burn-rate alerts, release gates, and incident transitions. It does not own storage, scraping, paging providers, or application policy.

Burn rates and incidents

Use evaluateBurnRates for sustained multi-window alerting and sloIncidentDecision to prepare idempotent open/resolve transitions for @absolutejs/incidents.

Hardening checklist

Production guidance

Make every external boundary explicitPin the deployed @absolutejs/slo version, replace example or memory-backed dependencies with durable implementations, bound external calls, protect credentials, and emit enough evidence to retry or recover safely.

Follow in order

Troubleshooting path

1
Error budgets and release gates
The package converts already-authorized measurements into deterministic error budgets, burn-rate alerts, release gates, and incident transitions. It does not own storage, scraping, paging providers, or application policy.

#Quick start

Partial snippet

Working example for Quick start.

TS
import { evaluateSlo, sloReleaseGate } from '@absolutejs/slo';

const evaluation = evaluateSlo(
	{
		id: 'checkout-availability',
		objective: 0.999,
		windowMs: 30 * 86_400_000,
		minimumSamples: 1_000
	},
	{ good: 99_950, total: 100_000, start, end }
);

const gate = sloReleaseGate(evaluation);

#Public entry points

Supported entry points declared by this project’s package manifest. Internal dist paths are not part of the package contract.

@absolutejs/sloPublic package entry point declared in package.json.

#Package commands

Scripts declared by this project’s package manifest.

bun run buildrm -rf dist && bun build src/index.ts --outdir dist --root src --sourcemap --target=bun && tsc --project tsconfig.build.json
bun run check:packagebun run format && bun run typecheck && bun run test && bun run build
bun run formatprettier --write "./**/*.{ts,json,md}"
bun run testbun test
bun run typechecktsc --noEmit