matrixscroll 0.2.6__tar.gz → 0.4.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/CHANGELOG.md +13 -0
  2. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/PKG-INFO +148 -17
  3. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/README.md +139 -11
  4. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/ADOPTER_KIT.md +22 -2
  5. matrixscroll-0.4.0/docs/ADOPTION.md +13 -0
  6. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/COMPARISON.md +1 -1
  7. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/FIVE_MINUTES.md +2 -2
  8. matrixscroll-0.4.0/docs/HERO_DEMO.md +45 -0
  9. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/ROADMAP_2026-07.md +2 -2
  10. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/SOFTWARE_PRODUCTS.md +3 -3
  11. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/WHITEPAPER.md +4 -4
  12. matrixscroll-0.4.0/docs/commercial/PLATFORM_PIVOT.md +62 -0
  13. matrixscroll-0.4.0/docs/commercial/SCROLL_GATE_V2.md +47 -0
  14. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/hardware-provider.md +1 -1
  15. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/quickstart-agent.md +1 -1
  16. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/quickstart-claude-code.md +1 -1
  17. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/quickstart-git.md +27 -3
  18. matrixscroll-0.4.0/docs/quickstart-mcp.md +62 -0
  19. matrixscroll-0.4.0/docs/registries-guide.md +51 -0
  20. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/rekor-guac-bridge-design.md +1 -1
  21. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/examples/ci/protected-branch.yml +3 -3
  22. matrixscroll-0.4.0/examples/demo/hero-self-attestation-demo.sh +110 -0
  23. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/__init__.py +1 -1
  24. matrixscroll-0.4.0/matrixscroll/_claim.py +96 -0
  25. matrixscroll-0.4.0/matrixscroll/_payment.py +31 -0
  26. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/cli.py +52 -4
  27. matrixscroll-0.4.0/matrixscroll/cloud/__init__.py +19 -0
  28. matrixscroll-0.4.0/matrixscroll/cloud/client.py +91 -0
  29. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/gate.py +0 -2
  30. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/git.py +8 -5
  31. matrixscroll-0.4.0/matrixscroll/mcp.py +417 -0
  32. matrixscroll-0.4.0/matrixscroll/mcp_core.py +215 -0
  33. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/providers/se050_transport.py +1 -1
  34. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/pyproject.toml +13 -8
  35. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_cli.py +2 -2
  36. matrixscroll-0.4.0/tests/test_mcp_core.py +79 -0
  37. matrixscroll-0.4.0/tests/test_mcp_server.py +114 -0
  38. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_release_metadata.py +2 -2
  39. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/.gitignore +0 -0
  40. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/CONTRIBUTING.md +0 -0
  41. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/LICENSE +0 -0
  42. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/SECURITY.md +0 -0
  43. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/SPEC.md +0 -0
  44. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/controls/agentic_ai_controls.json +0 -0
  45. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/AGENTIC_AI_SECURITY.md +0 -0
  46. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/CI_HARD_GATE.md +0 -0
  47. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/COMMIT_TIME_VS_ARTIFACT_TIME.md +0 -0
  48. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/SE050_POC_SCOPE.md +0 -0
  49. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/SE050_USB_PROTOCOL.md +0 -0
  50. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/delegation-attestation-rfc.md +0 -0
  51. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/superpowers/plans/2026-06-19-ci-action-plan.md +0 -0
  52. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/superpowers/plans/2026-06-19-sdk-refactor-plan.md +0 -0
  53. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/superpowers/specs/2026-06-19-matrixscroll-git-design.md +0 -0
  54. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/yubikey-bridge.md +0 -0
  55. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/docs/yubikey-smoke.md +0 -0
  56. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/examples/agentic_ai_evidence_manifest.json +0 -0
  57. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/examples/agentic_ai_evidence_manifest.signed.json +0 -0
  58. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/examples/commit-envelope.json +0 -0
  59. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/examples/commit-envelope.signed.json +0 -0
  60. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/examples/demo/agent-commit-demo.sh +0 -0
  61. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/examples/demo/generate_signed_examples.py +0 -0
  62. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/examples/release-manifest.json +0 -0
  63. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/examples/release-manifest.signed.json +0 -0
  64. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/examples/trusted-keys-policy.json +0 -0
  65. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/_core.py +0 -0
  66. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/canonical.py +0 -0
  67. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/constants.py +0 -0
  68. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/errors.py +0 -0
  69. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/guac_export.py +0 -0
  70. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/hooks/post-commit +0 -0
  71. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/hooks/pre-push +0 -0
  72. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/manifest.py +0 -0
  73. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/policy.py +0 -0
  74. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/providers/__init__.py +0 -0
  75. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/providers/base.py +0 -0
  76. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/providers/emulated.py +0 -0
  77. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/providers/hardware.py +0 -0
  78. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/providers/registry.py +0 -0
  79. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/providers/tpm.py +0 -0
  80. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/providers/yubikey.py +0 -0
  81. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/py.typed +0 -0
  82. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/matrixscroll/rekor_publish.py +0 -0
  83. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/schemas/commit-envelope.v1.json +0 -0
  84. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/schemas/evidence-pack.v1.json +0 -0
  85. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/schemas/release-manifest.v1.json +0 -0
  86. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/__init__.py +0 -0
  87. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/fixtures/github-gpgsig-commit.txt +0 -0
  88. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_agentic_guidance.py +0 -0
  89. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_canonical.py +0 -0
  90. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_core.py +0 -0
  91. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_gate.py +0 -0
  92. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_git_envelope.py +0 -0
  93. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_guac_rekor.py +0 -0
  94. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_policy.py +0 -0
  95. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_se050_transport.py +0 -0
  96. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_tpm_provider.py +0 -0
  97. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_vectors.py +0 -0
  98. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/tests/test_yubikey_provider.py +0 -0
  99. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/README.md +0 -0
  100. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/_fixture_key.json +0 -0
  101. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/_generate.py +0 -0
  102. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/tampered_algorithm.json +0 -0
  103. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/tampered_device_id.json +0 -0
  104. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/tampered_field.json +0 -0
  105. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/tampered_nested.json +0 -0
  106. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/tampered_public_key.json +0 -0
  107. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/tampered_schema.json +0 -0
  108. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/tampered_signature.json +0 -0
  109. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/unsigned_empty_block.json +0 -0
  110. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/unsigned_no_block.json +0 -0
  111. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/valid_commit_envelope.json +0 -0
  112. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/valid_nested.json +0 -0
  113. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/valid_simple.json +0 -0
  114. {matrixscroll-0.2.6 → matrixscroll-0.4.0}/vectors/valid_unicode.json +0 -0
