Skip to main content

Open Safety Qualification Architecture - A Sphinx-Needs boilerplate for safety-related systems.

Project description

License CI Docs

OSQAr — Open Safety Qualification Architecture

Auditable evidence shipments with traceability. Write requirements, architecture, and verification plans in reStructuredText. Link them with sphinx-needs. Package into integrity-protected shipments. Integrate across teams.

pipx install osqar
osqar new --language c --name hello_safety && cd hello_safety
osqar build-docs && osqar open-docs

Who this is for

Role Does
Supplier Produce auditable evidence shipments (docs + code + tests + checksums)
Integrator Verify, intake, and archive received shipments; enforce dependency closure
Internal team Standardize evidence packaging across subprojects and CI

Quick links

Features

Documentation & traceability

  • Structured requirements, architecture, verification plans via sphinx-needs + reStructuredText
  • PlantUML architecture diagrams embedded in docs
  • Machine-readable needs.json exports with full traceability graph
  • CSV and Excel (--format xlsx) traceability matrix exports for auditor review
  • Change impact analysis (osqar impact) from any seed requirement
  • Versioned requirement baselines with snapshot/list/diff (osqar baseline)
  • Requirement ID prefix overrides (--req-prefix, --arch-prefix, etc.)

Scaffolding & skills

  • Language templates for C, C++, Rust, Python (osqar new --language)
  • ASIL‑D C template (osqar new --language c --template asil-d_c) with pre‑populated ISO 26262‑6 software safety requirements, architecture, verification, and lifecycle needs
  • Agent‑ready content‑authoring skills (ISO 26262‑6, ISO 21434, ISO 21448, vehicle programs, compliance documentation) — see skills/ and the Agent Skills usage guide
  • GSN safety case generation (osqar gsn generate) with PlantUML and gsn2x backends

Shipment & integrity

  • One-shot shipment preparation (osqar shipment prepare --archive)
  • SHA256SUMS manifest generation and verification
  • GPG detached signature support (osqar sign create / osqar sign verify)
  • Incremental mode — only rebuild changed stages
  • Project metadata declaration with OSQAr-qualified dependency pins

Verification & CI

  • Traceability rule enforcement (REQ→ARCH, ARCH→REQ, REQ→TEST)
  • Code trace scanning with enforcement (osqar code-trace)
  • Configurable verification activities (sanitizers, static analysis, fuzzing)
  • Auto-generated gap documentation from osqar_project.json
  • PlantUML-free build mode (OSQAR_NO_DIAGRAMS=1) for offline/CI
  • Scaffold projects with osqar new --no-diagrams to permanently disable diagrams

Multi-project & organization

  • Workspace orchestration: list, report, verify, intake, combine
  • Cross-project traceability via namespace-prefixed workspace combine
  • Dependency closure enforcement across received shipments
  • Lifecycle management and collaboration workflows for multi-user teams
  • Reproducible native builds (C/C++/Rust, optional Bazel integration)
  • Extensible via project/workspace JSON config + command hooks

Getting started as a developer

git clone https://github.com/BitVortex/OSQAr.git
cd OSQAr
poetry install
osqar build-docs && osqar open-docs

For the full contributor setup (editable install, evidence tools, CI), see the framework docs.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

osqar-0.9.0.tar.gz (210.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

osqar-0.9.0-py3-none-any.whl (237.4 kB view details)

Uploaded Python 3

File details

Details for the file osqar-0.9.0.tar.gz.

File metadata

  • Download URL: osqar-0.9.0.tar.gz
  • Upload date:
  • Size: 210.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for osqar-0.9.0.tar.gz
Algorithm Hash digest
SHA256 5cce33a76fded8f0016649cde7dcea2583d025ff919ea157b2503c5db668cf06
MD5 39db32baa253428fab35a04a7c31da98
BLAKE2b-256 1a58ce95aec073c902e02e8a319eb2f472bba321071df8133a69561247eba69c

See more details on using hashes here.

Provenance

The following attestation bundles were made for osqar-0.9.0.tar.gz:

Publisher: release.yml on BitVortex/OSQAr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file osqar-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: osqar-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 237.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for osqar-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f47ff063715f6f428da54c4edd472382c93a4ffbadee8932ba32141bb284a095
MD5 3aa7346c37282051450840b7aa5ecd98
BLAKE2b-256 0e06763b9fe2a4bee38f9aabbae4bcba471c42ccd88f8173b0ca1261d654ee9d

See more details on using hashes here.

Provenance

The following attestation bundles were made for osqar-0.9.0-py3-none-any.whl:

Publisher: release.yml on BitVortex/OSQAr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page