feat: PyPI packaging + publish workflow + platform design doc#56
feat: PyPI packaging + publish workflow + platform design doc#56hummbl-dev merged 1 commit intomainfrom
Conversation
9b0b7c4 to
b04ed8b
Compare
- Update pyproject.toml: name=arbiter-score, version=0.6.0, full metadata (URLs, keywords, classifiers, Python 3.14) - Add MANIFEST.in for sdist - Add publish.yml GitHub Action (trusted publishing to PyPI) - Add docs/PLATFORM_DESIGN.md with specs for Cloud API, GitHub App, and Dashboard (requires human infra setup) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
b04ed8b to
ee6f454
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9b0b7c4bd8
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| "Development Status :: 3 - Alpha", | ||
| "Development Status :: 4 - Beta", | ||
| "Intended Audience :: Developers", | ||
| "License :: OSI Approved :: MIT License", |
There was a problem hiding this comment.
Drop license classifier when license expression is set
pyproject.toml already sets license = "MIT", which setuptools interprets as an SPDX license expression; adding a License :: ... classifier alongside that now triggers InvalidConfigError during metadata generation in current setuptools releases, so python -m build fails before producing artifacts. This blocks the new publish workflow from building the package.
Useful? React with 👍 / 👎.
| permissions: | ||
| id-token: write # Required for trusted publishing |
There was a problem hiding this comment.
Add contents:read to workflow permissions for checkout
The workflow-level permissions block only grants id-token: write; when permissions are explicitly set, unspecified scopes are removed, so actions/checkout@v4 in the build job may not be able to read repository contents via GITHUB_TOKEN. In that configuration, release publishing can fail before the package is built.
Useful? React with 👍 / 👎.
Summary
arbiter-scorev0.6.0 with full metadataAfter merge
To publish: create a GitHub release → publish workflow runs automatically.
Requires PyPI trusted publisher setup: https://docs.pypi.org/trusted-publishers/
Test plan
🤖 Generated with Claude Code