@@ -4,6 +4,19 @@ All notable changes to the Matrix Scroll Python SDK are documented here. The
4
4
  format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and
5
5
  this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [0.3.0] - 2026-06-28
8
+
9
+ Digital Rain removal and provenance-only SDK surface.
10
+
11
+ ### Removed
12
+ - **Workspace intelligence modules** — deleted unused Digital Rain-era helpers
13
+ (`benchmark`, `brainstorm`, `scanner`, `vault`, radar modules, and related tests).
14
+
15
+ ### Changed
16
+ - **Public copy** — removed Digital Rain funnel language from README, MCP docs,
17
+ and hero demo script; SSX360 remains the hosted control plane reference.
18
+ - **Version pins** — bumped public quickstart and product docs to `0.3.0`.
19
+
7
20
  ## [0.2.6] - 2026-06-21
8
21
 
9
22
  SDK rollout hardening: generic public attribution, SE050 host transport preview,
@@ -1,23 +1,24 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: matrixscroll
3
- Version: 0.2.6
3
+ Version: 0.4.0
4
4
  Summary: Signed provenance for agent-assisted Git commits with offline verification; emulated Ed25519 ships today and the SE050 hardware path remains an optional preview.
5
- Project-URL: Homepage, https://matrixscroll.com
6
- Project-URL: Documentation, https://matrixscroll.com/docs
5
+ Project-URL: Homepage, https://ssx360.com
6
+ Project-URL: Documentation, https://ssx360.com/docs
7
+ Project-URL: Repository, https://github.com/SSX360/matrixscroll
7
8
  Project-URL: Source, https://github.com/SSX360/matrixscroll
8
9
  Project-URL: Issues, https://github.com/SSX360/matrixscroll/issues
9
10
  Project-URL: Specification, https://github.com/SSX360/matrixscroll/blob/main/SPEC.md
10
11
  Project-URL: Whitepaper, https://github.com/SSX360/matrixscroll/blob/main/docs/WHITEPAPER.md
11
- Project-URL: Verifier, https://matrixscroll.com/verify
12
- Project-URL: Compare, https://matrixscroll.com/compare
12
+ Project-URL: Verifier, https://ssx360.com/verify
13
+ Project-URL: Compare, https://ssx360.com/docs
13
14
  Project-URL: Changelog, https://github.com/SSX360/matrixscroll/blob/main/CHANGELOG.md
14
15
  Project-URL: Discussions, https://github.com/SSX360/matrixscroll/discussions
15
16
  Project-URL: Security, https://github.com/SSX360/matrixscroll/blob/main/SECURITY.md
16
17
  Project-URL: GitHub Action, https://github.com/SSX360/matrixscroll-verify-action
17
18
  Project-URL: PyPI Provenance, https://pypi.org/project/matrixscroll/
19
+ Project-URL: Reference Device, https://ssx360.com/hardware
18
20
  Project-URL: Tests, https://github.com/SSX360/matrixscroll/tree/main/tests
19
21
  Project-URL: Public Roadmap, https://github.com/SSX360/matrixscroll/blob/main/docs/ROADMAP_2026-07.md
20
- Project-URL: Reference Device, https://matrixscroll.com/device
21
22
  Author-email: SSX360 <security@matrixscroll.com>
22
23
  License-Expression: Apache-2.0
23
24
  License-File: LICENSE
@@ -44,6 +45,8 @@ Requires-Dist: pytest>=7.4; extra == 'dev'
44
45
  Provides-Extra: git
45
46
  Provides-Extra: hardware
46
47
  Requires-Dist: pyserial>=3.5; extra == 'hardware'
48
+ Provides-Extra: mcp
49
+ Requires-Dist: mcp<2.0.0,>=1.0.0; extra == 'mcp'
47
50
  Provides-Extra: tpm
48
51
  Provides-Extra: yubikey
49
52
  Requires-Dist: python-pkcs11>=0.7; extra == 'yubikey'
@@ -51,7 +54,70 @@ Description-Content-Type: text/markdown
51
54
 
52
55
  # Matrix Scroll
53
56
 
