Architecture: describe seamless stream movement between shards
Spreading, consolidating, and rebalancing are all done by moving streams
between shards, with no data loss and no stale-data window - seamless and
transparent to applications.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0116kjh7rmWbsc3Y84Hn4GZ1
Architecture: per-stream images, I/O+CPU startup burst, policy-defined ceiling, assign-at-connect
Each stream in a result gets its own initial image; the startup burst is
heavy on I/O and CPU. Reword to 'the set of streams in a result is
delivered over shards' and 'policy-defined capacity ceiling'. Conflation
now reads as a rule assigned to the session at connect time, consistent
with the cookbook.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0116kjh7rmWbsc3Y84Hn4GZ1
Architecture: lead delivery scaling with startup; fix conflation-rule wording
Order the delivery-scaling subsection startup-first, then through-the-day
scaling. Reword conflation so rules read as static configuration that
sessions match, not a dynamic per-consumer assignment.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0116kjh7rmWbsc3Y84Hn4GZ1
Architecture: drop superfluous comma in heading
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0116kjh7rmWbsc3Y84Hn4GZ1
Architecture: align slow-consumer wording to the connection/stream model
Congestion is measured per connection (shard), which carries multiple
update streams; correct the wording throughout accordingly. Delivery
scaling adds connections to spread streams; conflation collapses per-row
updates. Reword so scaling reads as capacity to keep up rather than a
higher update rate, and add the startup behaviour: starting on more shards
for the initial image burst, then consolidating as the images finish and
the runtime warms up.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0116kjh7rmWbsc3Y84Hn4GZ1
Slow-consumer protection: cover delivery scaling and conflation
Broaden the slow-consumer coverage to both automatic delivery scaling
(shard orchestration and rebalancing) and conflation.
- Architecture: present both mechanisms and how they complement each other.
- Cookbook: rename to "Configuration Cookbook: Slow Consumer Protection"
with configuration for both; document the result-policy tunables and file
location; correct the 1000ms conflation example and drop the obsolete
orchestrationMarkFraction field.
- Fix internal links and the sidebar entry for the renamed page.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0116kjh7rmWbsc3Y84Hn4GZ1
Reframe Docker-centric wording so the conventional path is a first-class option
Deployment-Basics.md's "What a deployment is made of" now opens with the
substrate-neutral framing (conventional / Docker / Kubernetes all run the
same base image and deployment-config), and "Running a deployment" leads
with that same three-way framing before presenting the deploy-mf-<service>
/ scripts/start workflow as one way to bring a service up under Docker,
pointing to the Cookbook and Deployment: Without Docker for the other two.
Sweeps the rest of the wiki for the same assumption: Architecture-Advanced
mentions systemd alongside Docker/Kubernetes for automatic restart and
infra-component restart, and drops "container" as the implied only unit
for per-instance role reporting, topology packaging, and the operational
instance count. Configuration-Basics, Configuration-Advanced, and
Deployment-Advanced add the conventional option alongside Docker/Kubernetes
where a mounted-config or single-network example only named Docker.
Configuration-Reference notes the Docker-free way to read the annotated
defaults from an installation package. Image-Catalog and Cookbook-Enable-
Tokens swap a couple of "container"/"in a container" phrasings for
substrate-neutral wording. Glossary's Composition entry points at the
Demo cookbook page instead of a no-longer-used "consolidated composition"
name.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017aV4rcuYnv4rUf3adqG7gj
Wiki-wide: fix cross-page and same-page section links
Same mis-placed-anchor pattern as the Cookbook fix, swept across the
whole wiki: 19 links across 8 pages carried the #anchor on the display
side of the [[...]] pipe (or as a bare [[Section Title]]), so they landed
on the page top instead of the section. Convert each to a markdown link
that honors the fragment, e.g.
[[Architecture: Advanced#high-availability-activestandby|active/standby]]
-> [active/standby](Architecture-Advanced#high-availability-activestandby)
and same-page ones to [text](#anchor). One swapped plain link
([[Configuration: Basics|setting values]]) corrected to
[[setting values|Configuration-Basics]].
Every target anchor verified against a real heading. Not touched: two
double-bracket JSON/SQL examples inside code fences (a separate typo,
flagged for review).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017aV4rcuYnv4rUf3adqG7gj
Architecture: Advanced - add resilient topologies; lead with resilience
Add two topology cards + brand SVGs showing active/standby via a
"shadow" behind the functional services:
- Resilient, scalable, multi-homed (shadow behind mf-core-srvcs)
- Resilient, scalable, fine-grained, multi-homed (shadows behind
mf-session, mf-pubsub, mf-sql, mf-orchestration)
Move Resilience / High availability / Auto-scaling above the topology
cards so the mechanisms are explained before the diagrams that show
them. Rename "From operations, they are the same" ->
"From a monitoring perspective, they look the same". Count four -> six.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Architecture: Advanced - drop AI-tell "shape"; aggregated vs fine-grained
Reword the fixed-capacity card to avoid the flagged noun "shape"
(style-notes) - "Structured like an existing JMS deployment". In the
operations contrast, "one (consolidated)" -> "a few (aggregated)".
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Architecture: Advanced - order topologies by increasing complexity
Move Scalable, multi-homed above the fully-decomposed topology and
rename the latter "Scalable, fine-grained, multi-homed", so the cards
progress consolidated -> fixed-capacity -> scalable -> scalable +
fine-grained.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Architecture: Advanced - move fixed-capacity card up, fix SVG subtitle
Reorder the fixed-capacity, multi-homed card to sit right after
Consolidated (reworded to stand alone, no forward-reference to the
scalable card). Shorten the SVG subtitle so it no longer runs under
the external-data-sources cloud.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Architecture: Advanced - add fixed-capacity, multi-homed topology
New "Fixed-capacity, multi-homed" card and brand SVG: the scalable,
multi-homed layout without mf-dcm, with a fixed pool of three
mf-projector-mds servers on the same plane as core services - the
familiar pool-of-servers shape an existing JMS deployment already has.
Intro topology count three -> four.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Revise What's New; correct slow-consumer mitigation wording
Whats-New: drop section numbers to match the other pages, remove the
AI-toned framing (compatibility "starting point", "three areas worth
an architect's attention"), and reword the monitoring/selector prose.
Slow-consumer mitigation (both Whats-New and Architecture: Advanced):
mitigation splits a consumer's stream across shards and load-balances
where feasible - it does not move content across distribution servers.
Rewrite the Architecture: Advanced mitigation/conflation paragraph and
note that a slow consumer ultimately risks disconnection.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L52U3EycDjN8uLAYL79HJ9
Move Component state to Architecture: Basics
Component state is a foundational lifecycle concept (referenced by Monitoring,
Troubleshooting, Logging), and read orphaned at the tail of Architecture:
Advanced. Move the section - definition, two-phase model, and state diagram -
into Architecture: Basics after "How a request is handled". Retarget the
state-model references (Troubleshooting FAQ, Operations: Monitoring,
How-to-Read) to Basics; trim the Advanced intro; add a state<->role pointer
between the two pages.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L52U3EycDjN8uLAYL79HJ9
Architecture: add "Isolating access by deployment topology"; slow-consumer first
Add a new Architecture: Advanced section on using network segmentation +
reachability-aware orchestration as a per-business-unit isolation and cost
boundary: containment by construction (a compromised BU-network actor has no
route to the data tier, control plane, or other BUs), one central coordinator
with per-tier policies, and a scalable projector tier as the BU's cost
envelope. Order slow-consumer protection ahead of it. Add the reciprocal
pointer from Deployment: Advanced (Flat vs segmented).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L52U3EycDjN8uLAYL79HJ9
Architecture: Advanced - deepen with resilience, auto-scaling, slow-consumer protection
- Resilience: three layers (automatic restart / active-standby / auto-scaling)
as a unifying frame ahead of the active/standby section.
- Auto-scaling: projectors as the scalable unit, container manager, damped
high/low-water scaling, alongside-redundancy, policy-driven, docker=dev/lab
vs k8s=prod.
- Slow-consumer protection & auto-conflation: the shared-path problem,
connection profiling with a learned ceiling, per-connection conflation to
the current value, and load redistribution (rebalance / shard-split) first.
Grounded via the mf-orchestration and mf-push agents; kept at architecture
altitude with all internal/IP detail (mechanism internals, thresholds,
anchored-lifecycle, DataFabric, internal names) deliberately excluded.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L52U3EycDjN8uLAYL79HJ9
Wiki-wide: replace the AI-tell "shape" with topology/arrangement/etc.
"deployment shape(s)" -> "topology"/"arrangement"; "two shapes of API" ->
"kinds"; "the shape your script expects" -> "structure"; "canonical shape
of a subscriber" -> "form"; "production-shaped" -> "production-grade".
Spans Architecture: Advanced, Deployment: Advanced/Basics/Without-Docker,
Glossary, REST API, and the SimpleSubscriber example.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L52U3EycDjN8uLAYL79HJ9
Architecture: Advanced - point topology section to Deployment: Advanced
Complete the diagrams <-> networking loop: the topology section now sends
readers to Deployment: Advanced for how to network/deploy each shape (flat
vs segmented, bind vs advertise, substrate recipes), alongside the existing
Deployment: Basics pointer for choosing a topology.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L52U3EycDjN8uLAYL79HJ9
Architecture: Advanced - use SVG topology diagrams instead of clipped PNGs
The 2x PNG exports were clipped at the bottom (headless-screenshot viewport
height). Reference the self-contained vector SVGs directly instead; drop the
PNGs from the wiki.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L52U3EycDjN8uLAYL79HJ9
Architecture: Advanced - add deployment topologies section (3 branded diagrams)
Embed the consolidated / fine-grained / scalable brand PNGs (copied from
docker-compositions/docs/diagrams, which stays source-of-truth) and frame
the ops-perspective point: same service catalog and gateway API surface in
every topology, so all Operations/REST queries run unchanged; only the
container count, redundancy (active/standby pairs), and projector scaling
differ. Leads into the active/standby section.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L52U3EycDjN8uLAYL79HJ9
Architecture: Advanced - add public component-state lifecycle diagram (trimmed for customers); link from Operations state table
Architecture: Advanced - active/standby high-availability section (behavior + role visibility)
Scaffold Elastic MDS wiki: Home, sidebar, footer, page stubs for the full doc set