Expand messaging, routing, measurement, storage, oracle, and time modules

Add subscription lease release-all and clear, intent router bulk
unregister, bucket rate limit token probe, drive GC stale clear,
oracle feed clear and latest aggregate, and temporal index remove/clear.

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Raven Scott
2026-05-21 02:54:11 -04:00
co-authored by Cursor
parent 105e69eb7b
commit aa2de03538
6 changed files with 83 additions and 0 deletions
@@ -375,6 +375,36 @@ class HyperP2PTemporalIndex extends EventEmitter {
return [...buckets]
}
eventIds () {
return [...this.events.keys()]
}
async removeEvent (id) {
const ev = this.events.get(id)
if (!ev) return false
const buckets = this._getAllBuckets(ev.timestamp)
for (const b of buckets) {
const set = this.timeIndex.get(b)
if (set) {
set.delete(id)
if (set.size === 0) this.timeIndex.delete(b)
}
}
this.events.delete(id)
this.expiryQueue.delete(id)
this.emit('remove', { id })
return true
}
async clearAll () {
const ids = this.eventIds()
let n = 0
for (const id of ids) {
if (await this.removeEvent(id)) n++
}
return n
}
getStats () {
return {
events: this.events.size,