Metadata-Version: 2.4
Name: fendray
Version: 0.0.1
Summary: Namespace placeholder for the Fendray SDK — not the real SDK.
Author-email: AuvionX <contact@auvionx.com>
Project-URL: Homepage, https://console.fendray.io
Classifier: Development Status :: 1 - Planning
Classifier: Intended Audience :: Developers
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.10
Description-Content-Type: text/markdown

# fendray-sdk / fendray — PyPI namespace stub

This is **not** the Fendray SDK. It is a minimal **defensive namespace-ownership
stub** (per ADR-044) that claims the `fendray-sdk` and `fendray` names on PyPI so
they cannot be typosquatted. Importing the package raises `ImportError` pointing to
the Fendray console, where the real SDK is distributed privately (signed,
entitlement-gated wheel).

## Two-name publishing procedure

PyPI normalizes `-`/`_`/`.`/case, so **`fendray-sdk` and the bare `fendray` are two
distinct projects**. One source tree publishes both:

1. Build + upload with `name = "fendray-sdk"` (the committed default).
2. Flip the single `name` line in `pyproject.toml` to `"fendray"`, rebuild, upload again.
3. Restore `name = "fendray-sdk"` — **do not commit the flipped value**.

Upload discipline (ADR-044): role account `contact@auvionx.com`, 2FA on, dry-run on
TestPyPI first (the first upload of a project filename is irreversible), account-scoped
token for the first upload of each name then rotate to project-scoped tokens.

## Build
```
python -m build      # produces dist/ wheel + sdist
```
