Files
modules/scheduling-queues/hyper-p2p-cron-gossip
Raven ScottandCursor 713a450f2f feat(consensus,routing,scheduling): manually expand coordination and path modules
- leader-lease: renew, resign, isLeader, followers, lease expiry helpers
- quorum-pool: autoResolve, cancel, listVotes, member remove, TTL proposals
- raft-lite: requestVote, stepDown, logSlice, advanceCommit
- pattern-router: middleware chain, priority routes, routeBatch
- merge-registry: bulkRegister, diff, watch, publishSnapshot, tombstones
- cron-gossip: pause, resume, forceFire, nextDue
- topic-lease: extend, conflicts, allHolders

Co-authored-by: Cursor <[email protected]>
2026-05-21 02:14:41 -04:00
..
2026-05-20 23:36:32 -04:00
2026-05-20 23:36:32 -04:00
2026-05-20 22:56:32 -04:00
2026-05-21 00:07:44 -04:00
2026-05-20 21:57:50 -04:00
2026-05-20 21:57:50 -04:00
2026-05-20 23:36:32 -04:00

hyper-p2p-cron-gossip

Distributed cron scheduling with local tick() and remote cron-fire gossip.

Category: Scheduling & queues · Protocol: cron-gossip/v1

When to use

Cluster-wide periodic tasks, @every intervals, or classic five-field UTC cron strings shared on a topic.

When not to use

Sub-second precision timers, single-process setInterval only, or durable job queues (use deadline/activity queues).

Quick start

const { HyperP2PCronGossip } = require('hyper-p2p-cron-gossip')
const cron = new HyperP2PCronGossip({ topic: process.argv[2] })
await cron.ready()
cron.schedule('@every 5s', 'heartbeat')
setInterval(() => cron.tick(), 1000)

Docs

docs/api.md · docs/architecture.md

Test

npm install && npm test · bare examples/basic.js [topic]