Skip to main content

nthlayer-override-adapter

Standalone HTTP sidecar that accepts human-override events and emits them as gen_ai.override OTel spans. Part of the NthLayer ecosystem; implements opensrm-jmy.7 — § 4 of NTHLAYER_MISSING_CAPABILITIES_SPEC.md.

Why

nthlayer-measure computes judgment SLOs from override metrics consumed via OTel. Operators reviewing AI decisions live in heterogeneous tools (Slack, Jira, internal review UIs, email). The override-adapter is the translation layer: HTTP in, canonical OTel gen_ai.override events out.

Endpoints

  • POST /api/v1/overrides — canonical OverrideEvent JSON in.
  • POST /api/v1/overrides/batch — {overrides: [...]} with last-in-array-wins on duplicate decision_id.
  • POST /webhook/{source} — one route per configured adapter; runs a YAML-declared field mapping on the inbound webhook payload.
  • GET /healthz — liveness probe.
  • GET /metrics — Prometheus self-observability.

Run locally

uv sync --extra dev
uv run nthlayer-override-adapter serve --config override-adapter-config.yaml

See override-adapter-config.yaml.example for a Jira-shaped adapter declaration.

Tests

uv run pytest -q
uv run ruff check src/ tests/

Ecosystem testing conventions: ../nthlayer/docs/testing.md.

License

Apache 2.0.

Metadata

Release files for nthlayer-override-adapter 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nthlayer-override-adapter 0.2.1
File Size Uploaded
nthlayer_override_adapter-0.2.1.tar.gz 26.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nthlayer-override-adapter 0.2.1
File Interpreter ABI Platform
nthlayer_override_adapter-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 44.0 kB

Release files / nthlayer_override_adapter-0.2.1.tar.gz

Download URL nthlayer_override_adapter-0.2.1.tar.gz
Size 26.8 kB
Tags Source
SHA-256 checksum
How to use checksums
fb4da653d443841951961d8b58ad5b95a70bfa474e35cfd76a1c1e320e5ff240
BLAKE2b-256 checksum
How to use checksums
26c2b75b651c3c48748fdef39759895f1164691d5af7af1a217d241a40e8a3c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release files / nthlayer_override_adapter-0.2.1-py3-none-any.whl

Download URL nthlayer_override_adapter-0.2.1-py3-none-any.whl
Size 17.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
20a90acb4d0dec38d67b73b4dd61d9c9606bb4ef78dd638ddbbe9fd7a3161ee8
BLAKE2b-256 checksum
How to use checksums
2fdec8ef69dfacdd8e2882711249a58f0223ec9d550be7f4ffe40e3f24289e78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.

Transparency log

Release history Release notifications | RSS feed

0.2.2

2 release files

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page