Skip to main content

iso-obs-schemas

The authoritative shared schema contract for Reliability Studio by Iso AI. This package defines the Pydantic v2 models that every other part of the system is built against:

  • the Python SDK (iso_obs) emits traces shaped by these models,
  • the API (apps/api) validates and persists them,
  • the web app (apps/web) code-generates its TypeScript types from the JSON Schema exported here.

If a shape changes here, it changes everywhere. Treat this package as the single source of truth and change it deliberately.

  • PyPI name: iso-obs-schemas
  • Import name: iso_obs_schemas
  • Python: >=3.12

Install

pip install iso-obs-schemas
# for development (tests):
pip install "iso-obs-schemas[dev]"

What's inside

Module Contents
ids Typed, prefixed id convention (IdPrefix, generate_id, validated id aliases)
enums Shared StrEnum vocabularies (EventType, RunStatus, FailureCategory, Severity, SystemType, PerturbationFamily, MetricDirection, WorkspaceRole)
core The eight core objects and their versions, plus Run
events BaseEvent trace schema and typed payload models
metrics MetricValue, MetricDefinition, Invariant, Gate
reports Finding, ReliabilityReport
from iso_obs_schemas import Run, BaseEvent, RunStatus, generate_id, IdPrefix

run = Run(
    id=generate_id(IdPrefix.RUN),
    workspace_id=generate_id(IdPrefix.WORKSPACE),
    project_id=generate_id(IdPrefix.PROJECT),
    suite_execution_id=generate_id(IdPrefix.EVALUATION_SUITE),
    system_version_id=generate_id(IdPrefix.SYSTEM_VERSION),
    environment_version_id=generate_id(IdPrefix.ENVIRONMENT_VERSION),
    scenario_version_id=generate_id(IdPrefix.SCENARIO_VERSION),
    seed=7,
    status=RunStatus.COMPLETED,
)

Typed id conventions

Every persistent object carries a typed, prefixed string id (e.g. run_9f8c2a...). The prefix names the object kind, so ids are self-describing in logs, traces, and URLs, and the API can reject a mismatched id at the edge. The prefix set is closed — adding a kind means adding an IdPrefix member and a matching validated alias in ids.py.

Prefix Object
ws_ Workspace
prj_ Project
sys_ System
sv_ SystemVersion
env_ Environment
ev_ EnvironmentVersion
scn_ Scenario
scv_ ScenarioVersion
suite_ EvaluationSuite / suite execution
run_ Run
evt_ Trace event
fail_ Failure
cmp_ Comparison
rpt_ Report
key_ API key
wh_ Webhook

The id aliases are validated: assigning a ws_... id to a field typed as a ProjectId raises a ValidationError.

Exporting JSON Schema

The web app codegen consumes JSON Schema for the public models. Regenerate it into schemas/json/ with:

python -m scripts.export_json_schema

Tests

pytest

Metadata

Release files for iso-obs-schemas 0.1.0

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

Source distribution (sdist)

Source distribution for iso-obs-schemas 0.1.0
File Size Uploaded Provenance Actions
iso_obs_schemas-0.1.0.tar.gz 14.4 kB Without provenance Details for iso_obs_schemas-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for iso-obs-schemas 0.1.0
File Interpreter ABI Platform Actions
iso_obs_schemas-0.1.0-py3-none-any.whl Python 3 none any Details for iso_obs_schemas-0.1.0-py3-none-any.whl

Total release size: 32.9 kB

Release files / iso_obs_schemas-0.1.0.tar.gz

Download URL iso_obs_schemas-0.1.0.tar.gz
Size 14.4 kB
Tags Source
SHA-256 checksum
How to use checksums
b784527ded5e6d0ef1089c199572b222fccc145ee8a4ae141cf8509e7fcbbbad
BLAKE2b-256 checksum
How to use checksums
68f2da0cbef998e66868f634518dfb922991cd59b1db01fa5b6da97b3dd72ce0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.4

Release files / iso_obs_schemas-0.1.0-py3-none-any.whl

Download URL iso_obs_schemas-0.1.0-py3-none-any.whl
Size 18.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cbee9e789892220d01e6e46d108f855911e85a377f13dffb653c0e835d9eaee6
BLAKE2b-256 checksum
How to use checksums
141c3159685413c13d0b3293824609bfd0907467554a32d382ccf5d47e94e9ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.4

Security for iso-obs-schemas 0.1.0

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

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