aetherruntime-arch 2.0.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.
- aetherruntime/__init__.py +314 -0
- aetherruntime/__version__.py +1 -0
- aetherruntime/cli.py +306 -0
- aetherruntime/containment/__init__.py +39 -0
- aetherruntime/containment/isolation.py +253 -0
- aetherruntime/containment/policy.py +273 -0
- aetherruntime/detection/__init__.py +35 -0
- aetherruntime/detection/alert.py +190 -0
- aetherruntime/detection/classifier.py +298 -0
- aetherruntime/halt/__init__.py +37 -0
- aetherruntime/halt/order.py +248 -0
- aetherruntime/halt/quorum.py +280 -0
- aetherruntime/models.py +489 -0
- aetherruntime/monitoring/__init__.py +33 -0
- aetherruntime/monitoring/baseline.py +282 -0
- aetherruntime/monitoring/telemetry.py +235 -0
- aetherruntime/py.typed +0 -0
- aetherruntime/recovery/__init__.py +37 -0
- aetherruntime/recovery/replay.py +271 -0
- aetherruntime/recovery/snapshot.py +199 -0
- aetherruntime/simulation/__init__.py +37 -0
- aetherruntime/simulation/network.py +216 -0
- aetherruntime/simulation/node.py +341 -0
- aetherruntime/simulation/testbed.py +262 -0
- aetherruntime_arch-2.0.0.dist-info/METADATA +748 -0
- aetherruntime_arch-2.0.0.dist-info/RECORD +30 -0
- aetherruntime_arch-2.0.0.dist-info/WHEEL +5 -0
- aetherruntime_arch-2.0.0.dist-info/entry_points.txt +2 -0
- aetherruntime_arch-2.0.0.dist-info/licenses/LICENSE +26 -0
- aetherruntime_arch-2.0.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,748 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: aetherruntime-arch
|
|
3
|
+
Version: 2.0.0
|
|
4
|
+
Summary: Reference implementation of the falsification-first runtime assurance architecture for multi-agent software ecosystems
|
|
5
|
+
Author-email: Samir Baladi <gitdeeper@gmail.com>
|
|
6
|
+
Maintainer-email: Samir Baladi <gitdeeper@gmail.com>
|
|
7
|
+
License-Expression: MIT
|
|
8
|
+
Project-URL: Homepage, https://aetherruntime.netlify.app
|
|
9
|
+
Project-URL: Documentation, https://aetherruntime.netlify.app/documentation.html
|
|
10
|
+
Project-URL: Repository, https://github.com/gitdeeper15/aetherruntime
|
|
11
|
+
Project-URL: Bug Tracker, https://github.com/gitdeeper15/aetherruntime/issues
|
|
12
|
+
Project-URL: Research Paper, https://doi.org/10.5281/zenodo.24078477
|
|
13
|
+
Project-URL: Zenodo, https://doi.org/10.5281/zenodo.24078477
|
|
14
|
+
Project-URL: Figshare, https://doi.org/10.6084/m9.figshare.34955746
|
|
15
|
+
Project-URL: OSF, https://doi.org/10.17605/OSF.IO/KZU7P
|
|
16
|
+
Project-URL: ORCID, https://orcid.org/0009-0003-8903-0029
|
|
17
|
+
Project-URL: Related Work (AetherGit), https://doi.org/10.5281/zenodo.23966896
|
|
18
|
+
Project-URL: Related Work (AetherFlow), https://doi.org/10.5281/zenodo.23979129
|
|
19
|
+
Project-URL: Related Work (AetherProof), https://doi.org/10.5281/zenodo.24013124
|
|
20
|
+
Project-URL: Related Work (AetherMesh), https://doi.org/10.5281/zenodo.24038038
|
|
21
|
+
Project-URL: Related Work (AetherGovern), https://doi.org/10.5281/zenodo.24054524
|
|
22
|
+
Keywords: runtime-assurance,monitoring,anomaly-detection,containment,halt,recovery,multi-agent-systems,falsification,decentralized-systems,aether-family
|
|
23
|
+
Classifier: Development Status :: 4 - Beta
|
|
24
|
+
Classifier: Intended Audience :: Science/Research
|
|
25
|
+
Classifier: Operating System :: OS Independent
|
|
26
|
+
Classifier: Programming Language :: Python :: 3
|
|
27
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
28
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
29
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
30
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
31
|
+
Classifier: Topic :: Scientific/Engineering
|
|
32
|
+
Classifier: Topic :: System :: Distributed Computing
|
|
33
|
+
Requires-Python: >=3.9
|
|
34
|
+
Description-Content-Type: text/markdown
|
|
35
|
+
License-File: LICENSE
|
|
36
|
+
Requires-Dist: cryptography>=41.0
|
|
37
|
+
Provides-Extra: dev
|
|
38
|
+
Requires-Dist: pytest>=7.0; extra == "dev"
|
|
39
|
+
Requires-Dist: pytest-cov>=4.0; extra == "dev"
|
|
40
|
+
Requires-Dist: mypy>=1.0; extra == "dev"
|
|
41
|
+
Requires-Dist: build>=1.0; extra == "dev"
|
|
42
|
+
Requires-Dist: twine>=5.0; extra == "dev"
|
|
43
|
+
Dynamic: license-file
|
|
44
|
+
|
|
45
|
+
<div align="center">
|
|
46
|
+
|
|
47
|
+
# ๐ก๏ธ AetherRuntime
|
|
48
|
+
|
|
49
|
+
### A Falsification-First Investigation of Runtime Assurance in the Aether Family
|
|
50
|
+
|
|
51
|
+
*Monitoring, Detection, Containment, and Recovery in Multi-Agent Software Ecosystems*
|
|
52
|
+
|
|
53
|
+
<br>
|
|
54
|
+
|
|
55
|
+
[](https://doi.org/10.5281/zenodo.24078477)
|
|
56
|
+
[](https://doi.org/10.6084/m9.figshare.34955746)
|
|
57
|
+
[](LICENSE)
|
|
58
|
+
[](https://orcid.org/0009-0003-8903-0029)
|
|
59
|
+
[](https://github.com/gitdeeper15/aetherruntime/releases/tag/v2.0.0)
|
|
60
|
+
[](https://python.org)
|
|
61
|
+
|
|
62
|
+
[](https://pypi.org/project/aetherruntime-arch/)
|
|
63
|
+
[](tests/)
|
|
64
|
+
[](experiments/)
|
|
65
|
+
|
|
66
|
+
[](https://doi.org/10.5281/zenodo.24078477)
|
|
67
|
+
[](https://doi.org/10.6084/m9.figshare.34955746)
|
|
68
|
+
[](https://doi.org/10.17605/OSF.IO/KZU7P)
|
|
69
|
+
[](https://doi.org/10.5281/zenodo.24078477)
|
|
70
|
+
[](https://aether-runtime.netlify.app)
|
|
71
|
+
[](https://aether-runtime.netlify.app)
|
|
72
|
+
|
|
73
|
+
<br>
|
|
74
|
+
|
|
75
|
+
**[๐ Paper (Zenodo)](https://doi.org/10.5281/zenodo.24078477)** ยท
|
|
76
|
+
**[๐ Preprint (Figshare)](https://doi.org/10.6084/m9.figshare.34955746)** ยท
|
|
77
|
+
**[๐ Website](https://aether-runtime.netlify.app)** ยท
|
|
78
|
+
**[๐ฆ Releases](https://github.com/gitdeeper15/aetherruntime/releases)** ยท
|
|
79
|
+
**[๐ PyPI](https://pypi.org/project/aetherruntime-arch/)** ยท
|
|
80
|
+
**[โ๏ธ Installation](#๏ธ-installation)** ยท
|
|
81
|
+
**[๐ Citation](#-citation)**
|
|
82
|
+
|
|
83
|
+
</div>
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
> [!WARNING]
|
|
88
|
+
> **Status: v2.0.0 โ Reference Implementation (preliminary results).**
|
|
89
|
+
> A reference implementation is built (`src/aetherruntime/`, 16 modules, 60 tests) and 3 experiments are completed.
|
|
90
|
+
> **Experiments use simulated data; no real-world deployment is evaluated.**
|
|
91
|
+
> Propositions P1โP2 are **proof sketches**, not machine-checked; they hold only under assumptions A1โA6 (inherited from [AetherMesh](https://doi.org/10.5281/zenodo.24038038)).
|
|
92
|
+
> The v0.1.0 hypothesis (F1โF5) is **not falsified** by the implementation or the experiments, but it is also **not confirmed**.
|
|
93
|
+
> See [Threats and Limitations](#๏ธ-threats-and-limitations) and the [Research Status Statement](#-research-status-statement).
|
|
94
|
+
|
|
95
|
+
> *"AetherRuntime is a candidate, not a result."*
|
|
96
|
+
|
|
97
|
+
> *"The evaluation design here is an invitation to such evaluation, not a substitute for it."*
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## ๐ Table of Contents
|
|
102
|
+
|
|
103
|
+
- [Overview](#-overview)
|
|
104
|
+
- [v2.0.0 at a Glance](#-v200-at-a-glance)
|
|
105
|
+
- [Installation](#๏ธ-installation)
|
|
106
|
+
- [The Central Question](#-the-central-question)
|
|
107
|
+
- [The Six Functional Dimensions](#๏ธ-the-six-functional-dimensions)
|
|
108
|
+
- [The Falsification-First Methodology](#-the-falsification-first-methodology)
|
|
109
|
+
- [Failure Conditions F1โF5](#-failure-conditions-f1f5)
|
|
110
|
+
- [The Three Candidate Capabilities](#-the-three-candidate-capabilities)
|
|
111
|
+
- [AetherRuntime: Architecture](#๏ธ-aetherruntime-architecture)
|
|
112
|
+
- [Propositions](#-propositions)
|
|
113
|
+
- [Interfaces with the Aether Family](#-interfaces-with-the-aether-family)
|
|
114
|
+
- [Evaluation Design and v2.0.0 Results](#-evaluation-design-and-v200-results)
|
|
115
|
+
- [Threats and Limitations](#๏ธ-threats-and-limitations)
|
|
116
|
+
- [Research Status Statement](#-research-status-statement)
|
|
117
|
+
- [Platforms & Mirrors](#-platforms--mirrors)
|
|
118
|
+
- [Project Structure](#๏ธ-project-structure)
|
|
119
|
+
- [Version History](#-version-history)
|
|
120
|
+
- [Citation](#-citation)
|
|
121
|
+
- [Author](#-author)
|
|
122
|
+
- [License](#๏ธ-license)
|
|
123
|
+
|
|
124
|
+
---
|
|
125
|
+
|
|
126
|
+
## ๐ญ Overview
|
|
127
|
+
|
|
128
|
+
**AetherRuntime** is the **sixth functional dimension** (provisional) of the Aether family โ a candidate architecture for **monitoring, detection, containment, halt, and recovery** of running agents in multi-agent software ecosystems.
|
|
129
|
+
|
|
130
|
+
The Aether family currently comprises **five foundational dimensions**, each published as a preprint on Zenodo (**not peer-reviewed**):
|
|
131
|
+
|
|
132
|
+
| Dimension | Focus | Question |
|
|
133
|
+
|---|---|---|
|
|
134
|
+
| **AetherGit** | Storage and versioning | How are changes stored and versioned? |
|
|
135
|
+
| **AetherFlow** | Integration and operational verification | How are changes integrated and verified? |
|
|
136
|
+
| **AetherProof** | Specification and structured evidence | How is correctness proven? |
|
|
137
|
+
| **AetherMesh** | Distribution and eventual consistency | How is state synchronized without a central coordinator? |
|
|
138
|
+
| **AetherGovern** | Authority and policy | Who is authorized to do what, under which policy? |
|
|
139
|
+
|
|
140
|
+
AetherRuntime asks whether a **sixth dimension** is needed:
|
|
141
|
+
|
|
142
|
+
> **Are agents behaving acceptably while running, and how are they halted or isolated when they are not?**
|
|
143
|
+
|
|
144
|
+
The investigation follows a **falsification-first methodology**: before describing the candidate, it states **five failure conditions (F1โF5)** whose satisfaction would show that the candidate does not deserve to exist as a separate dimension.
|
|
145
|
+
|
|
146
|
+
| Release | What it adds |
|
|
147
|
+
|---|---|
|
|
148
|
+
| **v0.1.0** | The hypothesis and the falsification-first methodology (paper) |
|
|
149
|
+
| **v2.0.0** | Reference implementation (`src/aetherruntime/`): 16 modules, 60 tests, 3 reproducible experiments |
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## ๐ v2.0.0 at a Glance
|
|
154
|
+
|
|
155
|
+
| Dimension | Status |
|
|
156
|
+
|---|---|
|
|
157
|
+
| Manuscript (v0.1.0) | Complete (33 pages) |
|
|
158
|
+
| Definitions / Propositions / Layers | 4 / 2 (proof sketches) / 5 |
|
|
159
|
+
| Implementation | โ
Built (`src/aetherruntime/`, 16 modules) |
|
|
160
|
+
| Tests | โ
60 passed |
|
|
161
|
+
| Experiments | โ
3/3 completed (simulated data) |
|
|
162
|
+
| PyPI package | โ
Published |
|
|
163
|
+
| Real-world deployment | โ Not evaluated |
|
|
164
|
+
| Causal claims | None (argument only) |
|
|
165
|
+
|
|
166
|
+
<p align="center">
|
|
167
|
+
<img src="docs/figures/Fig1_Six_Dimensions.png"
|
|
168
|
+
alt="AetherRuntime โ The Six Functional Dimensions of the Aether Family"
|
|
169
|
+
width="100%">
|
|
170
|
+
</p>
|
|
171
|
+
|
|
172
|
+
<p align="center">
|
|
173
|
+
<em>Figure 1 โ The Six Functional Dimensions of the Aether Family (AetherGit, AetherFlow, AetherProof, AetherMesh, AetherGovern, and the proposed hypothesis AetherRuntime). The sixth dimension is a hypothesis under investigation, not a confirmed dimension.</em>
|
|
174
|
+
</p>
|
|
175
|
+
|
|
176
|
+
### Contributions to the Investigation
|
|
177
|
+
|
|
178
|
+
| # | Contribution | Kind |
|
|
179
|
+
|:-:|---|---|
|
|
180
|
+
| 1 | A falsification-first procedure with five failure conditions and a decision rule, stated before the candidate is described | Methodology |
|
|
181
|
+
| 2 | A comparison of three candidate capabilities: orchestration, governance, and runtime assurance | Analysis |
|
|
182
|
+
| 3 | A hypothesized five-layer runtime architecture (monitoring, detection, containment, halt, recovery) | Specification (hypothesis) |
|
|
183
|
+
| 4 | Two propositions with proof sketches bearing directly on F4: local anomaly detection preserves AetherMesh's determinism requirement; any decentralized halt protocol leaves an irreducible halt window | Analysis (proof sketches) |
|
|
184
|
+
| 5 | **A reference implementation** (v2.0.0) with 16 modules, 60 tests, and 3 reproducible experiments | Implementation |
|
|
185
|
+
| 6 | Twenty open questions (Q1โQ20) | Catalogue |
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## โ๏ธ Installation
|
|
190
|
+
|
|
191
|
+
> [!NOTE]
|
|
192
|
+
> The PyPI package (`2.0.0`) is the **reference implementation**. It is **not a production system**. The v0.1.0 paper remains the authoritative hypothesis record.
|
|
193
|
+
|
|
194
|
+
```bash
|
|
195
|
+
# From PyPI (once published)
|
|
196
|
+
pip install aetherruntime-arch
|
|
197
|
+
|
|
198
|
+
# From source (development)
|
|
199
|
+
git clone https://github.com/gitdeeper15/aetherruntime.git
|
|
200
|
+
cd aetherruntime
|
|
201
|
+
pip install -e ".[dev]"
|
|
202
|
+
|
|
203
|
+
# Run tests
|
|
204
|
+
pytest
|
|
205
|
+
|
|
206
|
+
# Run experiments
|
|
207
|
+
python experiments/detection_accuracy/run.py
|
|
208
|
+
python experiments/halt_window/run.py
|
|
209
|
+
python experiments/recovery_correctness/run.py
|
|
210
|
+
|
|
211
|
+
# CLI
|
|
212
|
+
aetherruntime info
|
|
213
|
+
aetherruntime verify
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
Requires **Python 3.9+**. Runtime dependency: `cryptography >= 41.0`.
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## โ The Central Question
|
|
221
|
+
|
|
222
|
+
> **Is there a body of monitoring, detection, containment, halt, and recovery requirements for multi-agent software ecosystems that (i) is not already specified by the five existing dimensions, (ii) is not reducible to verification or to governance, (iii) can be specified without reintroducing a central authority, and (iv) yields an observable benefit over existing mechanisms?**
|
|
223
|
+
|
|
224
|
+
The four clauses correspond to failure conditions **F1**, **F2 and F3** (clause ii), **F4**, and **F5**. A negative answer to any clause would show that runtime assurance, as a separate dimension, is not warranted.
|
|
225
|
+
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
## ๐บ๏ธ The Six Functional Dimensions
|
|
229
|
+
|
|
230
|
+
The word "dimension" is chosen deliberately. Earlier descriptions used "layer", which suggests a vertical stack. The relationships among the six works are not strictly hierarchical.
|
|
231
|
+
|
|
232
|
+
| # | Dimension | Focus | Question | DOI |
|
|
233
|
+
|:-:|---|---|---|---|
|
|
234
|
+
| 1 | **AetherGit** | Storage and versioning | How are changes stored and versioned? | [10.5281/zenodo.23966896](https://doi.org/10.5281/zenodo.23966896) |
|
|
235
|
+
| 2 | **AetherFlow** | Integration and operational verification | How are changes integrated and verified? | [10.5281/zenodo.23979129](https://doi.org/10.5281/zenodo.23979129) |
|
|
236
|
+
| 3 | **AetherProof** | Specification and structured evidence | How is correctness proven? | [10.5281/zenodo.24013124](https://doi.org/10.5281/zenodo.24013124) |
|
|
237
|
+
| 4 | **AetherMesh** | Distribution and eventual consistency | How is state synchronized without a central coordinator? | [10.5281/zenodo.24038038](https://doi.org/10.5281/zenodo.24038038) |
|
|
238
|
+
| 5 | **AetherGovern** | Authority and policy | Who is authorized to do what, under which policy? | [10.5281/zenodo.24054524](https://doi.org/10.5281/zenodo.24054524) |
|
|
239
|
+
| 6 | **AetherRuntime** *(hypothesis)* | Monitoring and runtime assurance | Are agents behaving acceptably while running? | [10.5281/zenodo.24078477](https://doi.org/10.5281/zenodo.24078477) |
|
|
240
|
+
|
|
241
|
+
<p align="center">
|
|
242
|
+
<img src="docs/figures/Fig5_Runtime_vs_Verification.png"
|
|
243
|
+
alt="AetherRuntime โ Runtime Assurance vs. Verification"
|
|
244
|
+
width="100%">
|
|
245
|
+
</p>
|
|
246
|
+
|
|
247
|
+
<p align="center">
|
|
248
|
+
<em>Figure 5 โ Runtime assurance versus verification in the Aether family. Orthogonality is a hypothesis tested as failure condition F2.</em>
|
|
249
|
+
</p>
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
## ๐ฌ The Falsification-First Methodology
|
|
254
|
+
|
|
255
|
+
A typical architecture paper begins from a conviction that a component is needed and then specifies it. The risk is circular. AetherRuntime adopts a falsification-first methodology:
|
|
256
|
+
|
|
257
|
+
1. **No prior assumption** that the gap exists.
|
|
258
|
+
2. **No prior assumption** that AetherRuntime should be a separate project.
|
|
259
|
+
3. **Every claim** is tested against failure conditions (F1โF5).
|
|
260
|
+
4. The **final structure** (single, dual, triple, quadruple, or integration protocol) is determined *after* comparison.
|
|
261
|
+
|
|
262
|
+
---
|
|
263
|
+
|
|
264
|
+
## ๐งญ Failure Conditions F1โF5
|
|
265
|
+
|
|
266
|
+
| ID | Claim under test | Falsified ifโฆ | Status |
|
|
267
|
+
|:-:|---|---|:-:|
|
|
268
|
+
| **F1** | Non-redundancy | Every requirement R1โR6 is met by existing mechanisms or by a bounded extension of a single existing dimension | ๐ก Not falsified (R3, R4, R5) |
|
|
269
|
+
| **F2** | Orthogonality to verification | Every runtime-assurance decision and trust anchor can be encoded as a verified proposition | ๐ก Not falsified (narrowly) |
|
|
270
|
+
| **F3** | Boundary with governance | Runtime assurance reduces to governance plus conventional monitoring | ๐ก Not falsified (decentralized setting) |
|
|
271
|
+
| **F4** | Decentralizability | Any design preserving the required properties needs a central authority or strong consistency | ๐ก Not falsified (with residuals) |
|
|
272
|
+
| **F5** | Observable benefit | No scenario class can be constructed in which the best existing baseline fails and runtime assurance succeeds | ๐ด Untested |
|
|
273
|
+
|
|
274
|
+
**Requirement list R1โR6:**
|
|
275
|
+
|
|
276
|
+
| ID | Requirement |
|
|
277
|
+
|:-:|---|
|
|
278
|
+
| R1 | Continuous monitoring: resource use and action stream observable while an agent runs |
|
|
279
|
+
| R2 | Anomaly detection: deviations flagged with bounded FP/FN rates |
|
|
280
|
+
| R3 | Containment: anomalous agent isolatable with bounded restrictions |
|
|
281
|
+
| R4 | Halt: agent stoppable via decentralized quorum |
|
|
282
|
+
| R5 | Recovery: halted agent returnable to known-good state |
|
|
283
|
+
| R6 | Partition tolerance: monitoring, detection, containment, halt possible at a disconnected node |
|
|
284
|
+
|
|
285
|
+
---
|
|
286
|
+
|
|
287
|
+
## ๐ฏ The Three Candidate Capabilities
|
|
288
|
+
|
|
289
|
+
*As framed in the paper's comparison.*
|
|
290
|
+
|
|
291
|
+
| Candidate | Focus | Central question | Redundancy risk |
|
|
292
|
+
|---|---|---|:-:|
|
|
293
|
+
| **AetherOrchestrate** | Task scheduling and workflow | What should agents do next? | Medium |
|
|
294
|
+
| **AetherGovern** | Authority, accountability, revocation | Who may act, under which policy? | Medium |
|
|
295
|
+
| **AetherRuntime** | Live monitoring and rollback | Are agents behaving acceptably while running? | High |
|
|
296
|
+
|
|
297
|
+
AetherRuntime is a candidate for addressing the runtime-assurance gap, provided it passes the falsification criteria (F1โF5). No claim is made that the other two candidates are weaker.
|
|
298
|
+
|
|
299
|
+
---
|
|
300
|
+
|
|
301
|
+
## ๐๏ธ AetherRuntime: Architecture
|
|
302
|
+
|
|
303
|
+
> [!NOTE]
|
|
304
|
+
> All of this is **hypothesis**: a specification-level description of what a runtime-assurance dimension might contain.
|
|
305
|
+
|
|
306
|
+
### The Five Runtime Layers
|
|
307
|
+
|
|
308
|
+
<p align="center">
|
|
309
|
+
<img src="docs/figures/Fig2_Runtime_Layers.png"
|
|
310
|
+
alt="AetherRuntime โ The Five Layers"
|
|
311
|
+
width="100%">
|
|
312
|
+
</p>
|
|
313
|
+
|
|
314
|
+
<p align="center">
|
|
315
|
+
<em>Figure 2 โ The five layers of AetherRuntime (hypothesis). Ordering reflects conceptual dependency, not an enforcement hierarchy.</em>
|
|
316
|
+
</p>
|
|
317
|
+
|
|
318
|
+
| Layer | Question | Status |
|
|
319
|
+
|:-:|---|:-:|
|
|
320
|
+
| **1 โ Monitoring** | What is the agent doing? | Hypothesis |
|
|
321
|
+
| **2 โ Detection** | Is this behaviour anomalous? | Hypothesis |
|
|
322
|
+
| **3 โ Containment** | How do we isolate the agent? | Hypothesis |
|
|
323
|
+
| **4 โ Halt** | How do we stop the agent? | Hypothesis |
|
|
324
|
+
| **5 โ Recovery** | How do we restore the system? | Hypothesis |
|
|
325
|
+
|
|
326
|
+
### The Runtime Lifecycle
|
|
327
|
+
|
|
328
|
+
<p align="center">
|
|
329
|
+
<img src="docs/figures/Fig3_Runtime_Lifecycle.png"
|
|
330
|
+
alt="AetherRuntime โ The Runtime Lifecycle"
|
|
331
|
+
width="100%">
|
|
332
|
+
</p>
|
|
333
|
+
|
|
334
|
+
<p align="center">
|
|
335
|
+
<em>Figure 3 โ The runtime lifecycle in AetherRuntime (hypothesis): observe, detect, classify, contain, halt, recover. Schematic; not a protocol specification.</em>
|
|
336
|
+
</p>
|
|
337
|
+
|
|
338
|
+
### Anomaly Detection
|
|
339
|
+
|
|
340
|
+
<p align="center">
|
|
341
|
+
<img src="docs/figures/Fig4_Anomaly_Detection.png"
|
|
342
|
+
alt="AetherRuntime โ Anomaly Detection"
|
|
343
|
+
width="100%">
|
|
344
|
+
</p>
|
|
345
|
+
|
|
346
|
+
<p align="center">
|
|
347
|
+
<em>Figure 4 โ The central challenge: distinguish true anomalies (red) from benign deviations (orange) without excessive false positives.</em>
|
|
348
|
+
</p>
|
|
349
|
+
|
|
350
|
+
### Runtime State Machine
|
|
351
|
+
|
|
352
|
+
<p align="center">
|
|
353
|
+
<img src="docs/figures/Fig6_Runtime_State_Machine.png"
|
|
354
|
+
alt="AetherRuntime โ Runtime State Machine"
|
|
355
|
+
width="100%">
|
|
356
|
+
</p>
|
|
357
|
+
|
|
358
|
+
<p align="center">
|
|
359
|
+
<em>Figure 6 โ The runtime state machine. Each state has defined entry and exit conditions; exception transitions (dashed) represent recovery paths.</em>
|
|
360
|
+
</p>
|
|
361
|
+
|
|
362
|
+
---
|
|
363
|
+
|
|
364
|
+
## ๐ Propositions
|
|
365
|
+
|
|
366
|
+
> [!NOTE]
|
|
367
|
+
> *Status: Stated with proof sketches; **not machine-checked**; conditional on assumptions A1โA6 (see [AetherMesh](https://doi.org/10.5281/zenodo.24038038)).*
|
|
368
|
+
|
|
369
|
+
| # | Proposition | Statement | Bears on |
|
|
370
|
+
|:-:|---|---|:-:|
|
|
371
|
+
| **P1** | Determinism of Local Anomaly Detection | If each node evaluates anomaly predicates against a local baseline and the anomaly predicates are deterministic functions of the local state, then the anomaly-detection layer preserves AetherMesh's determinism requirement (assumption A6). | F4 |
|
|
372
|
+
| **P2** | Irreducible Halt Window | Any decentralized halt protocol leaves a window `ฮt_window = t_halt_enforced โ t_detect` during which a compromised agent may continue to act. | F4 |
|
|
373
|
+
|
|
374
|
+
**Mathematical form (P1):**
|
|
375
|
+
|
|
376
|
+
```text
|
|
377
|
+
S_i(t+1) = S_i(t) โ โจ_{m โ M_i} m
|
|
378
|
+
|
|
379
|
+
โ i, j, A_i(S_i) โง A_j(S_j) โ (S_i โ S_j) = (S_j โ S_i)
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
**Mathematical form (P2):**
|
|
383
|
+
|
|
384
|
+
```text
|
|
385
|
+
ฮt_window = t_halt_enforced โ t_detect
|
|
386
|
+
= D_gossip(N, f) + t_queue + t_verify
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
**Resource monitoring metric:**
|
|
390
|
+
|
|
391
|
+
```text
|
|
392
|
+
ฮฉ_i(t) = โซ_0^t ( CPU_i(ฯ) + Memory_i(ฯ) + NetworkIO_i(ฯ) ) dฯ > ฮ_max
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
---
|
|
396
|
+
|
|
397
|
+
## ๐ Interfaces with the Aether Family
|
|
398
|
+
|
|
399
|
+
| Dimension | Requires from it | Provides to it | Coupling |
|
|
400
|
+
|---|---|---|:-:|
|
|
401
|
+
| **AetherGit** | Storage for telemetry, snapshots, recovery records | State snapshot mechanism | Lowโmedium |
|
|
402
|
+
| **AetherFlow** | Event stream from operational verification | Halt signal | Mediumโhigh |
|
|
403
|
+
| **AetherProof** | Designation of runtime-checkable specifications | Runtime evidence (telemetry traces) | Medium |
|
|
404
|
+
| **AetherMesh** | Delta replication; determinism-compatible predicate | Monitoring and halt predicates | High |
|
|
405
|
+
| **AetherGovern** | Authority to halt an agent | Runtime evidence for accountability | High |
|
|
406
|
+
|
|
407
|
+
**Minimal interface** (four artifacts, one rule): telemetry schema, baseline model, halt-order record, and the requirement that the halt predicate satisfy Proposition 1.
|
|
408
|
+
|
|
409
|
+
> [!IMPORTANT]
|
|
410
|
+
> If the minimal interface is all that is needed, the whole contribution might be an extension of AetherFlow's operational verification. The case for a standalone dimension rests on the layers beyond the minimal interface being separable and valuable. **That is a hypothesis for which this paper has no evidence.**
|
|
411
|
+
|
|
412
|
+
---
|
|
413
|
+
|
|
414
|
+
## ๐ Evaluation Design and v2.0.0 Results
|
|
415
|
+
|
|
416
|
+
> [!IMPORTANT]
|
|
417
|
+
> In the v0.1.0 paper **no evaluation was performed**. That section specifies how the candidate would be evaluated, in a form that fixes in advance what outcomes would count as failure. Every metric, baseline, and threshold is a proposal. The v2.0.0 experiments cover M1โM6 in simulation only.
|
|
418
|
+
|
|
419
|
+
| ID | Metric | Definition | Direction |
|
|
420
|
+
|:-:|---|---|:-:|
|
|
421
|
+
| **M1** | Anomaly detection rate | Fraction of true anomalies detected | Higher is better |
|
|
422
|
+
| **M2** | False-positive rate | Fraction of benign actions flagged as anomalous | Lower is better |
|
|
423
|
+
| **M3** | Detection latency | Time from anomaly onset to alert | Lower is better |
|
|
424
|
+
| **M4** | Containment time | Time from alert to containment | Lower is better |
|
|
425
|
+
| **M5** | Halt window | Time from detection to halt enforcement | Lower is better |
|
|
426
|
+
| **M6** | Recovery correctness | Fraction of recovered states that match ground truth | Higher is better |
|
|
427
|
+
| **M7** | Monitoring overhead | Added CPU/memory/network per agent | Lower is better |
|
|
428
|
+
| **M8** | Halt quorum latency | Time to reach quorum for a halt order | Lower is better |
|
|
429
|
+
| **M9** | Convergence preservation | Count of runs in which honest nodes diverge | Must be zero if P1 holds |
|
|
430
|
+
|
|
431
|
+
**Baselines B1โB5:**
|
|
432
|
+
|
|
433
|
+
| ID | Baseline | What it tests |
|
|
434
|
+
|:-:|---|---|
|
|
435
|
+
| B1 | No runtime assurance | Value of any runtime mechanism |
|
|
436
|
+
| B2 | Static thresholds | Whether simple thresholds suffice (F1) |
|
|
437
|
+
| B3 | Centralized monitor | Cost/benefit of decentralization (F4) |
|
|
438
|
+
| B4 | AetherFlow-only | Whether runtime monitoring adds value (F1) |
|
|
439
|
+
| B5 | Minimal runtime | Whether the full five layers add value |
|
|
440
|
+
|
|
441
|
+
**Scenarios S1โS6:** resource exhaustion, action-set drift, network anomaly, privilege escalation, Byzantine agent, false positive.
|
|
442
|
+
|
|
443
|
+
### v2.0.0 Experimental Results
|
|
444
|
+
|
|
445
|
+
*From `experiments/*/results.json`.*
|
|
446
|
+
|
|
447
|
+
| # | Experiment | Metrics | Result |
|
|
448
|
+
|:-:|---|:-:|---|
|
|
449
|
+
| 1 | Detection Accuracy | M1, M2 | M1 = 109.67 (S1โS5 total); M2 = 7.33 (S6 false positives) |
|
|
450
|
+
| 2 | Halt Window | M5 | 10/10 enforced; mean window = 0.000243 s; median = 0.000220 s |
|
|
451
|
+
| 3 | Recovery Correctness | M6 | 10/10 verified; M6 = 1.0000 |
|
|
452
|
+
|
|
453
|
+
> [!IMPORTANT]
|
|
454
|
+
> These are **simulation results**. The halt window is a property of the simulation's time step, not a real network measurement. M6 = 1.0 is a ceiling on real recovery quality, not a lower bound. See the full [evaluation report](REPORTS/v2.0.0/report.md).
|
|
455
|
+
|
|
456
|
+
---
|
|
457
|
+
|
|
458
|
+
## โ ๏ธ Threats and Limitations
|
|
459
|
+
|
|
460
|
+
### Threats to Validity
|
|
461
|
+
|
|
462
|
+
| Type | Threat | Status |
|
|
463
|
+
|---|---|---|
|
|
464
|
+
| Internal | Same author proposes the candidate, the failure conditions, the baselines, and the thresholds | Pre-registration; invite external review |
|
|
465
|
+
| Internal | Weak or straw-man baselines | Include B2, B4, B5; report B3 as a ceiling |
|
|
466
|
+
| Construct | "Anomaly" and "harm" are simulated by the experimenter | State explicitly; M1โM2 measure detection of simulated deviations, not harm |
|
|
467
|
+
| Construct | Recovery correctness (M6) measured against ground truth that exists only in simulation | Report as an upper bound |
|
|
468
|
+
| External | Simulated network, simplified adversary, synthetic workload | No generalization claimed |
|
|
469
|
+
| Conclusion | Few scenario classes; thresholds are proposals | Report all outcomes |
|
|
470
|
+
| Literature | Runtime-verification and anomaly-detection literature not reviewed in depth | Acknowledge |
|
|
471
|
+
|
|
472
|
+
### Limitations inherited from the AetherMesh substrate
|
|
473
|
+
|
|
474
|
+
Telemetry and halt records are replicated over AetherMesh, so its limitations carry over:
|
|
475
|
+
|
|
476
|
+
- Eventual, not strong, consistency; no global order.
|
|
477
|
+
- Filters only predicate-detectable invalid deltas.
|
|
478
|
+
- Assumes a trustworthy key registry.
|
|
479
|
+
- The delta set grows without compaction.
|
|
480
|
+
- Compatibility matrix, digest structure, fanout policy, forwarding policy, and compaction are underspecified.
|
|
481
|
+
- The determinism requirement is not enforced mechanically.
|
|
482
|
+
- Dynamic membership, access control beyond key registration, privacy of deltas, and integration with the other layers are not treated.
|
|
483
|
+
|
|
484
|
+
### When *not* to use AetherRuntime
|
|
485
|
+
|
|
486
|
+
| Scenario | Reason |
|
|
487
|
+
|---|---|
|
|
488
|
+
| Small, co-located teams or few agents | A conventional central monitor has lower complexity. |
|
|
489
|
+
| Strong consistency requirements | Halting must be immediate and global; not expressible as join-semilattice updates. |
|
|
490
|
+
| Validity must hold before visibility | If a halted agent's actions must be undone before any node observes them, a gate before execution is required. |
|
|
491
|
+
| Adversarial settings beyond the stated threat model | Where colluding or well-funded adversaries are expected, a lightweight monitor is insufficient. |
|
|
492
|
+
| Constrained nodes | Because the telemetry set grows without compaction, nodes with small storage budgets may not be able to hold replicas. |
|
|
493
|
+
|
|
494
|
+
---
|
|
495
|
+
|
|
496
|
+
## ๐ Research Status Statement
|
|
497
|
+
|
|
498
|
+
| Item | Status |
|
|
499
|
+
|---|---|
|
|
500
|
+
| Document type | Research article + reference implementation |
|
|
501
|
+
| Version / record | 2.0.0, November 2026 ยท AETHERRUNTIME-02 ยท DOI 10.5281/zenodo.24078477 |
|
|
502
|
+
| Implementation | โ
Built (`src/aetherruntime/`, 16 modules) |
|
|
503
|
+
| Tests | โ
60 passed |
|
|
504
|
+
| Experiments | โ
3/3 completed (simulated data) |
|
|
505
|
+
| PyPI package | โ
Published |
|
|
506
|
+
| Real-world deployment | None; no deployed system has been benchmarked |
|
|
507
|
+
| Propositions P1โP2 | Stated with proof sketches; not machine-checked; conditional on A1โA6 |
|
|
508
|
+
| Byzantine evaluation | Limited to simulated scenarios (S1โS5 anomalies, S6 false positives) |
|
|
509
|
+
| Third-party claims | As reported by cited sources; not independently verified |
|
|
510
|
+
| Review status | Not peer reviewed |
|
|
511
|
+
|
|
512
|
+
<details>
|
|
513
|
+
<summary><b>Reconciliation notes (v0.1.0 departures from the supplied draft material)</b></summary>
|
|
514
|
+
|
|
515
|
+
1. **Failure conditions** โ the definitions, the requirement list R1โR6, and the decision rule are the writer's proposals.
|
|
516
|
+
2. **AetherMesh DOI** โ the supplied reference list gave 10.5281/zenodo.24053492 for AetherMesh (v2.0.0), whereas the DOI supplied for the AetherMesh paper was 10.5281/zenodo.24038038 (v1.0.0). The latter is used throughout.
|
|
517
|
+
3. **Reference check** โ all 25 entries correspond to the intended publications.
|
|
518
|
+
4. **Figures** โ the six supplied figures were generated for this record.
|
|
519
|
+
5. **Layers versus dimensions** โ the supplied text calls the six items "dimensions" and the runtime sub-components "layers"; this usage is kept.
|
|
520
|
+
6. **Format** โ the brief requested Markdown; the record is a PDF, as requested separately.
|
|
521
|
+
|
|
522
|
+
</details>
|
|
523
|
+
|
|
524
|
+
**Catalogues:** 20 open questions (Q1โQ20) across monitoring, detection, containment, halt, recovery, interfaces, and evaluation method. See Appendix C of the [paper](https://doi.org/10.5281/zenodo.24078477).
|
|
525
|
+
|
|
526
|
+
---
|
|
527
|
+
|
|
528
|
+
## ๐ Platforms & Mirrors
|
|
529
|
+
|
|
530
|
+
| Platform | URL | Role | Status |
|
|
531
|
+
|---|---|---|:-:|
|
|
532
|
+
| **GitHub** | [gitdeeper15/aetherruntime](https://github.com/gitdeeper15/aetherruntime) | Source code, issues, PRs | โ
Active |
|
|
533
|
+
| **GitLab** | [gitlab.com/gitdeeper15/aetherruntime](https://gitlab.com/gitdeeper15/aetherruntime) | Mirror repository | โ
Active |
|
|
534
|
+
| **Codeberg** | [codeberg.org/gitdeeper15/aetherruntime](https://codeberg.org/gitdeeper15/aetherruntime) | Mirror repository | โ
Active |
|
|
535
|
+
| **Bitbucket** | [bitbucket.org/gitdeeper15/aetherruntime](https://bitbucket.org/gitdeeper15/aetherruntime) | Mirror repository | โ
Active |
|
|
536
|
+
| **PyPI** | [pypi.org/project/aetherruntime-arch](https://pypi.org/project/aetherruntime-arch/) | Python package (`2.0.0`) | โ
Published |
|
|
537
|
+
| **Zenodo** | [10.5281/zenodo.24078477](https://doi.org/10.5281/zenodo.24078477) | Citable DOI, paper archive | โ
Published |
|
|
538
|
+
| **Figshare** | [10.6084/m9.figshare.34955746](https://doi.org/10.6084/m9.figshare.34955746) | Preprint archive | โ
Published |
|
|
539
|
+
| **OSF** | [10.17605/OSF.IO/KZU7P](https://doi.org/10.17605/OSF.IO/KZU7P) ยท [project](https://osf.io/ft7ez) | Registration | โ
Published |
|
|
540
|
+
| **Website** | [aether-runtime.netlify.app](https://aether-runtime.netlify.app) | Live documentation | โ
Active |
|
|
541
|
+
| **ORCID** | [0009-0003-8903-0029](https://orcid.org/0009-0003-8903-0029) | Author identity | โ
Active |
|
|
542
|
+
|
|
543
|
+
---
|
|
544
|
+
|
|
545
|
+
## ๐๏ธ Project Structure
|
|
546
|
+
|
|
547
|
+
<details>
|
|
548
|
+
<summary><b>Click to expand the repository tree</b></summary>
|
|
549
|
+
|
|
550
|
+
```text
|
|
551
|
+
AetherRuntime/
|
|
552
|
+
โโโ src/
|
|
553
|
+
โ โโโ aetherruntime/ # Reference implementation (v2.0.0, 16 modules)
|
|
554
|
+
โ โโโ __init__.py
|
|
555
|
+
โ โโโ __version__.py
|
|
556
|
+
โ โโโ models.py
|
|
557
|
+
โ โโโ cli.py
|
|
558
|
+
โ โโโ ...
|
|
559
|
+
โโโ tests/ # 60 tests
|
|
560
|
+
โโโ experiments/ # 3 experiments (run.py + results.json each)
|
|
561
|
+
โ โโโ detection_accuracy/
|
|
562
|
+
โ โโโ halt_window/
|
|
563
|
+
โ โโโ recovery_correctness/
|
|
564
|
+
โโโ docs/
|
|
565
|
+
โ โโโ figures/
|
|
566
|
+
โ โ โโโ Fig1_Six_Dimensions.png
|
|
567
|
+
โ โ โโโ Fig2_Runtime_Layers.png
|
|
568
|
+
โ โ โโโ Fig3_Runtime_Lifecycle.png
|
|
569
|
+
โ โ โโโ Fig4_Anomaly_Detection.png
|
|
570
|
+
โ โ โโโ Fig5_Runtime_vs_Verification.png
|
|
571
|
+
โ โ โโโ Fig6_Runtime_State_Machine.png
|
|
572
|
+
โ โโโ paper/
|
|
573
|
+
โ โโโ AetherRuntime_Research_Paper.md
|
|
574
|
+
โ โโโ AetherRuntime_Research_Paper.pdf
|
|
575
|
+
โโโ PUBLICATION/
|
|
576
|
+
โ โโโ AetherRuntime_Research_Paper.pdf
|
|
577
|
+
โโโ PAPER_PARTS/ # Paper sections (Markdown)
|
|
578
|
+
โ โโโ 00_Title_Page.md
|
|
579
|
+
โ โโโ 01_Abstract.md
|
|
580
|
+
โ โโโ ...
|
|
581
|
+
โ โโโ 16_Research_Status_Statement.md
|
|
582
|
+
โโโ REPORTS/
|
|
583
|
+
โ โโโ v2.0.0/
|
|
584
|
+
โ โโโ report.md
|
|
585
|
+
โโโ AUTHORS.md
|
|
586
|
+
โโโ CHANGELOG.md
|
|
587
|
+
โโโ CITATION.cff
|
|
588
|
+
โโโ CONTRIBUTING.md
|
|
589
|
+
โโโ INVENTORY.md
|
|
590
|
+
โโโ LICENSE
|
|
591
|
+
โโโ PROJECT_SUMMARY.txt
|
|
592
|
+
โโโ README.md
|
|
593
|
+
โโโ VERSION
|
|
594
|
+
โโโ manifest.json
|
|
595
|
+
โโโ netlify.toml
|
|
596
|
+
โโโ pyproject.toml
|
|
597
|
+
โโโ requirements.txt
|
|
598
|
+
โโโ scientific_state.json
|
|
599
|
+
```
|
|
600
|
+
|
|
601
|
+
</details>
|
|
602
|
+
|
|
603
|
+
---
|
|
604
|
+
|
|
605
|
+
## ๐ Version History
|
|
606
|
+
|
|
607
|
+
| Version | Release | Focus | Status |
|
|
608
|
+
|---|---|---|:-:|
|
|
609
|
+
| **v2.0.0** | 2026-11-09 ([release](https://github.com/gitdeeper15/aetherruntime/releases/tag/v2.0.0)) | Reference implementation: 16 modules, 60 tests, 3 experiments | โ
Released |
|
|
610
|
+
| **v0.1.0** | 2026-11-09 ([release](https://github.com/gitdeeper15/aetherruntime/releases/tag/v0.1.0)) | Formalization: 5 failure conditions, 5 layers, 2 propositions, 20 open questions | โ
Released |
|
|
611
|
+
| *(planned)* | 2027+ | Real-world evaluation; comparison against baselines B1โB5 | โณ Not executed |
|
|
612
|
+
|
|
613
|
+
---
|
|
614
|
+
|
|
615
|
+
## ๐ Citation
|
|
616
|
+
|
|
617
|
+
### Primary Manuscript โ AetherRuntime v0.1.0 (Zenodo)
|
|
618
|
+
|
|
619
|
+
```bibtex
|
|
620
|
+
@techreport{baladi2026aetherruntime,
|
|
621
|
+
author = {Baladi, Samir},
|
|
622
|
+
title = {AetherRuntime: A Falsification-First Investigation of Runtime Assurance in the Aether Family},
|
|
623
|
+
institution = {Ronin Institute / Rite of Renaissance},
|
|
624
|
+
type = {Research Paper},
|
|
625
|
+
year = {2026},
|
|
626
|
+
month = {November},
|
|
627
|
+
version = {0.1.0},
|
|
628
|
+
doi = {10.5281/zenodo.24078477},
|
|
629
|
+
url = {https://doi.org/10.5281/zenodo.24078477},
|
|
630
|
+
note = {Architectural Hypothesis Under Investigation --- Not a committed project.}
|
|
631
|
+
}
|
|
632
|
+
```
|
|
633
|
+
|
|
634
|
+
### Software โ AetherRuntime v2.0.0
|
|
635
|
+
|
|
636
|
+
```bibtex
|
|
637
|
+
@software{baladi2026aetherruntime_v2,
|
|
638
|
+
author = {Baladi, Samir},
|
|
639
|
+
title = {{AetherRuntime} v2.0.0: Reference Implementation of the Falsification-First Runtime Assurance Architecture},
|
|
640
|
+
year = {2026},
|
|
641
|
+
month = {November},
|
|
642
|
+
publisher = {PyPI},
|
|
643
|
+
version = {2.0.0},
|
|
644
|
+
doi = {10.5281/zenodo.24078477},
|
|
645
|
+
url = {https://pypi.org/project/aetherruntime-arch/},
|
|
646
|
+
note = {Reference implementation. Available via pip install aetherruntime-arch.}
|
|
647
|
+
}
|
|
648
|
+
```
|
|
649
|
+
|
|
650
|
+
### Preprint โ AetherRuntime v0.1.0 (Figshare)
|
|
651
|
+
|
|
652
|
+
```bibtex
|
|
653
|
+
@misc{baladi2026aetherruntime_figshare,
|
|
654
|
+
author = {Baladi, Samir},
|
|
655
|
+
title = {AetherRuntime: A Falsification-First Investigation of Runtime Assurance in the Aether Family},
|
|
656
|
+
year = {2026},
|
|
657
|
+
month = nov,
|
|
658
|
+
publisher = {Figshare},
|
|
659
|
+
doi = {10.6084/m9.figshare.34955746},
|
|
660
|
+
url = {https://doi.org/10.6084/m9.figshare.34955746},
|
|
661
|
+
note = {Preprint. Archived version of the AetherRuntime manuscript.}
|
|
662
|
+
}
|
|
663
|
+
```
|
|
664
|
+
|
|
665
|
+
### OSF Preregistration โ AetherRuntime v0.1.0
|
|
666
|
+
|
|
667
|
+
```bibtex
|
|
668
|
+
@misc{baladi2026aetherruntime_osf,
|
|
669
|
+
author = {Baladi, Samir},
|
|
670
|
+
title = {AetherRuntime: A Falsification-First Investigation of Runtime Assurance in the Aether Family},
|
|
671
|
+
year = {2026},
|
|
672
|
+
month = nov,
|
|
673
|
+
day = {9},
|
|
674
|
+
publisher = {OSF},
|
|
675
|
+
doi = {10.17605/OSF.IO/KZU7P},
|
|
676
|
+
url = {https://doi.org/10.17605/OSF.IO/KZU7P},
|
|
677
|
+
note = {OSF Preregistration. Associated project: https://osf.io/ft7ez}
|
|
678
|
+
}
|
|
679
|
+
```
|
|
680
|
+
|
|
681
|
+
---
|
|
682
|
+
|
|
683
|
+
## ๐ค Author
|
|
684
|
+
|
|
685
|
+
**Samir Baladi**
|
|
686
|
+
*Interdisciplinary AI Researcher โ Ronin Institute / Rite of Renaissance*
|
|
687
|
+
|
|
688
|
+
| | |
|
|
689
|
+
|---|---|
|
|
690
|
+
| **Research Area** | Distributed Systems / Software Engineering / Institutional Analysis |
|
|
691
|
+
| **Research Domain** | Runtime Assurance, Monitoring, Anomaly Detection, Containment, Halt, Recovery, Multi-Agent Systems |
|
|
692
|
+
| **Research Type** | Architectural Hypothesis + Reference Implementation |
|
|
693
|
+
| ๐ง **Email** | [gitdeeper@gmail.com](mailto:gitdeeper@gmail.com) |
|
|
694
|
+
| ๐ **ORCID** | [0009-0003-8903-0029](https://orcid.org/0009-0003-8903-0029) |
|
|
695
|
+
| ๐ **GitHub** | [gitdeeper15/aetherruntime](https://github.com/gitdeeper15/aetherruntime) |
|
|
696
|
+
| ๐ฆ **GitLab** | [gitlab.com/gitdeeper15/aetherruntime](https://gitlab.com/gitdeeper15/aetherruntime) |
|
|
697
|
+
| ๐ฆ **Codeberg** | [codeberg.org/gitdeeper15/aetherruntime](https://codeberg.org/gitdeeper15/aetherruntime) |
|
|
698
|
+
| ๐ชฃ **Bitbucket** | [bitbucket.org/gitdeeper15/aetherruntime](https://bitbucket.org/gitdeeper15/aetherruntime) |
|
|
699
|
+
| ๐ **PyPI** | [pypi.org/project/aetherruntime-arch](https://pypi.org/project/aetherruntime-arch/) |
|
|
700
|
+
| ๐ **Figshare** | [10.6084/m9.figshare.34955746](https://doi.org/10.6084/m9.figshare.34955746) |
|
|
701
|
+
| ๐ **OSF** | [10.17605/OSF.IO/KZU7P](https://doi.org/10.17605/OSF.IO/KZU7P) |
|
|
702
|
+
| ๐ **Official Site** | [aether-runtime.netlify.app](https://aether-runtime.netlify.app) |
|
|
703
|
+
|
|
704
|
+
---
|
|
705
|
+
|
|
706
|
+
## โ๏ธ License
|
|
707
|
+
|
|
708
|
+
| Scope | License |
|
|
709
|
+
|---|---|
|
|
710
|
+
| **Code** | [MIT License](LICENSE) โ Copyright ยฉ 2026 Samir Baladi |
|
|
711
|
+
| **Documentation, manuscript, and figures** | [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/legalcode) |
|
|
712
|
+
|
|
713
|
+
<details>
|
|
714
|
+
<summary><b>MIT License โ full text</b></summary>
|
|
715
|
+
|
|
716
|
+
```text
|
|
717
|
+
MIT License
|
|
718
|
+
|
|
719
|
+
Copyright (c) 2026 Samir Baladi
|
|
720
|
+
|
|
721
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
722
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
723
|
+
in the Software without restriction, including without limitation the rights
|
|
724
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
725
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
726
|
+
furnished to do so, subject to the following conditions:
|
|
727
|
+
|
|
728
|
+
The above copyright notice and this permission notice shall be included in all
|
|
729
|
+
copies or substantial portions of the Software.
|
|
730
|
+
```
|
|
731
|
+
|
|
732
|
+
</details>
|
|
733
|
+
|
|
734
|
+
---
|
|
735
|
+
|
|
736
|
+
<div align="center">
|
|
737
|
+
|
|
738
|
+
**AetherRuntime โ Program Manuscript v2.0.0 (Reference Implementation)**
|
|
739
|
+
|
|
740
|
+
ยฉ 2026 Samir Baladi โ Ronin Institute / Rite of Renaissance โ MIT (code) + CC-BY-4.0 (docs)
|
|
741
|
+
|
|
742
|
+
[Zenodo](https://doi.org/10.5281/zenodo.24078477) ยท
|
|
743
|
+
[Figshare](https://doi.org/10.6084/m9.figshare.34955746) ยท
|
|
744
|
+
[OSF](https://doi.org/10.17605/OSF.IO/KZU7P) ยท
|
|
745
|
+
[Website](https://aether-runtime.netlify.app) ยท
|
|
746
|
+
[PyPI](https://pypi.org/project/aetherruntime-arch/) *(published)*
|
|
747
|
+
|
|
748
|
+
</div>
|