54
- Signed provenance for agent-assisted Git commits with offline verification.
57
+ [![Scroll Gate v2 (hosted)](https://github.com/SSX360/matrixscroll/actions/workflows/provenance-gate.yml/badge.svg)](https://github.com/SSX360/matrixscroll/actions/workflows/provenance-gate.yml)
58
+
59
+ **Signed proof of who — or what — wrote every commit.** Matrix Scroll is the
60
+ open Ed25519 commit-provenance protocol for agent-assisted Git — verified
61
+ offline in CLI, browser, and CI. Hardware (SE050) is an optional preview trust
62
+ upgrade; emulated mode ships today.
63
+
64
+ **Hosted control plane:** identity, billing, and device confirmation live at
65
+ [ssx360.com](https://ssx360.com/). Teams evaluating protected-branch enforcement should
66
+ [book a provenance pilot](https://ssx360.com/contact?intent=pilot);
67
+ Provisioned pilot and team accounts sign in at [ssx360.com/signup](https://ssx360.com/signup).
68
+
69
+ ## Compliance evidence mapping
70
+
71
+ Matrix Scroll **maps to** and **produces evidence for** (never “required by”):
72
+
73
+ - **Five Eyes · Agentic AI (Apr 2026)** — cryptographic attestation that agents
74
+ run expected, unmodified code.
75
+ - **EU AI Act · high-risk traceability** — verifiable commit-time audit artifacts.
76
+ - **US federal SSDF · self-attestation** — evidence packs for supply-chain review.
77
+
78
+ Full matrix: [`controls/agentic_ai_controls.json`](controls/agentic_ai_controls.json)
79
+
80
+ ## Install — MCP server (headline path)
81
+
82
+ Agents sign commits in-loop via the **provenance-only** MCP server:
83
+
84
+ ```json
85
+ {
86
+ "mcpServers": {
87
+ "matrixscroll-mcp": {
88
+ "command": "matrixscroll-mcp",
89
+ "args": []
90
+ }
91
+ }
92
+ }
93
+ ```
94
+
95
+ ```bash
96
+ pip install "matrixscroll[mcp]==0.4.0"
97
+ matrixscroll-mcp # stdio — register in Cursor / Claude Desktop / VS Code
98
+ ```
99
+
100
+ **MCP tools (provenance verbs only):** `create_envelope`, `verify_envelope`,
101
+ `verify_pr_range` (Scroll Gate), `publish_notes`, `status`, `audit_export`.
102
+
103
+ ## Also available — CLI & hooks
104
+
105
+ ```bash
106
+ pip install "matrixscroll==0.4.0"
107
+ matrixscroll hook-install
108
+ export MATRIXSCROLL_ACTOR_TYPE=agent
109
+ export MATRIXSCROLL_TOOL=agent-runner
110
+ git commit -m "feat: agent-assisted change"
111
+ matrixscroll envelope-verify "$(git rev-parse HEAD)"
112
+ ```
113
+
114
+ See [`docs/quickstart-git.md`](docs/quickstart-git.md) and
115
+ [`examples/demo/agent-commit-demo.sh`](examples/demo/agent-commit-demo.sh).
116
+
117
+ ---
118
+
119
+ This repository is the canonical SDK, verifier contract, fixture set, and
120
+ release surface for the product.
55
121
 
56
122
  Matrix Scroll is a cryptographic evidence layer for Git. When an agent, CI
57
123
  workflow, or human operator produces a commit, a signed commit envelope can
@@ -59,25 +125,65 @@ record the actor, tool, and optional bounded scope. Anyone can verify that
59
125
  envelope locally, in CI, or in the browser without trusting the editor session
60
126
  that produced it.
61
127
 
128
+ Keep GitHub Advanced Security, Semgrep, Snyk, branch protection, and artifact
129
+ attestations. Matrix Scroll adds signed commit-time authorship proof before
130
+ merge, and it keeps the same offline verification contract across the CLI,
131
+ browser, CI, and the SE050 preview path.
132
+
62
133
  The reference SDK ships pure Ed25519 over canonical manifest bytes today. The
63
134
  SSX360 / NXP SE050 path is the compatible next trust layer and remains a
64
135
  preview path until device acceptance is complete.
65
136
 
66
137
  ## Honest limits
67
138
 
68
- - Shipping now: PyPI `matrixscroll==0.2.6`, Git post-commit hooks,
139
+ - Shipping now: PyPI `matrixscroll==0.4.0`, Git post-commit hooks,
69
140
  `matrixscroll envelope-verify`, Scroll Gate PR verification, browser
70
141
  verifier, the GitHub Action, and a USB CDC host transport preview for the
71
- SE050 rollout path.
72
- - In progress: RP2350 + SE050 firmware validation, external Ed25519-capable
142
+ SE050 rollout path. Emulated mode is the default evaluation path.
143
+ - In progress: nRF52840 + SE050 firmware validation (AP2 Vault Card PoC), external Ed25519-capable
73
144
  hardware key backends, and transparency-log integrations.
74
145
  - Not: IAM, sandboxing, prompt filtering, or an agent runtime.
75
146
 
76
- ## Quickstart
147
+ ## Where it fits
148
+
149
+ - Scanners and branch protection catch code and policy issues; Matrix Scroll
150
+ records who or what signed the change before push.
151
+ - Hardware keys and build attestations remain complementary roots and downstream
152
+ proofs; Matrix Scroll covers commit-time provenance.
153
+ - The public contract stays pure Ed25519 over canonical manifest bytes,
154
+ whether the signer is emulated today or hardware-backed later.
155
+
156
+ ## Common questions
157
+
158
+ ### What is Matrix Scroll and how does it secure Git?
159
+
160
+ Matrix Scroll is signed commit-time provenance for agent-assisted Git. It
161
+ secures Git by attaching an Ed25519-signed commit envelope to a commit,
162
+ recording the actor, tool, and optional bounded scope, then letting reviewers
163
+ verify that proof offline in the CLI, browser, or CI before merge.
164
+
165
+ ### How do hardware and emulated modes differ in Matrix Scroll?
166
+
167
+ Emulated mode ships today and keeps the signing key on disk with owner-only
168
+ permissions so teams can evaluate the full workflow now. Hardware mode keeps
169
+ the same verifier contract and commit envelope schema, but moves the private
170
+ key into the SE050 secure element so the host cannot export it; that path
171
+ remains preview-only until device acceptance is complete.
172
+
173
+ ### How can I integrate Matrix Scroll into a CI/CD workflow?
174
+
175
+ Install the SDK and hooks in your repo, publish commit envelopes to
176
+ `refs/notes/matrixscroll` before PR review, and use
177
+ `SSX360/matrixscroll-verify-action@v1` to verify the full PR commit range in
178
+ GitHub Actions. Protected branches can then require Matrix Scroll proof
179
+ alongside your existing scanners, branch protection, and build attestations.
180
+
181
+ ## Quickstart (CLI)
77
182
 
78
183
  ```bash
79
- pip install "matrixscroll==0.2.6"
184
+ pip install "matrixscroll==0.4.0"
80
185
  matrixscroll hook-install
186
+ matrixscroll hook-status
81
187
 
82
188
  export MATRIXSCROLL_ACTOR_TYPE=agent
83
189
  export MATRIXSCROLL_TOOL=agent-runner
@@ -102,7 +208,7 @@ See [`docs/quickstart-git.md`](docs/quickstart-git.md) and run
102
208
  head-ref: ${{ github.event.pull_request.head.sha }}
103
209
  base-ref: ${{ github.event.pull_request.base.sha }}
104
210
  source: notes
105
- matrixscroll-version: "0.2.6"
211
+ matrixscroll-version: "0.4.0"
106
212
  require-mode: emulated
107
213
  ```
108
214
 
@@ -122,7 +228,7 @@ git push origin refs/notes/matrixscroll
122
228
  head-ref: ${{ github.event.pull_request.head.sha }}
123
229
  base-ref: ${{ github.event.pull_request.base.sha }}
124
230
  source: notes
125
- matrixscroll-version: "0.2.6"
231
+ matrixscroll-version: "0.4.0"
126
232
  summary-output: provenance-summary.json
127
233
  ```
128
234
 
@@ -130,7 +236,7 @@ See [`docs/quickstart-git.md`](docs/quickstart-git.md) and
130
236
  [`examples/ci/protected-branch.yml`](examples/ci/protected-branch.yml).
131
237
 
132
238
  The `--require-mode`, `--trusted-keys`, and actor or delegation policy checks
133
- are available in the `0.2.x` line; the examples in this README pin `0.2.6`.
239
+ are available in the `0.2.x` line; the examples in this README pin `0.3.0`.
134
240
 
135
241
  ## Why it is different from Sigstore
136
242
 
@@ -154,12 +260,12 @@ when they preserve the same pure Ed25519 byte contract.
154
260
  - GitHub Action: <https://github.com/SSX360/matrixscroll-verify-action>
155
261
  - Agentic AI controls: [`docs/AGENTIC_AI_SECURITY.md`](docs/AGENTIC_AI_SECURITY.md)
156
262
  - Site: <https://matrixscroll.com>
157
- - Reference device path: <https://matrixscroll.com/device/>
263
+ - Reference device path: [AP2 Vault Card hardware](https://ssx360.com/hardware)
158
264
 
159
265
  ## Python API
160
266
 
161
267
  ```bash
162
- pip install "matrixscroll==0.2.6"
268
+ pip install "matrixscroll==0.4.0"
163
269
  ```
164
270
 
165
271
  ```python
@@ -221,6 +327,11 @@ host transport preview and a mock path for CI; real SE050 signing still
221
327
  depends on device firmware validation. External-key backends stay out of the
222
328
  mainline until they can sign the same canonical bytes with Ed25519.
223
329
 
330
+ For rollout order, start with `MATRIXSCROLL_MODE=emulated` for evaluation,
331
+ layer in external Ed25519-capable signers only when they stay verifier
332
+ compatible, and treat `hardware` as the SE050 preview path until device
333
+ acceptance is complete.
334
+
224
335
  ## Compliance levels
225
336
 
226
337
  | Level | Provider | Backed by | Status |
@@ -256,6 +367,21 @@ example bounded-agent evidence manifest at
256
367
  [`examples/agentic_ai_evidence_manifest.json`](examples/agentic_ai_evidence_manifest.json),
257
368
  and executable checks in `tests/test_agentic_guidance.py`.
258
369
 
370
+ ## Model Context Protocol (MCP) Server
371
+
372
+ The MCP server exposes **provenance verbs only**: `create_envelope`, `verify_envelope`,
373
+ `verify_pr_range`, `publish_notes`, `status`, and `audit_export`.
374
+
375
+ Install and register in Cursor / Claude Desktop / VS Code:
376
+
377
+ ```bash
378
+ pip install "matrixscroll[mcp]==0.4.0"
379
+ matrixscroll-mcp # stdio
380
+ ```
381
+
382
+ See the [Install — MCP server](#install--mcp-server-headline-path) section above for
383
+ the recommended `mcp.json` snippet.
384
+
259
385
  ## License
260
386
 
261
387
  - Code: **Apache-2.0** (`LICENSE`).
@@ -265,3 +391,8 @@ and executable checks in `tests/test_agentic_guidance.py`.
265
391
 
266
392
  See [`SECURITY.md`](SECURITY.md). Report vulnerabilities privately to
267
393
  **security@matrixscroll.com** or via a GitHub Security Advisory.
394
+
395
+ ---
396
+
397
+ **Protocol:** https://matrixscroll.com · **Verify:** https://matrixscroll.com/verify/
398
+ **Control plane:** https://ssx360.com · **Pilot:** mission@ssx360.com · **Sign in:** https://ssx360.com/signup
@@ -1,6 +1,69 @@
1
1
  # Matrix Scroll
2
2
 
3
- Signed provenance for agent-assisted Git commits with offline verification.
3
+ [![Scroll Gate v2 (hosted)](https://github.com/SSX360/matrixscroll/actions/workflows/provenance-gate.yml/badge.svg)](https://github.com/SSX360/matrixscroll/actions/workflows/provenance-gate.yml)
4
+
5
+ **Signed proof of who — or what — wrote every commit.** Matrix Scroll is the
6
+ open Ed25519 commit-provenance protocol for agent-assisted Git — verified
7
+ offline in CLI, browser, and CI. Hardware (SE050) is an optional preview trust
8
+ upgrade; emulated mode ships today.
9
+
10
+ **Hosted control plane:** identity, billing, and device confirmation live at
11
+ [ssx360.com](https://ssx360.com/). Teams evaluating protected-branch enforcement should
12
+ [book a provenance pilot](https://ssx360.com/contact?intent=pilot);
13
+ Provisioned pilot and team accounts sign in at [ssx360.com/signup](https://ssx360.com/signup).
14
+
15
+ ## Compliance evidence mapping
16
+
17
+ Matrix Scroll **maps to** and **produces evidence for** (never “required by”):
18
+
19
+ - **Five Eyes · Agentic AI (Apr 2026)** — cryptographic attestation that agents
20
+ run expected, unmodified code.
21
+ - **EU AI Act · high-risk traceability** — verifiable commit-time audit artifacts.
22
+ - **US federal SSDF · self-attestation** — evidence packs for supply-chain review.
23
+
24
+ Full matrix: [`controls/agentic_ai_controls.json`](controls/agentic_ai_controls.json)
25
+
26
+ ## Install — MCP server (headline path)
27
+
28
+ Agents sign commits in-loop via the **provenance-only** MCP server:
29
+
30
+ ```json
31
+ {
32
+ "mcpServers": {
33
+ "matrixscroll-mcp": {
34
+ "command": "matrixscroll-mcp",
35
+ "args": []
36
+ }
37
+ }
38
+ }
39
+ ```
40
+
41
+ ```bash
42
+ pip install "matrixscroll[mcp]==0.4.0"
43
+ matrixscroll-mcp # stdio — register in Cursor / Claude Desktop / VS Code
44
+ ```
45
+
46
+ **MCP tools (provenance verbs only):** `create_envelope`, `verify_envelope`,
47
+ `verify_pr_range` (Scroll Gate), `publish_notes`, `status`, `audit_export`.
48
+
49
+ ## Also available — CLI & hooks
50
+
51
+ ```bash
52
+ pip install "matrixscroll==0.4.0"
53
+ matrixscroll hook-install
54
+ export MATRIXSCROLL_ACTOR_TYPE=agent
55
+ export MATRIXSCROLL_TOOL=agent-runner
56
+ git commit -m "feat: agent-assisted change"
57
+ matrixscroll envelope-verify "$(git rev-parse HEAD)"
58
+ ```
59
+
60
+ See [`docs/quickstart-git.md`](docs/quickstart-git.md) and
61
+ [`examples/demo/agent-commit-demo.sh`](examples/demo/agent-commit-demo.sh).
62
+
63
+ ---
64
+
65
+ This repository is the canonical SDK, verifier contract, fixture set, and
66
+ release surface for the product.
4
67
 
5
68
  Matrix Scroll is a cryptographic evidence layer for Git. When an agent, CI
6
69
  workflow, or human operator produces a commit, a signed commit envelope can
@@ -8,25 +71,65 @@ record the actor, tool, and optional bounded scope. Anyone can verify that
8
71
  envelope locally, in CI, or in the browser without trusting the editor session
9
72
  that produced it.
10
73
 
74
+ Keep GitHub Advanced Security, Semgrep, Snyk, branch protection, and artifact
75
+ attestations. Matrix Scroll adds signed commit-time authorship proof before
76
+ merge, and it keeps the same offline verification contract across the CLI,
77
+ browser, CI, and the SE050 preview path.
78
+
11
79
  The reference SDK ships pure Ed25519 over canonical manifest bytes today. The
12
80
  SSX360 / NXP SE050 path is the compatible next trust layer and remains a
13
81
  preview path until device acceptance is complete.
14
82
 
15
83
  ## Honest limits
16
84
 
17
- - Shipping now: PyPI `matrixscroll==0.2.6`, Git post-commit hooks,
85
+ - Shipping now: PyPI `matrixscroll==0.4.0`, Git post-commit hooks,
18
86
  `matrixscroll envelope-verify`, Scroll Gate PR verification, browser
19
87
  verifier, the GitHub Action, and a USB CDC host transport preview for the
20
- SE050 rollout path.
21
- - In progress: RP2350 + SE050 firmware validation, external Ed25519-capable
88
+ SE050 rollout path. Emulated mode is the default evaluation path.
89
+ - In progress: nRF52840 + SE050 firmware validation (AP2 Vault Card PoC), external Ed25519-capable
22
90
  hardware key backends, and transparency-log integrations.
23
91
  - Not: IAM, sandboxing, prompt filtering, or an agent runtime.
24
92
 
25
- ## Quickstart
93
+ ## Where it fits
94
+
95
+ - Scanners and branch protection catch code and policy issues; Matrix Scroll
96
+ records who or what signed the change before push.
97
+ - Hardware keys and build attestations remain complementary roots and downstream
98
+ proofs; Matrix Scroll covers commit-time provenance.
99
+ - The public contract stays pure Ed25519 over canonical manifest bytes,
100
+ whether the signer is emulated today or hardware-backed later.
101
+
102
+ ## Common questions
103
+
104
+ ### What is Matrix Scroll and how does it secure Git?
105
+
106
+ Matrix Scroll is signed commit-time provenance for agent-assisted Git. It
107
+ secures Git by attaching an Ed25519-signed commit envelope to a commit,
108
+ recording the actor, tool, and optional bounded scope, then letting reviewers
109
+ verify that proof offline in the CLI, browser, or CI before merge.
110
+
111
+ ### How do hardware and emulated modes differ in Matrix Scroll?
112
+
113
+ Emulated mode ships today and keeps the signing key on disk with owner-only
114
+ permissions so teams can evaluate the full workflow now. Hardware mode keeps
115
+ the same verifier contract and commit envelope schema, but moves the private
116
+ key into the SE050 secure element so the host cannot export it; that path
117
+ remains preview-only until device acceptance is complete.
118
+
119
+ ### How can I integrate Matrix Scroll into a CI/CD workflow?
120
+
121
+ Install the SDK and hooks in your repo, publish commit envelopes to
122
+ `refs/notes/matrixscroll` before PR review, and use
123
+ `SSX360/matrixscroll-verify-action@v1` to verify the full PR commit range in
124
+ GitHub Actions. Protected branches can then require Matrix Scroll proof
125
+ alongside your existing scanners, branch protection, and build attestations.
126
+
127
+ ## Quickstart (CLI)
26
128
 
27
129
  ```bash
28
- pip install "matrixscroll==0.2.6"
130
+ pip install "matrixscroll==0.4.0"
29
131
  matrixscroll hook-install
132
+ matrixscroll hook-status
30
133
 
31
134
  export MATRIXSCROLL_ACTOR_TYPE=agent
32
135
  export MATRIXSCROLL_TOOL=agent-runner
@@ -51,7 +154,7 @@ See [`docs/quickstart-git.md`](docs/quickstart-git.md) and run
51
154
  head-ref: ${{ github.event.pull_request.head.sha }}
52
155
  base-ref: ${{ github.event.pull_request.base.sha }}
53
156
  source: notes
54
- matrixscroll-version: "0.2.6"
157
+ matrixscroll-version: "0.4.0"
55
158
  require-mode: emulated
56
159
  ```
57
160
 
@@ -71,7 +174,7 @@ git push origin refs/notes/matrixscroll
71
174
  head-ref: ${{ github.event.pull_request.head.sha }}
72
175
  base-ref: ${{ github.event.pull_request.base.sha }}
73
176
  source: notes
74
- matrixscroll-version: "0.2.6"
177
+ matrixscroll-version: "0.4.0"
75
178
  summary-output: provenance-summary.json
76
179
  ```
77
180
 
@@ -79,7 +182,7 @@ See [`docs/quickstart-git.md`](docs/quickstart-git.md) and
79
182
  [`examples/ci/protected-branch.yml`](examples/ci/protected-branch.yml).
80
183
 
81
184
  The `--require-mode`, `--trusted-keys`, and actor or delegation policy checks
82
- are available in the `0.2.x` line; the examples in this README pin `0.2.6`.
185
+ are available in the `0.2.x` line; the examples in this README pin `0.3.0`.
83
186
 
84
187
  ## Why it is different from Sigstore
85
188
 
@@ -103,12 +206,12 @@ when they preserve the same pure Ed25519 byte contract.
103
206
  - GitHub Action: <https://github.com/SSX360/matrixscroll-verify-action>
104
207
  - Agentic AI controls: [`docs/AGENTIC_AI_SECURITY.md`](docs/AGENTIC_AI_SECURITY.md)
105
208
  - Site: <https://matrixscroll.com>
106
- - Reference device path: <https://matrixscroll.com/device/>
209
+ - Reference device path: [AP2 Vault Card hardware](https://ssx360.com/hardware)
107
210
 
108
211
  ## Python API
109
212
 
110
213
  ```bash
111
- pip install "matrixscroll==0.2.6"
214
+ pip install "matrixscroll==0.4.0"
112
215
  ```
113
216
 
114
217
  ```python
@@ -170,6 +273,11 @@ host transport preview and a mock path for CI; real SE050 signing still
170
273
  depends on device firmware validation. External-key backends stay out of the
171
274
  mainline until they can sign the same canonical bytes with Ed25519.
172
275
 
276
+ For rollout order, start with `MATRIXSCROLL_MODE=emulated` for evaluation,
277
+ layer in external Ed25519-capable signers only when they stay verifier
278
+ compatible, and treat `hardware` as the SE050 preview path until device
279
+ acceptance is complete.
280
+
173
281
  ## Compliance levels
174
282
 
175
283
  | Level | Provider | Backed by | Status |
@@ -205,6 +313,21 @@ example bounded-agent evidence manifest at
205
313
  [`examples/agentic_ai_evidence_manifest.json`](examples/agentic_ai_evidence_manifest.json),
206
314
  and executable checks in `tests/test_agentic_guidance.py`.
207
315
 
316
+ ## Model Context Protocol (MCP) Server
317
+
318
+ The MCP server exposes **provenance verbs only**: `create_envelope`, `verify_envelope`,
319
+ `verify_pr_range`, `publish_notes`, `status`, and `audit_export`.
320
+
321
+ Install and register in Cursor / Claude Desktop / VS Code:
322
+
323
+ ```bash
324
+ pip install "matrixscroll[mcp]==0.4.0"
325
+ matrixscroll-mcp # stdio
326
+ ```
327
+
328
+ See the [Install — MCP server](#install--mcp-server-headline-path) section above for
329
+ the recommended `mcp.json` snippet.
330
+
208
331
  ## License
209
332
 
210
333
  - Code: **Apache-2.0** (`LICENSE`).
@@ -214,3 +337,8 @@ and executable checks in `tests/test_agentic_guidance.py`.
214
337
 
215
338
  See [`SECURITY.md`](SECURITY.md). Report vulnerabilities privately to
216
339
  **security@matrixscroll.com** or via a GitHub Security Advisory.
340
+
341
+ ---
342
+
343
+ **Protocol:** https://matrixscroll.com · **Verify:** https://matrixscroll.com/verify/
344
+ **Control plane:** https://ssx360.com · **Pilot:** mission@ssx360.com · **Sign in:** https://ssx360.com/signup
@@ -11,7 +11,7 @@ who want to trial Matrix Scroll without changing their core workflow.
11
11
 
12
12
  ## 15-minute pilot
13
13
 
14
- 1. Install `matrixscroll==0.2.6` in one repo.
14
+ 1. Install `matrixscroll==0.3.0` in one repo.
15
15
  2. Run `matrixscroll hook-install`.
16
16
  3. Make one agent-assisted commit and verify it locally.
17
17
  4. Publish notes with `matrixscroll envelope-publish-notes`.
@@ -38,7 +38,7 @@ jobs:
38
38
  head-ref: ${{ github.event.pull_request.head.sha }}
39
39
  base-ref: ${{ github.event.pull_request.base.sha }}
40
40
  source: notes
41
- matrixscroll-version: "0.2.6"
41
+ matrixscroll-version: "0.3.0"
42
42
  require-mode: emulated
43
43
  ```
44
44
 
@@ -61,6 +61,26 @@ jobs:
61
61
  - Matrix Scroll does not replace IAM or sandboxing
62
62
  - Matrix Scroll does not replace release-signing or artifact attestations
63
63
 
64
+ ## Clean-machine proof status
65
+
66
+ Recorded on `2026-06-21` against the pinned public flow:
67
+ `pip install "matrixscroll==0.3.0"` -> `matrixscroll hook-install` ->
68
+ `matrixscroll hook-status` -> first agent-assisted commit ->
69
+ `matrixscroll envelope-verify`.
70
+
71
+ Hosted source of truth: GitHub Actions run
72
+ `27904509800` on `codex/trust-layer-rollout`.
73
+
74
+ | Platform | Result | Notes |
75
+ | --- | --- | --- |
76
+ | Windows | PASS | GitHub-hosted smoke completed with `1.0s` to first verified commit. Local temp-venv proof also passed in `8.7s`. |
77
+ | Ubuntu | PASS | GitHub-hosted smoke completed with `0.4s` to first verified commit. |
78
+ | macOS | PASS | GitHub-hosted smoke completed with `0.3s` to first verified commit. |
79
+
80
+ Local environment note: the workspace WSL image is still missing `python3-pip`
81
+ and `python3-venv`, so local Ubuntu reproduction remains under-provisioned even
82
+ though launch evidence is now covered by the hosted workflow.
83
+
64
84
  ## Public follow-through
65
85
 
66
86
  If a pilot works, publish one of these:
@@ -0,0 +1,13 @@
1
+ # Adoption signals (internal)
2
+
3
+ Track outbound and registry traction while rolling out. Not published on the public README.
4
+
5
+ | Signal | Counter |
6
+ |--------|---------|
7
+ | PyPI `matrixscroll` | [![PyPI downloads](https://img.shields.io/pypi/dm/matrixscroll)](https://pypi.org/project/matrixscroll/) |
8
+ | PyPI `[mcp]` extra | [![PyPI MCP downloads](https://img.shields.io/pypi/dm/matrixscroll?label=mcp%20extra)](https://pypi.org/project/matrixscroll/) |
9
+ | GitHub stars | [![GitHub stars](https://img.shields.io/github/stars/SSX360/matrixscroll?style=social)](https://github.com/SSX360/matrixscroll/stargazers) |
10
+ | Scroll Gate Action | [![GitHub Action](https://img.shields.io/github/stars/SSX360/matrixscroll-verify-action?style=social)](https://github.com/SSX360/matrixscroll-verify-action) |
11
+ | Glama MCP registry | [matrixscroll on Glama](https://glama.ai/mcp/servers/SSX360/matrixscroll) |
12
+
13
+ Update this file during GTM reviews; keep badges out of user-facing install docs.
@@ -60,7 +60,7 @@ No single competitor listed above combines all four today.
60
60
  - **CI gate:** Scroll Gate ships in **0.2.3+** — PR commit-range verification via `envelope-verify-range`, git notes transport (`refs/notes/matrixscroll`), and filesystem bundles. [`matrixscroll-verify-action`](https://github.com/SSX360/matrixscroll-verify-action) supports `head-ref`/`base-ref` range mode with agent/human counts.
61
61
  - **Owner/delegation attestation:** Optional `delegation` block in commit envelope schema (**0.2.4+**); see [`delegation-attestation-rfc.md`](delegation-attestation-rfc.md). Alien still leads on OIDC/DPoP owner binding.
62
62
  - **Multi-agent commits:** Multiple actors in one envelope — on the roadmap.
63
- - **Rekor / GUAC export:** Dry-run CLI ships in **0.2.6** (`envelope-publish-rekor`, `envelope-export-guac`); full Rekor upload integration still in progress.
63
+ - **Rekor / GUAC export:** Dry-run CLI ships in **0.3.0** (`envelope-publish-rekor`, `envelope-export-guac`); full Rekor upload integration still in progress.
64
64
  - **Hardware:** SSX360 reference device and Scroll Key retail are **in progress**; L1 emulated key is what you can use now.
65
65
 
66
66
  ## When to use what
@@ -12,7 +12,7 @@ five-minute path from `pip install` to a verifiable commit envelope.
12
12
  ## 1. Install the SDK
13
13
 
14
14
  ```bash
15
- pip install "matrixscroll==0.2.6"
15
+ pip install "matrixscroll==0.3.0"
16
16
  matrixscroll hook-install
17
17
  matrixscroll hook-status
18
18
  ```
@@ -61,7 +61,7 @@ git push origin refs/notes/matrixscroll
61
61
  head-ref: ${{ github.event.pull_request.head.sha }}
62
62
  base-ref: ${{ github.event.pull_request.base.sha }}
63
63
  source: notes
64
- matrixscroll-version: "0.2.6"
64
+ matrixscroll-version: "0.3.0"
65
65
  require-mode: emulated
66
66
  ```
67
67
 
@@ -0,0 +1,45 @@
1
+ # Hero demo script (60–90 seconds)
2
+
3
+ Record this flow once. It is the highest-value GTM asset for the quarter.
4
+
5
+ ## Cast
6
+
7
+ - **Agent:** Cursor or Claude Code in a bound workspace
8
+ - **Producer:** `matrixscroll` hooks / MCP `create_envelope`
9
+ - **Enforcer:** Scroll Gate (`SSX360/matrixscroll-verify-action@v1`)
10
+ - **Verifier:** [matrixscroll.com/verify/](https://matrixscroll.com/verify/) (offline, no portal trust)
11
+
12
+ ## Beat sheet
13
+
14
+ | Time | Screen | Narration hook |
15
+ |------|--------|----------------|
16
+ | 0:00 | Terminal / IDE | "An agent just committed. Who — or what — wrote it?" |
17
+ | 0:10 | `git log -1` + hook output | "Matrix Scroll signs an Ed25519 envelope at commit time — actor, tool, scope." |
18
+ | 0:25 | Envelope JSON (redacted keys OK) | "This is the proof object. Repo contents never left the machine." |
19
+ | 0:35 | GitHub PR + Scroll Gate check | "Scroll Gate verifies the full PR range — signed vs unsigned, trusted vs untrusted." |
20
+ | 0:50 | Browser verifier paste | "Anyone verifies offline at matrixscroll.com/verify — no SSX360 login required." |
21
+ | 1:05 | SSX360 portal flash (optional) | "Identity, billing, and audit live on the control plane — verification does not." |
22
+ | 1:15 | CTA slate | "Verify → Install → Pilot." |
23
+
24
+ ## Commands (copy-paste)
25
+
26
+ ```bash
27
+ export MATRIXSCROLL_ACTOR_TYPE=agent
28
+ export MATRIXSCROLL_TOOL=cursor
29
+ git commit -m "feat: demo agent change"
30
+ matrixscroll envelope-verify "$(git rev-parse HEAD)"
31
+ matrixscroll envelope-publish-notes --base origin/main --head HEAD
32
+ git push origin refs/notes/matrixscroll
33
+ ```
34
+
35
+ Open PR → show **Scroll Gate** check green → paste envelope into browser verifier.
36
+
37
+ ## Do not say
38
+
39
+ - "Required by" / "mandated" / regulation names as requirements
40
+ - Repo intelligence / scanner as the lead story
41
+
42
+ ## Do say
43
+
44
+ - "Maps to" / "produces evidence for" compliance frameworks
45
+ - "Signed before merge" / "offline-verifiable" / "Scroll Gate"
@@ -8,13 +8,13 @@ what ships now before widening the story.
8
8
  ## Baseline on June 21, 2026
9
9
 
10
10
  - GitHub: early public repo, product-first docs, and offline verification
11
- - Current public release target: `matrixscroll==0.2.6`
11
+ - Current public release target: `matrixscroll==0.3.0`
12
12
  - Public trust contract: pure Ed25519 over canonical manifest bytes
13
13
  - Hardware path: SSX360 SE050 reference implementation in progress
14
14
 
15
15
  ## Next 7 days
16
16
 
17
- - cut and publish `0.2.6` without widening the manifest or verify surface
17
+ - cut and publish `0.3.0` without widening the manifest or verify surface
18
18
  - make the GitHub Action a real public proof surface
19
19
  - align site, README, action docs, and PyPI around one install flow
20
20
  - remove broken links and stale release drift from public copy