Metadata-Version: 2.4
Name: algovoi-keystone-gcs
Version: 0.1.3
Summary: Bind Google Cloud Storage object writes to the AlgoVoi keystone -- wrap any GCS blob and every upload / delete gets a content-addressed execution_ref (keystone-only edition, Apache-2.0)
Author-email: AlgoVoi <chopmob@gmail.com>
License: Apache-2.0
Keywords: gcs,google-cloud-storage,object-storage,gcp,keystone,execution_ref,jcs,rfc8785,algovoi
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: System :: Archiving
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
Requires-Dist: algovoi-execution-ref>=0.1.0
Dynamic: license-file

# algovoi-keystone-gcs

[![Keystone Integration](https://img.shields.io/badge/Keystone-integration-7c8aa0)](https://docs.algovoi.co.uk/keystone)

Bind Google Cloud Storage object writes to the AlgoVoi keystone -- every upload / delete on a wrapped blob gets a content-addressed execution_ref. Open, keystone-only edition, Apache-2.0. Byte-compatible with `algovoi-execution-ref`.
Available on request -- see https://docs.algovoi.co.uk/keystone-connectors

```python
from algovoi_keystone_gcs import keystone_blob

blob = keystone_blob(bucket.blob("2026/r1.json"), decision_ref="sha256:...")
blob.upload_from_string(data)
blob.execution_ref   # binds that write (scope = bucket/name) to the keystone decision
```

Wraps `upload_from_string` / `upload_from_file` / `upload_from_filename` / `delete`; reads
(download_*, exists, ...) pass through untouched. A failed write is recorded `FAILED`. No
google-cloud-storage dependency. Or compute standalone with `gcs_execution_ref(...)`.

A failed operation is recorded with outcome `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.
