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.)

Shipment & integrity

  • One-shot shipment preparation (osqar shipment prepare --archive)
  • SHA256SUMS manifest generation and verification
  • GPG detached signature support (osqar sign sign / 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.8.1.tar.gz (145.4 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.8.1-py3-none-any.whl (165.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for osqar-0.8.1.tar.gz
Algorithm Hash digest
SHA256 edb9496d7a4db9a698df8406e3dfee651bf781119208b85a0c666219d96157b3
MD5 118274bc15fa5218a6cc4078de414c46
BLAKE2b-256 3b6e38e480b21915efc8eb5acd733fdffedfb9685a11ada839e2f4781d1c8dd8

See more details on using hashes here.

Provenance

The following attestation bundles were made for osqar-0.8.1.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.8.1-py3-none-any.whl.

File metadata

  • Download URL: osqar-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 165.7 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.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f4682fac43350f058a6c44e8e4ad451d87da1d628e28559dcbe493e80ab24283
MD5 b95e5d0331f31eba1c7fd9f8f3cebb26
BLAKE2b-256 dfa4380cba64c27342565c3e60a5ee8955ba419d3aa2822f35a57510020af38e

See more details on using hashes here.

Provenance

The following attestation bundles were made for osqar-0.8.1-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