You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -21,20 +21,21 @@ It stays downstream of topology discovery. The public surface in this repository
21
21
22
22
## Stability / Release Status
23
23
24
-
The current public release line is `v1.0.0`. It is the first major Sheaft line for the stochastic-connectivity baseline over Bering `1.3.0` model and snapshot contracts.
24
+
The current public release line is `v1.1.0`. It is the current stable Sheaft line for the stochastic-connectivity baseline over Bering `1.3.0` model and snapshot contracts.
25
25
26
-
Stable in `v1.0.0`:
26
+
Stable in `v1.1.0`:
27
27
28
28
- strict acceptance of the Bering v1 contract line: `io.mb3r.bering.model@1.3.0` and `io.mb3r.bering.snapshot@1.3.0`
Copy file name to clipboardExpand all lines: docs/configuration.md
+7Lines changed: 7 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -41,6 +41,13 @@ Profile-level `reliability` values inherit the top-level block and can override
41
41
42
42
For artifact baseline comparisons, prefer homogeneous `reliability.edge_live_probability` unless every compared artifact exposes the same edge IDs. Per-edge `reliability.edges` entries are validated against each artifact under analysis.
43
43
44
+
Sampling modes:
45
+
46
+
-`independent_replica`: replicas fail independently; a service stays live while any replica survives
47
+
-`independent_service`: each service is sampled once per trial regardless of replica count
48
+
-`fixed_k_service_set`: exactly `fixed_k_failures` services fail per trial
49
+
-`fixed_k_replica_slots`: exactly `k` replica slots fail per trial; when `fixed_k_failures` is omitted, `k = ceil(failure_probability * total_replica_slots)`
50
+
44
51
## Serve Config
45
52
46
53
Use the versioned serve config for long-running posture mode:
Copy file name to clipboardExpand all lines: docs/methodology.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,8 +27,9 @@ For each configured profile Sheaft:
27
27
-`independent_replica`: replicas fail independently and a service stays available while any replica survives
28
28
-`independent_service`: each service is sampled once per trial regardless of replica count
29
29
-`fixed_k_service_set`: exactly `k` services fail per trial
30
+
-`fixed_k_replica_slots`: exactly `k` replica slots fail per trial; when `fixed_k_failures` is omitted, `k = ceil(failure_probability * total_replica_slots)`
30
31
31
-
When `1.3.0` placement buckets exist, `independent_replica` samples those buckets explicitly. A service remains effectively alive while at least one bucket still has a live replica.
32
+
When `1.3.0` placement buckets exist, replica-based modes sample those buckets explicitly. A service remains effectively alive while at least one bucket still has a live replica.
Copy file name to clipboardExpand all lines: docs/roadmap.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -72,7 +72,7 @@ The published `v0.2.4` release payload is the previous preview baseline:
72
72
| Issue | GitHub state | Repo reality | Notes |
73
73
| --- | --- | --- | --- |
74
74
| R1.1 | closed | done | "Consumer Semantics v1" is documented in-repo with version scope, precedence rules, and 15 expected behavior examples. |
75
-
| R1.2 | closed | done | Fail-stop baseline semantics, three sampling modes, timeout/partial degradation handling, and the external Sheaft fault contract are implemented and tested. |
75
+
| R1.2 | closed | done | Fail-stop baseline semantics, four sampling modes, timeout/partial degradation handling, and the external Sheaft fault contract are implemented and tested. |
76
76
| R1.3 | open | partial | Retry/timeout/circuit-breaker inputs from Bering `1.3.0` and the Sheaft fault contract are now handled; fallback/rate-limit annotations still remain outside the implemented surface. |
|`G=(V,E,tau)`| Bering services become `V`; Bering dependencies become `E`; edge type `tau` is represented by `kind`, `blocking`, and optional operation-aware `identity`. |`io.mb3r.bering.model@1.3.0`, `io.mb3r.bering.snapshot@1.3.0`, [examples/outputs/model-v1.3.0.sample.json](../examples/outputs/model-v1.3.0.sample.json), [examples/outputs/snapshot-v1.3.0.sample.json](../examples/outputs/snapshot-v1.3.0.sample.json)| Sheaft consumes topology; discovery ownership remains upstream in Bering. |
28
-
|`R`| Service `replicas` and `metadata.placements[].replicas` define the replication map. `independent_replica` samples replicas or placement buckets; a service is live while at least one sampled replica bucket survives. |[docs/methodology.md](methodology.md), [configs/analysis.v1.1.example.yaml](../configs/analysis.v1.1.example.yaml)| Placement metadata is used when present; otherwise Sheaft falls back to coarse service replicas. |
28
+
|`R`| Service `replicas` and `metadata.placements[].replicas` define the replication map. `independent_replica` samples replicas or placement buckets independently. `fixed_k_replica_slots` samples a fixed number of replica slots for experiment reproduction. A service is live while at least one sampled replica bucket survives. |[docs/methodology.md](methodology.md), [configs/analysis.example.yaml](../configs/analysis.example.yaml)| Placement metadata is used when present; otherwise Sheaft falls back to coarse service replicas. |
29
29
|`P`| The v1 baseline is `P_Node * P_Edge`: node/service live events and edge live events are sampled independently before optional reviewed fault overlays. |[docs/oracle-suite.md](oracle-suite.md), `make oracle-suite`| Arbitrary non-product `P` is out of scope. Correlated failures are explicit fault overlays, not inferred probability distributions. |
30
30
|`theta`|`analysis.reliability.node_live_probability`, `profiles[].reliability.node_live_probability`, per-service overrides, and Bering reliability evidence resolve node live probabilities. Legacy `failure_probability` maps to `1 - theta` only when explicit node reliability is absent. |[docs/configuration.md](configuration.md), [api/schema/analysis.schema.json](../api/schema/analysis.schema.json)| Sheaft does not do automatic probability calibration from telemetry. Inputs must be configured or provided as upstream evidence. |
31
31
|`rho`|`analysis.reliability.edge_live_probability`, `profiles[].reliability.edge_live_probability`, per-edge overrides, and Bering edge reliability evidence resolve edge live probabilities. |[docs/configuration.md](configuration.md), [configs/analysis.v1.1.example.yaml](../configs/analysis.v1.1.example.yaml)| Per-edge overrides must use edge IDs present in the artifact being analyzed. |
0 commit comments