Skip to content

Add source repository manifest#43

Closed
rominf wants to merge 5 commits into
mainfrom
EAI-7095-create-manifest
Closed

Add source repository manifest#43
rominf wants to merge 5 commits into
mainfrom
EAI-7095-create-manifest

Conversation

@rominf

@rominf rominf commented Jun 23, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Adds MANIFEST.md to document the composition of this repository for OSS compliance purposes.
  • The manifest covers: application identity (name, version, license, copyright), all Cargo crate dependencies with versions and SPDX license expressions, shipped binaries, runtime-downloaded assets, and a brief description of each top-level directory.
  • The Cargo dependency table is generated from cargo metadata at release time; the manifest includes the regeneration command so it can be kept current.
  • No vendored third-party source is included in this repository — all Rust dependencies are fetched from crates.io via Cargo; all runtime assets (ROCm SDK wheels/tarballs, uv binary) are downloaded on demand.

Test plan

  • Review MANIFEST.md content for accuracy against Cargo.lock, Cargo.toml, and the codebase structure.
  • Optionally re-run the embedded cargo metadata command to verify the dependency table matches the current lockfile.

rominf and others added 5 commits June 23, 2026 11:46
Documents the application name, version, Cargo dependency provenance,
shipped binaries, runtime-downloaded assets, and repository structure
as required by AMD OSS policy Section A.c.

Signed-off-by: Roman Inflianskas <Roman.Inflianskas@amd.com>
Replace the Python cargo-metadata snippet with a native
`cargo xtask manifest` command that regenerates the Cargo
dependency table in MANIFEST.md in place, with a --check mode
for CI. Keeps manifest maintenance pure-Rust and dependency-free.

Signed-off-by: Roman Inflianskas <Roman.Inflianskas@amd.com>
- Tarball signature check: the RSA/SHA-256 signature verification applies
  to metadata index files only, not to the SDK tarball binary itself.
  Rescope the claim to avoid misleading compliance reviewers.

- Add missing Lemonade embeddable runtime-download section: when
  `rocm engines install lemonade` is run the CLI downloads a prebuilt
  Lemonade embeddable archive from GitHub; this asset category was
  entirely absent from the manifest.

- Correct engine Python-venv description: only the PyTorch engine manages
  its own uv-backed virtual environment; vLLM, SGLang, and ATOM record
  externally-provided runtimes and do not install Python packages.

Signed-off-by: Roman Inflianskas <Roman.Inflianskas@amd.com>
Two correctness issues found in review of the source manifest:

- Sort the generated Cargo dependency table by semantic version rather
  than lexicographically. A string sort ordered multi-digit versions
  incorrectly (e.g. core-foundation 0.10.1 before 0.9.4, linux-raw-sys
  0.12.1 before 0.4.15). Add the semver crate to xtask and compare
  parsed versions, falling back to string order if parsing fails.
  Regenerate the table so the committed ordering is correct.

- Correct the Shipped Binaries section: the workspace builds more than
  two binaries. Besides rocm and rocmd, each engine crate under engines/
  builds its own rocm-engine-<name> host binary. Also add llama.cpp to
  the list of engines that record external runtimes rather than
  installing Python packages.

Signed-off-by: Roman Inflianskas <Roman.Inflianskas@amd.com>
cargo metadata --locked hard-fails whenever Cargo.lock needs even a
trivial refresh (e.g. right after a dependency is added but before a
build updates the lock). Resolve normally so the manifest command stays
usable in that window.

Signed-off-by: Roman Inflianskas <roman.inflianskas@amd.com>
@rominf rominf closed this Jun 23, 2026
@rominf
rominf deleted the EAI-7095-create-manifest branch June 23, 2026 12:21
@rominf

rominf commented Jun 23, 2026

Copy link
Copy Markdown
Collaborator Author

Superseded by #46 (recreated from a branch renamed to remove an internal identifier; same commits plus pending fixes).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant