Skip to content

Commit 4c3afcd

Browse files
committed
Finalize Fluxheim 1.5.7 documentation
1 parent 42345ab commit 4c3afcd

3 files changed

Lines changed: 30 additions & 34 deletions

File tree

CHANGELOG.md

Lines changed: 14 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@ behavior when the change improves security or project direction.
1616
config, admin API, status shape, metrics, privacy-mode behavior,
1717
managed-cookie behavior, and selector results as far as possible.
1818
- Add a Fluxheim-owned backend/backend-set model and route static, file, and
19-
DNS upstream discovery through it before adapting to the current Pingora
20-
selector boundary.
19+
DNS upstream discovery through it.
2120
- Move load-balancer key, passive-health, slow-start, connection-counter,
2221
latency, and backend-policy helpers onto a Fluxheim-owned backend identity
2322
abstraction so those subsystems no longer require Pingora's concrete backend
@@ -26,8 +25,7 @@ behavior when the change improves security or project direction.
2625
adapting static upstreams to Pingora backend values during table
2726
construction.
2827
- Move file-refreshed and DNS-refreshed backend discovery behind a
29-
Fluxheim-owned discovery trait, keeping Pingora service discovery as a thin
30-
adapter at the current runtime boundary.
28+
Fluxheim-owned discovery trait.
3129
- Route runtime backend stats, bounded-load weight accounting, and disabled
3230
upstream parsing through the same backend identity/adapter layer.
3331
- Move slow-start state regression coverage onto Fluxheim backend identities,
@@ -41,15 +39,16 @@ behavior when the change improves security or project direction.
4139
Fluxheim-owned weighted random first pick and unique backend fallback scan.
4240
- Replace Pingora's consistent-hash selector dependency with Fluxheim-owned
4341
rendezvous candidate ordering for consistent and bounded-load consistent
44-
hash modes, while preserving dynamic discovery support through the current
45-
backend container. This is a valid consistent-hash algorithm change and can
46-
remap existing consistent-hash affinity keys once during the 1.5.7 upgrade.
42+
hash modes, while preserving dynamic discovery support through the Fluxheim
43+
runtime backend container. This is a valid consistent-hash algorithm change
44+
and can remap existing consistent-hash affinity keys once during the 1.5.7
45+
upgrade.
4746
- Collapse the load-balancer factory, stats, and priority-check helpers onto a
4847
concrete readiness container now that Fluxheim owns all shipped selection
4948
algorithms, removing the remaining generic Pingora selector trait plumbing.
50-
- Centralize the remaining Pingora backend container operations behind
51-
Fluxheim-owned adapter helpers so readiness, backend enumeration, and
52-
health-check metadata have one migration boundary.
49+
- Centralize runtime backend container operations behind Fluxheim-owned
50+
adapter helpers so readiness, backend enumeration, and health-check metadata
51+
have one migration boundary.
5352
- Route static upstream pools through the same Fluxheim-owned discovery
5453
adapter as file-refreshed and DNS-refreshed pools, removing Pingora's static
5554
discovery wrapper from load-balancer construction.
@@ -59,16 +58,15 @@ behavior when the change improves security or project direction.
5958
- Introduce a Fluxheim backend-container trait and move selection/stat modules
6059
onto that trait instead of the concrete Pingora `LoadBalancer<RoundRobin>`
6160
type.
62-
- Centralize the concrete Pingora load-balancer container type behind the
61+
- Centralize the remaining concrete runtime backend value type behind the
6362
backend adapter module so orchestration and discovery use Fluxheim's adapter
64-
alias during the native-substrate migration.
65-
- Wrap the current Pingora load-balancer container in a Fluxheim runtime type
66-
before handing pools to selection, status, and background-service code.
63+
alias while the final value-type replacement remains isolated.
64+
- Wrap load-balanced pools in a Fluxheim runtime type before handing them to
65+
selection, status, and background-service code.
6766
- Return Fluxheim runtime-wrapped load-balancer pools from discovery so
6867
selection-mode construction no longer repeats Pingora container wrapping.
6968
- Keep the selector-facing backend-container trait implemented only by the
70-
Fluxheim runtime wrapper, with raw Pingora container access confined inside
71-
that adapter.
69+
Fluxheim runtime wrapper.
7270
- Replace Pingora's load-balancer `Backends` container, discovery adapter, and
7371
background update loop with Fluxheim-owned backend storage, readiness state,
7472
discovery refresh, health-check scheduling, and shutdown handling. Existing

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ Recommended profile features:
284284
| `profile-load-balancer` | `proxy`, `web`, `cache`, `compression-gzip`, `compression-zstd`, `compression-brotli`, `load-balancer`, `tls-rustls`, `security` | Edge server with Fluxheim load balancing and all compression codecs compiled in. |
285285
| `profile-observability` | `profile-core`, `metrics`, `metrics-otlp`, `otel-tracing`, `otel-otlp` | Core server with Prometheus metrics, optional local OTLP metrics export, trace context propagation, and optional local OTLP trace export. |
286286
| `profile-privacy` | `proxy`, `web`, `tls-rustls`, `privacy-mode`, `security` | Zero-retention static/proxy profile. |
287-
| `profile-full` | `profile-load-balancer`, `geoip`, `stream-proxy`, `traffic-mirror` | All stable production modules, including GeoIP, traffic mirroring, and the 1.4 stream foundation. |
287+
| `profile-full` | `profile-load-balancer`, `geoip`, `stream-proxy`, `traffic-mirror` | All stable production modules, including GeoIP, traffic mirroring, and the 1.5 stream/load-balancer runtime lines. |
288288
| `profile-development` | `profile-full`, `php-fpm`, `acme-client`, `metrics`, `metrics-otlp`, `otel-tracing`, `otel-otlp` | Broad development build with all compatible production modules. |
289289
| `profile-web-server` | `proxy`, `web`, `compression-gzip`, `compression-zstd`, `compression-brotli`, `tls-rustls`, `security` | Static webserver profile while serving still uses the shared proxy runtime. |
290290
| `profile-cache-edge` | `proxy`, `cache`, `compression-gzip`, `compression-zstd`, `compression-brotli`, `tls-rustls`, `security` | Cache edge without local static web serving. |

