Skip to main content

Bind HTTP requests to the AlgoVoi keystone -- ASGI + WSGI middleware that gives every state-changing request a content-addressed execution_ref (keystone-only edition, Apache-2.0)

Project description

algovoi-keystone-asgi

Keystone Integration

Bind HTTP requests to the AlgoVoi keystone -- one ASGI/WSGI middleware gives every state-changing request a content-addressed execution_ref. Open, keystone-only edition, Apache-2.0. Byte-compatible with algovoi-execution-ref.

from algovoi_keystone_asgi import KeystoneASGIMiddleware

app = KeystoneASGIMiddleware(app, on_execution=record)   # FastAPI / Starlette / any ASGI app
# POST/PUT/PATCH/DELETE carrying x-keystone-decision-ref are bound to an execution_ref;
# outcome is derived from the response status (2xx/3xx COMMITTED, 4xx SKIPPED, 5xx FAILED).

KeystoneWSGIMiddleware is the WSGI twin (Flask, Django, ...). The decision_ref can come from a header (default x-keystone-decision-ref), a static value, or a resolver callable. No framework dependency -- pure ASGI/WSGI.

A rejected or failed operation is recorded with outcome SKIPPED / FAILED; tamper_detected(...) recomputes any binding offline.

Keystone-only edition

The open edition binds and verifies each operation. The signed, hash-linked chain of operations (PQC + CCC ingest) is the commercial tier.

License

Apache-2.0. Copyright AlgoVoi.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

algovoi_keystone_asgi-0.1.3-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file algovoi_keystone_asgi-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for algovoi_keystone_asgi-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 40628c6d81b8de545d19ea2e2ae030d1575144a82e9cb17bce39cf38baafea79
MD5 12286b0561863aadee4ba28489e8ae70
BLAKE2b-256 93c87525f538efc10241bc7d2a7e32c589c54f437e4854c088244cc32c3ec8dc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page