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==12.0.0
次期12.0.0は、クラウド環境をdev・prodに限定し、管理下ResourceとバージョンなしAPIパスに対応したControl Plane(CP main cc6d0e2d以降)を前提とする。取り込んだ契約が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 12.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して確認する。
PyPIへの公開
pyproject.toml の version を未公開の正式Semantic Versionに更新し、ローカル検証後に main → release のPRを作成する。必須チェック sdk・release-ready の成功後にマージすると、wheelのビルド・検証、PyPIへの公開、v<version> tagの付与を順に実行する。公開workflowはreleaseへのpush時に、対象commitが同一リポジトリのマージ済みmain→release PRのmerge commitであることをGitHub APIで検証する。mainへのpush・PRでは公開しない。
認証はPyPIのTrusted Publisherを使用する。登録先はowner HappyHackInc、repository hh-wonderfish-ai-sdk、workflow publish-pypi.yml、Environment pypi とし、GitHub側の pypi Environmentは release ブランチだけを許可する。公開済みversionとtagは変更せず、修正には新しいversionを使う。
構成
| 場所 | 用途 |
|---|---|
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 12.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| wonderfish_cp_sdk-12.0.0-py3-none-any.whl | Python 3 | none | any | Details for wonderfish_cp_sdk-12.0.0-py3-none-any.whl |
Release files / wonderfish_cp_sdk-12.0.0-py3-none-any.whl
| Download URL | wonderfish_cp_sdk-12.0.0-py3-none-any.whl |
|---|---|
| Size | 40.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d375d52e3ddbfbb8d89ac0f32cff9d65932ed5045001cb868e6ea55eca7c0314
|
|
BLAKE2b-256 checksum How to use checksums |
e473785260760bb98d87acfdbe1e6c4bbc34f77de2dcc0a5b0c791024a2baccc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Oct 19, 2026.
Transparency logSecurity for wonderfish-cp-sdk 12.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.
Full provenance
1 file in this release has been uploaded with provenance metadata.
Attestation for wonderfish_cp_sdk-12.0.0-py3-none-any.whl
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 Oct 19, 2026.
Transparency logA 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.