jonnify·echd /echd/bus

echd — Echo on Encore · E3

The Bus — EchoMQ Supersedes

The platform's events, schedules, and jobs ride one owned Valkey-native protocol — and any runtime that speaks it is a first-class peer.

Vision · real substrate

echd speaks in the present tense over a build ladder. Every module, verb, key, and port named on this page is real; the composition into one standing platform is the vision the ladder builds.

§1

The chapter

docs/echo_mq/specs — emq.1 · emq3.1–3.6 · emq.4 · emq.5

The platform's events, schedules, and jobs ride one owned bus. EchoMQ is a Valkey-native protocol — the braced emq:{q}: keyspace, branded JOB ids, every Lua key declared, the server's clock wherever a lease is touched, the wire fenced at echomq:3.0.0 — organized as twelve command families: admission, scheduling, repeat, claim, retry, flows, groups, batches, locks, metrics, data, lifecycle. Because the protocol is Valkey commands and inline Lua, any runtime that speaks them is a first-class peer: the polyglot seam is proven by a non-BEAM reader standing in the same consumer group as the BEAM consumers, draining the same pending-entries list.

On this bus, Encore's closed primitives are superseded one by one. A topic becomes a retained, replayable stream; a cron entry becomes a registration whose every occurrence is a fresh branded mint, released by the promote pump on the server's clock; a task queue becomes an atomic claim with a lease and a fencing token, rotated fairly across groups by the Metronome — park, don't poll — and drained in bulk by batches. One primitive stays, and the chapter says so in amber: secrets remain platform-native. The workshop re-lands a topic, re-mints a cron, and declares the gap.

§2

The keyspace

hover a surface
One bus, one braced root · the surfaces under emq:{q}: · hover to read
emq:{q}: one braced root streams — XADD · XREADGROUP · XACK · XAUTOCLAIM retained · replayable · at-least-once ⇐ PubSub the schedule set — enqueue_at / enqueue_in · Repeat each occurrence a fresh mint · the Pump promotes ⇐ cron claims — lease on the server clock · attempts fence fair lanes + the Metronome · batches @bclaim ⇐ task queues wire echomq:3.0.0 · Valkey 9 on :6390 · a non-BEAM reader in the same group secrets — the honest gap · stays platform-native
Streams — PubSub, superseded. A topic is a log: XADD appends in mint order, consumer groups read with XREADGROUP, acknowledge with XACK, and the dead are reclaimed with XAUTOCLAIM. Retention is policy — trim by length or by minimum id — and deep history folds onward to the archive of E5.
The scheduler — cron, superseded. A schedule is a visibility fence over the schedule set: work scored by its run-at, registrations that mint a fresh branded id per occurrence, and a supervised pump that releases due work through the promote verb — on the server's clock, never the caller's.
Claims — task queues, superseded. Work is claimed, not taken: one atomic move sets the lease with the attempts counter as the fencing token; retry backs off; fair lanes rotate groups with the Metronome — park, don't poll; batches claim in bulk with a per-item verdict.
The wire — why polyglot holds. The protocol is Valkey commands and inline Lua behind the echomq:3.0.0 fence — no runtime in the middle. The conformance suite proves the seam: a non-BEAM reader stands in the same consumer group and drains the same pending list.
The gap — secrets stay platform-native. No bus surface supersedes Encore's secrets. The nearest owned ground is config distribution — latest-value-per-key reads on the stream tier — and that is config, not secrets. The workshop's third move declares the gap; the declared gap is what keeps the other three claims credible.

Hover or focus a surface to read it; click to pin. Without scripting, all five read in sequence.

§3

The modules

E3.1–E3.4

← Back to chapters

§4

Doors

the sibling courses
§5

References

sources · related

Sources

Related