release-notes/RELEASE_NOTES_1.5.7.md

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,14 @@ results as far as possible.
1111
- Add a Fluxheim-owned backend/backend-set model for load-balancer upstream
1212
construction.
1313
- Route static upstream pools, file-refreshed upstream discovery, and
14-
DNS-refreshed upstream discovery through the Fluxheim backend model before
15-
adapting to the remaining Pingora selector boundary.
14+
DNS-refreshed upstream discovery through the Fluxheim backend model.
1615
- Move backend keying, passive health, slow start, connection counters,
1716
latency scoring, and backend policy evaluation onto a Fluxheim-owned backend
1817
identity abstraction.
1918
- Build Maglev lookup tables from Fluxheim backend identities so Maglev
2019
construction no longer depends on Pingora's concrete backend type.
2120
- Move file-refreshed and DNS-refreshed backend discovery behind a
22-
Fluxheim-owned discovery trait, with Pingora service discovery retained only
23-
as an adapter.
21+
Fluxheim-owned discovery trait.
2422
- Route runtime backend stats, bounded-load weight accounting, and disabled
2523
upstream parsing through the Fluxheim backend identity/adapter layer.
2624
- Move slow-start state regression coverage onto Fluxheim backend identities,
@@ -34,15 +32,16 @@ results as far as possible.
3432
Fluxheim-owned weighted random first pick and unique backend fallback scan.
3533
- Replace Pingora's consistent-hash selector dependency with Fluxheim-owned
3634
rendezvous candidate ordering for consistent and bounded-load consistent
37-
hash modes. Dynamic file/DNS discovery remains supported through the current
38-
backend container. This is a valid consistent-hash algorithm change and can
39-
remap existing consistent-hash affinity keys once during the 1.5.7 upgrade.
35+
hash modes. Dynamic file/DNS discovery remains supported through the
36+
Fluxheim runtime backend container. This is a valid consistent-hash
37+
algorithm change and can remap existing consistent-hash affinity keys once
38+
during the 1.5.7 upgrade.
4039
- Collapse load-balancer factory, stats, and priority-check helpers onto a
4140
concrete readiness container now that Fluxheim owns all shipped selection
4241
algorithms.
43-
- Centralize the remaining Pingora backend container operations behind
44-
Fluxheim-owned adapter helpers so readiness checks, backend enumeration, and
45-
health-check metadata have one migration boundary.
42+
- Centralize runtime backend container operations behind Fluxheim-owned
43+
adapter helpers so readiness checks, backend enumeration, and health-check
44+
metadata have one migration boundary.
4645
- Route static upstream pools through the same Fluxheim-owned discovery
4746
adapter as file-refreshed and DNS-refreshed pools, removing Pingora's static
4847
discovery wrapper from load-balancer construction.
@@ -52,16 +51,15 @@ results as far as possible.
5251
- Introduce a Fluxheim backend-container trait so selector and runtime-stat
5352
code depend on Fluxheim's backend/readiness interface instead of the concrete
5453
Pingora container type.
55-
- Centralize the remaining concrete Pingora load-balancer container type behind
56-
the backend adapter module, keeping orchestration and discovery on Fluxheim's
57-
adapter alias while the native substrate is phased in.
58-
- Wrap the current Pingora load-balancer container in a Fluxheim runtime type
59-
before handing pools to selection, status, and background-service code.
54+
- Centralize the remaining concrete runtime backend value type behind the
55+
backend adapter module, keeping orchestration and discovery on Fluxheim's
56+
adapter alias while the final value-type replacement remains isolated.
57+
- Wrap load-balanced pools in a Fluxheim runtime type before handing them to
58+
selection, status, and background-service code.
6059
- Return Fluxheim runtime-wrapped load-balancer pools from discovery so
6160
selection-mode construction no longer repeats Pingora container wrapping.
6261
- Keep the selector-facing backend-container trait implemented only by the
63-
Fluxheim runtime wrapper, with raw Pingora container access confined inside
64-
that adapter.
62+
Fluxheim runtime wrapper.
6563
- Replace Pingora's load-balancer `Backends` container, discovery adapter, and
6664
background update loop with Fluxheim-owned backend storage, readiness state,
6765
discovery refresh, health-check scheduling, and shutdown handling.

0 commit comments

Comments
 (0)