A previous release had provenance metadata, but this release does not. View details.
wonderfish-cp-sdk
Product ServiceからMVP Control Planeを呼び出すPython SDK。型付きclient、Managed Identity認証、Catalog cache、顧客・Product Service間Token検証を提供する。公開仕様はSDK仕様書、HTTP契約はcontractsを参照する。
取得
Python 3.12以上で、Public PyPIの正式versionを固定する。
pip install wonderfish-cp-sdk==11.0.0
11.0.0は、管理下Resourceに対応したControl Plane(CP main 7b94e2e0以降)を前提とする。取り込んだ契約がCPの配置より先行しているため、接続先のCPへ反映してから導入する。
公開前のlocal検証ではこのcommitからwheelをビルドし、そのwheelを検証環境へ導入する。正式配置では公開済みwheelを使う。
ローカル検証
python -m pip install --require-hashes -r requirements-dev.lock
python -m pip install --require-hashes -r deployment/sample/requirements.lock
python -m ruff check src tests deployment .github/scripts
python -m compileall -q src tests deployment .github/scripts
python -m pytest
python -m pip_audit -r requirements-dev.lock
python -m pip_audit -r deployment/sample/requirements.lock
node --check deployment/sample/assets/ui.mjs
node --test tests/test_sample_*.mjs
python deployment/sample/download_msal.py
python -c "import pathlib, shutil; [shutil.rmtree(p, ignore_errors=True) for p in [pathlib.Path('build'), pathlib.Path('dist'), *pathlib.Path('src').glob('*.egg-info')]]"
python -m build --wheel --no-isolation
python -m twine check --strict dist/*.whl
python .github/scripts/validate_wheel.py dist 11.0.0
python -m pip install --force-reinstall --no-deps dist/*.whl
python deployment/sample/smoke.py
ブラウザー処理の検証にはNode.js 22.23.2を使う。MSAL取得はビルド時の固定hash検査であり、pytestとNodeテストにはネットワークを使わない。
pytestとNodeテスト、smokeはネットワーク不要の開発検証。依存導入・監査・MSAL取得にはネットワークを使う。実CPとのHTTP・画面の結合試験はサンプル開発手順と試験項目書に従い、localの実CPとDevの実Managed Identityの結果を別に記録する。sample Docker imageのlock同期はDockerfileが指定する固定Python imageでpip-compileして確認する。
構成
| 場所 | 用途 |
|---|---|
src/wonderfish_cp |
公開SDK・認証・HTTP境界 |
src/wonderfish_cp/external |
受信Tokenと実行呼出元の検証 |
tests |
ネットワーク不要の契約・単体テスト |
contracts |
CP OpenAPIの写し |
docs |
SDK仕様と検証用sampleの仕様 |
docs/DesignSystem |
CPとProduct Service共通の画面デザイン(トークン・部品・レイアウト)。配布物に含めない |
deployment/sample |
単一プロセスの疎通確認用Product Service。配布物に含めない |
SDKはApache License 2.0で提供する。脆弱性・秘密情報は公開Issueへ記載せずsupport@happyhack.co.jpへ連絡する。
Metadata
Release files for wonderfish-cp-sdk 11.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Loss of provenance
This file belongs to a release without provenance metadata, despite a prior release including this data.
We recommend further investigation before installing this file. View details.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| wonderfish_cp_sdk-11.0.0-py3-none-any.whl | Python 3 | none | any | Details for wonderfish_cp_sdk-11.0.0-py3-none-any.whl |
Release files / wonderfish_cp_sdk-11.0.0-py3-none-any.whl
Loss of provenance
This file belongs to a release without provenance metadata, despite a prior release including this data.
We recommend further investigation before installing this file. View details.
| Download URL | wonderfish_cp_sdk-11.0.0-py3-none-any.whl |
|---|---|
| Size | 39.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9ff9a7ea6ea72e401bb5a30a9468c5b1364c73d15aa52a746642d56ca6b3cb8b
|
|
BLAKE2b-256 checksum How to use checksums |
0e1ed28bb7cd07d4de69c7f6af4d1ac8553cc3e5055260be068216d35d6494f2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.10
|
Security for wonderfish-cp-sdk 11.0.0
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.
Loss of provenance
A previous release of these files had provenance metadata, but this release does not.
While this could reflect a routine change by the project maintainers, it may also indicate that the release files have been compromised.
Release comparison
- Removed 10.0.1 1 file With provenance
- Added 11.0.0 1 file Without provenance
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.