Skip to main content
Archived

This project has been archived by its maintainers, and is no longer receiving any updates.

ACES Scenario Packs

The canonical, shared home for the ACES scenario-pack definition and the authoring / validation tooling that goes with it, published as an installable Python package so catalogs (and others) consume one version-matched artifact instead of vendoring the contract.

This repository does not host scenario packs. Packs live in their own catalog repositories and consume this contract.

Install

pip install aces-scenario-packs

This provides the console tools plus the version-matched schemas and template:

  • aces-pack-validate — validate pack content against the contract.
  • aces-pack-release — boundary-split build, lint, release, and profile-smoke gate.
  • aces-new-pack — scaffold a new pack from the bundled template.
  • aces-pack-issue-skeleton — generate a pack work-issue skeleton.

Validate one pack by pointing the tools at its directory:

aces-pack-validate --pack ./scenarios/example-pack
aces-pack-release check --pack ./scenarios/example-pack

As a convenience, a directory containing only pack directories can be checked in one command. Every direct child directory is treated as a pack candidate:

aces-pack-validate --packs-root ./scenarios
aces-pack-release check --packs-root ./scenarios

Consumers can validate one immutably staged pack in-process, without Git, subprocesses, or pack-local code:

from aces_scenario_packs import validate_pack

result = validate_pack(pack_root)
if not result.ok:
    reject(result.errors)

This checks the static ingest contract: pack identity, required provenance and safety/review policy, an optional referenced compatibility manifest, and direct SDL documents through ACES. Diagnostics contain bounded error codes and relative locations, never source bodies or absolute paths. See Single-Pack Consumer Validation.

What's here

Boundary

This repository is subordinate to ACES core (aces-sdl): it exists to make authoring and shipping ACES scenarios easier, and defines no extensions to ACES semantics (ADR 0009).

  • ACES core owns the Scenario Definition Language (SDL) and all scenario semantics. Where ACES owns a concept, packs consume it from ACES.
  • This repository owns how a scenario pack is structured, authored, validated, and released — the layout and the tools that enforce it.
  • Downstream catalogs hold the actual packs and any private runtime, delivery, or product integrations.

Development

python3 -m venv .venv
. .venv/bin/activate
pip install -e .

python -m unittest discover -s tests

Releases are managed by release-please — merge-driven, nothing hand-run (see ADR 0008). The version lives in pyproject.toml ([project].version) and is bumped by release-please; __version__ derives from it. The Conventional Commit PR title decides the bump:

PR title Bump
feat!: / BREAKING CHANGE: major (pre-1.0: minor)
feat: minor
fix: / perf: patch
docs: chore: refactor: test: ci: build: no release

You never edit CHANGELOG.md — release-please owns it. As feature PRs land on main (via dev), release-please keeps a chore(main): release X.Y.Z PR up to date with the version bump + changelog. Merge that PR to release: it tags vX.Y.Z, builds the sdist + wheel, generates a CycloneDX SBOM, publishes to PyPI via OIDC, and cuts the GitHub Release. (The release PR is opened by the CI token, so its checks don't auto-run — admin-merge it.) A CI check enforces conventional PR titles and bans agent-branding prefixes.

Licensed under the MIT License (see LICENSE).

Metadata

Release files for aces-scenario-packs 2.0.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 aces-scenario-packs 2.0.1
File Size Uploaded Provenance Actions
aces_scenario_packs-2.0.1.tar.gz 153.5 kB With provenance Details for aces_scenario_packs-2.0.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for aces-scenario-packs 2.0.1
File Interpreter ABI Platform Actions
aces_scenario_packs-2.0.1-py3-none-any.whl Python 3 none any Details for aces_scenario_packs-2.0.1-py3-none-any.whl

Total release size: 249.2 kB

Release files / aces_scenario_packs-2.0.1.tar.gz

Download URL aces_scenario_packs-2.0.1.tar.gz
Size 153.5 kB
Tags Source
SHA-256 checksum
How to use checksums
b96981643db06b487334cea3c9b8bfbc7c9fcb078ad6451da3634d03b3aa53ec
BLAKE2b-256 checksum
How to use checksums
cd8dc5d9f8187c1d17c7b42454fab07cfce9db8e5c74592954fb6596b2ac32d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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 Jul 17, 2026.

Transparency log

Release files / aces_scenario_packs-2.0.1-py3-none-any.whl

Download URL aces_scenario_packs-2.0.1-py3-none-any.whl
Size 95.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4f56aa3b937c447a30548676a23fa8c161427c1c4be859e85928404d6d68f298
BLAKE2b-256 checksum
How to use checksums
da136812991eb3011406dba4ba20db786f8ee67a90b4dc05e5d6865728c7a50f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

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 Jul 17, 2026.

Transparency log

Security for aces-scenario-packs 2.0.1

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for aces_scenario_packs-2.0.1.tar.gz

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 Jul 17, 2026.

Transparency log

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.

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