stokes 0.2.0__py3-none-any.whl
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.
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: stokes
|
|
3
|
+
Version: 0.2.0
|
|
4
|
+
Summary: Autonomous cross-boundary systems invariant verification engine built on IBM Bob 2.0
|
|
5
|
+
Author: yvliet
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Keywords: systems,verification,ast,linting,cross-boundary,ibm-bob
|
|
8
|
+
Classifier: Development Status :: 4 - Beta
|
|
9
|
+
Classifier: Intended Audience :: Developers
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
14
|
+
Requires-Python: >=3.11
|
|
15
|
+
Description-Content-Type: text/markdown
|
|
16
|
+
Provides-Extra: dev
|
|
17
|
+
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
18
|
+
Requires-Dist: pytest-asyncio>=0.23; extra == "dev"
|
|
19
|
+
Provides-Extra: tree-sitter
|
|
20
|
+
Requires-Dist: tree-sitter>=0.22; extra == "tree-sitter"
|
|
21
|
+
|
|
22
|
+
# Stokes
|
|
23
|
+
|
|
24
|
+
**Autonomous Cross-Boundary Systems Invariant Verification Engine**
|
|
25
|
+
Built on IBM Bob 2.0 | GitHub: [yvliet](https://github.com/yvliet)
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## Overview
|
|
30
|
+
|
|
31
|
+
Stokes is a static analysis and runtime verification engine for detecting cross-boundary invariant violations in polyglot systems. It integrates with IBM Bob 2.0's multi-agent orchestrator to enforce architectural contracts across Rust, Python, SQL, and Protobuf codebases.
|
|
32
|
+
|
|
33
|
+
## Installation
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
pip install stokes
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Requires Python ≥ 3.11.
|
|
40
|
+
|
|
41
|
+
## Quick Start
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
# Scan a workspace for boundary violations
|
|
45
|
+
stokes scan /path/to/workspace
|
|
46
|
+
|
|
47
|
+
# Run a full audit with remediation synthesis
|
|
48
|
+
stokes audit /path/to/workspace
|
|
49
|
+
|
|
50
|
+
# Verify invariants (CI/CD gate — non-zero exit on failure)
|
|
51
|
+
stokes verify --strict
|
|
52
|
+
|
|
53
|
+
# Emit the stokes.lock cryptographic boundary lockfile
|
|
54
|
+
stokes cert --output stokes.lock
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Core Invariants Enforced
|
|
58
|
+
|
|
59
|
+
| Rule | Severity | Description |
|
|
60
|
+
|----------|-------------|-------------|
|
|
61
|
+
| LINT-001 | FATAL ERROR | `system.columns` without `database = currentDatabase()` scoping |
|
|
62
|
+
| LINT-002 | FATAL ERROR | Unbounded ETL loop without `[:MAX_CANONICAL]` guard |
|
|
63
|
+
| LINT-003 | WARNING | Schema mesh broadcast without SHA-256 digest |
|
|
64
|
+
| LINT-004 | FATAL ERROR | `.try_into().unwrap()` on fixed-size stack buffer |
|
|
65
|
+
| LINT-005 | WARNING | Heap allocation on microsecond packet path |
|
|
66
|
+
|
|
67
|
+
## Cardinality Risk Ratio
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
Risk = C_upstream / B_downstream
|
|
71
|
+
|
|
72
|
+
Risk <= 1.0 → INVARIANT SATISFIED
|
|
73
|
+
Risk > 1.0 → FATAL CONTRACT DRIFT
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## Key Contracts
|
|
77
|
+
|
|
78
|
+
- **Wire Protocol**: 4-byte big-endian length-prefixed frames, 16 MB max budget
|
|
79
|
+
- **Float Sanitization**: Reject NaN / ±Infinity / subnormals; clamp to [0.0, 100.0]
|
|
80
|
+
- **Dual-Zone Memory**: MAX_ACTIVE_FEATURES = 200 (Zone 0: slots 0–127 CORE RESERVED, Zone 1: slots 128–199 DYNAMIC ADAPTIVE)
|
|
81
|
+
- **Event Bus**: `asyncio.Queue(maxsize=1024)`, 16.6 ms render tick
|
|
82
|
+
|
|
83
|
+
## License
|
|
84
|
+
|
|
85
|
+
MIT — Copyright © yvliet
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
stokes-0.2.0.dist-info/METADATA,sha256=uEU5apxHIKPnCkQhnzkOnfjOCbquxhJJiu6Lxzh6Gyo,2842
|
|
2
|
+
stokes-0.2.0.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
|
|
3
|
+
stokes-0.2.0.dist-info/entry_points.txt,sha256=1x6B2AIzcbTcBBj-xasLj_LBrQv7oEvst2dqytFQ4oI,55
|
|
4
|
+
stokes-0.2.0.dist-info/top_level.txt,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
5
|
+
stokes-0.2.0.dist-info/RECORD,,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|