diff --git a/Cargo.toml b/Cargo.toml index 758eba2..d929120 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -105,7 +105,7 @@ edition = "2024" license = "MIT OR Apache-2.0" rust-version = "1.91" repository = "https://github.com/auths-dev/auths-proof" -homepage = "https://github.com/auths-dev/auths-proof" +homepage = "https://auths.dev" [workspace.dependencies] auths = { version = "0.1.0", path = "core/crates/auths", default-features = false } diff --git a/README.md b/README.md index a6ade1c..53da8c9 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ -# auths-proof +# Auths -The strictly offline reference kernel for Auths Proof Protocol V1. +Auths is an open protocol and SDK for proof-carrying, bounded machine +authority. The `auths-proof` component is its strictly offline reference +kernel for Auths Proof Protocol V1. > Auths owns authority. Adapters establish bounded facts. @@ -40,7 +42,9 @@ attachment input, and resource limit is an explicit immutable verifier input. Target packages: -- `auths-proof`: supported embedded Rust facade and actionable results; +- `auths`: supported consumer-facing Rust core facade; +- `auths-sdk`: idiomatic embedded authorization SDK; +- `auths-proof`: bounded proof-protocol component and actionable results; - `auths-proof-wasm`: prebuildable three-input WebAssembly boundary; - `auths-model`: validated V1 protocol and context types; - `auths-codec`: constrained deterministic CBOR and domain-separated IDs; @@ -84,9 +88,10 @@ Canonical `.cbor` files are generated only through: cargo xtask wire --update ``` -Networking and transports belong to `auths-proof-exchange`. Profiles, live -resolvers, runtime state, receipts, execution, custody, independent -implementations, and Auths Lab belong to `auths-proof-apps`. +Networking and transports belong to the `auths-proof-exchange` components. +Profiles, live resolvers, runtime state, receipts, execution, custody, +independent implementations, and Auths Lab remain outside the offline proof +kernel in the workspace's product and demo layers. This repository is prelaunch and pre-audit. Passing corpus, fuzz-smoke, and WASM equivalence gates is not an independent security review. diff --git a/bindings/python/README.md b/bindings/python/README.md index d7e0e7e..477de4c 100644 --- a/bindings/python/README.md +++ b/bindings/python/README.md @@ -1,10 +1,10 @@ -# auths-proof for Python +# Auths for Python -`auths-proof` embeds the Auths Proof Protocol V1 verifier. Verification is +The `auths` package embeds the Auths Proof Protocol V1 verifier. Verification is deterministic, performs no I/O, and accepts exactly three byte strings: ```python -from auths_proof import verify +from auths import verify result = verify(proof_cbor, canonical_action_cbor, trusted_context_cbor) if result.kind == "authorized": diff --git a/bindings/python/pyproject.toml b/bindings/python/pyproject.toml index 4f84639..4c2327a 100644 --- a/bindings/python/pyproject.toml +++ b/bindings/python/pyproject.toml @@ -3,9 +3,9 @@ requires = ["maturin>=1.9,<2"] build-backend = "maturin" [project] -name = "auths-proof" +name = "auths" version = "0.1.0" -description = "Embedded offline verification for Auths Proof Protocol V1" +description = "Embedded Auths SDK with offline proof verification" readme = "README.md" requires-python = ">=3.9" license = "MIT OR Apache-2.0" @@ -17,6 +17,6 @@ classifiers = [ [tool.maturin] manifest-path = "Cargo.toml" -module-name = "auths_proof._native" +module-name = "auths._native" python-source = "python" features = ["pyo3/abi3-py39"] diff --git a/bindings/python/python/auths_proof/__init__.py b/bindings/python/python/auths/__init__.py similarity index 99% rename from bindings/python/python/auths_proof/__init__.py rename to bindings/python/python/auths/__init__.py index 34787f1..0d07ed8 100644 --- a/bindings/python/python/auths_proof/__init__.py +++ b/bindings/python/python/auths/__init__.py @@ -1,4 +1,4 @@ -"""Idiomatic embedded Auths Proof Protocol V1 verification.""" +"""Idiomatic embedded Auths SDK with Proof Protocol V1 verification.""" from __future__ import annotations diff --git a/bindings/python/python/auths_proof/py.typed b/bindings/python/python/auths/py.typed similarity index 100% rename from bindings/python/python/auths_proof/py.typed rename to bindings/python/python/auths/py.typed diff --git a/bindings/python/src/lib.rs b/bindings/python/src/lib.rs index 27d55cf..f3db77a 100644 --- a/bindings/python/src/lib.rs +++ b/bindings/python/src/lib.rs @@ -21,7 +21,7 @@ fn verify_v1<'py>( Ok(PyBytes::new(py, &result)) } -/// Installs the private native extension consumed by `auths_proof`. +/// Installs the private native extension consumed by `auths`. #[pymodule] fn _native(module: &Bound<'_, PyModule>) -> PyResult<()> { module.add_function(wrap_pyfunction!(verify_v1, module)?)?; diff --git a/bindings/python/tests/test_api.py b/bindings/python/tests/test_api.py index 5c20620..be67d99 100644 --- a/bindings/python/tests/test_api.py +++ b/bindings/python/tests/test_api.py @@ -4,8 +4,8 @@ import pytest -import auths_proof -from auths_proof import Authorized, Denied, VerifiedAction, verify +import auths +from auths import Authorized, Denied, VerifiedAction, verify CORPUS = ( @@ -63,15 +63,15 @@ def test_portable_decoder_rejects_shape_version_and_trailing_data() -> None: assert canonical[-2:] == b"\x0f\x02" with pytest.raises(ValueError, match="trailing"): - auths_proof._decode_result(canonical + b"\x00") + auths._decode_result(canonical + b"\x00") reordered_keys = bytes([0xB0, 0x01, 0x04, 0x00, 0x00]) + canonical[5:] with pytest.raises(ValueError, match="canonical"): - auths_proof._decode_result(reordered_keys) + auths._decode_result(reordered_keys) unknown_field = bytes([0xB1]) + canonical[1:] + b"\x10\xf6" with pytest.raises(ValueError, match="shape"): - auths_proof._decode_result(unknown_field) + auths._decode_result(unknown_field) with pytest.raises(ValueError, match="ABI version"): - auths_proof._decode_result(canonical[:-1] + b"\x03") + auths._decode_result(canonical[:-1] + b"\x03") diff --git a/bindings/typescript/README.md b/bindings/typescript/README.md index 3c163e3..5d40662 100644 --- a/bindings/typescript/README.md +++ b/bindings/typescript/README.md @@ -1,9 +1,10 @@ -# `@auths-dev/proof` +# `@auths-dev/sdk` -Embedded Auths Proof Protocol V1 verification for browser and Node. +The embedded Auths SDK for browser and Node. Its current public surface wraps +the bounded Auths Proof Protocol V1 verifier. ```ts -import { loadAuths } from "@auths-dev/proof"; +import { loadAuths } from "@auths-dev/sdk"; const auths = await loadAuths(); const result = auths.verify(proofBytes, canonicalActionBytes, contextBytes); diff --git a/bindings/typescript/package-lock.json b/bindings/typescript/package-lock.json index 41ec955..d206897 100644 --- a/bindings/typescript/package-lock.json +++ b/bindings/typescript/package-lock.json @@ -1,11 +1,11 @@ { - "name": "@auths-dev/proof", + "name": "@auths-dev/sdk", "version": "0.1.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "@auths-dev/proof", + "name": "@auths-dev/sdk", "version": "0.1.0", "devDependencies": { "typescript": "5.9.3" diff --git a/bindings/typescript/package.json b/bindings/typescript/package.json index f841672..be9b321 100644 --- a/bindings/typescript/package.json +++ b/bindings/typescript/package.json @@ -1,7 +1,7 @@ { - "name": "@auths-dev/proof", + "name": "@auths-dev/sdk", "version": "0.1.0", - "description": "Embedded Auths Proof Protocol V1 verifier for browser and Node", + "description": "Embedded Auths SDK for browser and Node", "type": "module", "exports": { ".": { diff --git a/compliance.toml b/compliance.toml index f07b994..f9d531c 100644 --- a/compliance.toml +++ b/compliance.toml @@ -1232,7 +1232,7 @@ stateful-replay-budget-component = [ "product/stores/auths-stores/src/lifecycle.rs#crash_matrix_reopens_old_or_new_canonical_state_never_partial_state", ] -[packages."@auths-dev/proof"] +[packages."@auths-dev/sdk"] kind = "npm" layer = "bindings" path = "bindings/typescript" @@ -1247,7 +1247,7 @@ transports = [] configuration_inputs = ["executed-verifier-configuration", "required-verifier-configuration"] security_state = [] -[packages."@auths-dev/proof".claims] +[packages."@auths-dev/sdk".claims] core-wire-consumer = ["bindings/typescript/test/api.test.js#portable decoder rejects shape version and trailing data"] language-binding = ["bindings/typescript/test/api.test.js#configuration mismatch reports required and executed commitments"] diff --git a/demos/github-issue/web/index.html b/demos/github-issue/web/index.html index ef23125..164afce 100644 --- a/demos/github-issue/web/index.html +++ b/demos/github-issue/web/index.html @@ -16,7 +16,7 @@