|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to Capsule are documented in this file. |
| 4 | + |
| 5 | +Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). |
| 6 | +Versioning follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html). |
| 7 | + |
| 8 | +--- |
| 9 | + |
| 10 | +## [1.0.0] - 2026-03-07 |
| 11 | + |
| 12 | +Initial public release of the Capsule Protocol Specification (CPS) v1.0 reference implementation. |
| 13 | + |
| 14 | +### Added |
| 15 | + |
| 16 | +- **Capsule model** with 6 mandatory sections: Trigger, Context, Reasoning, Authority, Execution, Outcome |
| 17 | +- **8 Capsule types**: agent, tool, system, kill, workflow, chat, vault, auth |
| 18 | +- **Cryptographic sealing**: SHA3-256 (FIPS 202) + Ed25519 (FIPS 186-5) |
| 19 | +- **Post-quantum dual signatures**: optional ML-DSA-65 (FIPS 204) via `pip install qp-capsule[pq]` |
| 20 | +- **Hash chain**: tamper-evident linking with sequence numbers and `previous_hash` |
| 21 | +- **CapsuleStorageProtocol**: runtime-checkable `typing.Protocol` for custom storage backends |
| 22 | +- **SQLite storage**: zero-config persistence via `pip install qp-capsule[storage]` |
| 23 | +- **PostgreSQL storage**: multi-tenant isolation via `pip install qp-capsule[postgres]` |
| 24 | +- **Pre-execution reasoning capture**: Section 3 (Reasoning) written before Section 5 (Execution) |
| 25 | +- **ReasoningOption.rejection_reason**: mandatory explanation for non-selected options |
| 26 | +- **Key management**: auto-generated keys with `0600` permissions, umask-based creation |
| 27 | +- **Cross-language interoperability**: canonical JSON serialization rules and 15 golden test vectors covering Unicode, fractional timestamps, all CapsuleTypes, chain sequences, deep nesting, failure paths |
| 28 | +- **Documentation**: getting-started, architecture, API reference, security evaluation, compliance mapping, CPS specification summary |
| 29 | +- **350 automated tests** across 14 test files with **100% code coverage** enforced in CI |
| 30 | +- **CPS v1.0 specification** shipped with the repo at `specs/cps/` |
| 31 | +- **Apache 2.0 license** with additional patent grant |
| 32 | + |
| 33 | +### Security |
| 34 | + |
| 35 | +- Ed25519 signatures required on every Capsule |
| 36 | +- SHA3-256 chosen over SHA-256 for length-extension resistance |
| 37 | +- Key files created with restrictive umask (no TOCTOU race) |
| 38 | +- ML-DSA-65 uses FIPS 204 standardized name |
| 39 | +- Zero runtime network dependencies (air-gapped operation) |
| 40 | +- `filterwarnings = ["error"]` with zero exemptions — any warning is a test failure |
| 41 | +- 100% test coverage enforced (`fail_under = 100`) |
| 42 | + |
| 43 | +--- |
| 44 | + |
| 45 | +[1.0.0]: https://github.com/quantumpipes/capsule/releases/tag/v1.0.0 |
0 commit comments