Skip to main content

Release Checklist

This checklist describes the release-preparation bar for the repository.

The current branch baseline is v0.10.3.

Public Surface

  • README reflects the real public API
  • public docs under docs/ are in English
  • the GitHub Pages site under website/ builds from the committed docs tree without broken links
  • docs.rs is treated as the primary API-reference host
  • GitHub Pages hosts the public docs and the rustdoc bundle under /api/
  • Cargo.toml carries release metadata for repository, documentation, keywords, categories, and license
  • Cargo.toml carries the GitHub Pages homepage
  • Cargo.toml intentionally omits rust-version until the project adopts an audited MSRV policy
  • examples and rustdoc point to the same API shape
  • API coverage documentation matches the codebase
  • docs/api-coverage.md matches tools/api-coverage/market-data-api.json
  • docs/index.md, docs/project-structure.md, docs/reference/, docs/generated/, website/sidebars.ts, and the README docs block match the latest ./tools/docs/generate-doc-site output
  • ./scripts/api-sync-audit has been run against the intended release baseline and reports no blocking drift
  • any detected mirror drift is resolved before convenience-layer compatibility is treated as valid again
  • the github-pages release workflow is the tag-triggered guardrail and runs only when a vX.Y.Z tag is pushed
  • after the first manual crates.io release, the repository is configured as a crates.io Trusted Publisher for the retained github-pages workflow before relying on CI publication
  • the github-pages workflow covers Rust validation, packaging, crates.io publication, docs-site build, and GitHub Pages deployment

Verification Targets

The release verification run should cover:

cargo fmt --check
cargo test
cargo check --examples
cargo test --doc
cargo doc --no-deps
npm run build --prefix website
cargo bench --no-run
cargo package --list
cargo package
cargo publish --dry-run

Required live tests must also be run with real Alpaca credentials when the scenario is expected to succeed against the official API.

Packaging Expectations

The published crate should be clean:

  • public docs are present
  • internal workflow material is not shipped in the package artifact
  • .agents/, .github/, AGENTS.md, tools/docs/, and website/ are excluded from the package contents