feat(payments): per-plan event rate limits and retention
Mantenedores costumam responder em até 1 dia
@Priyanshubhartistm já está trabalhando nisso.
Desde 21/10/2026.
- #922 de @Priyanshubhartistm — aberto
Avaliação
Esta issue ainda não foi avaliada.
Descrição
Is your feature request related to a problem? Please describe.
Rate limits (limits.event.rateLimits) and retention (limits.event.retention) are global, so a paying subscriber on a premium plan gets the same limits as everyone else. Tiered access (#673) needs these to depend on the sender's active plan.
Describe the solution you'd like
- Plans can define their own event rate limits;
EventMessageHandler.isRateLimiteduses the plan's set for a subscriber and the global set otherwise, keyed the same way as today. - Plans can define their own retention (
maxDays); the maintenance purge applies it per subscriber instead of one global value, keeping the existing kind/pubkey whitelists. - The plan lookup reuses the admission cache so no extra database read happens per event.
- Documentation in
CONFIGURATION.mdand tests for both limit paths, including expiry falling back to the global limits.
Additional context
- Design: #673. Per-plan connection/subscription-count limits are more invasive (adapter level) and left for a follow-up unless maintainers want them here.
- Linguagem predominante
- TypeScript
- Estrelas
- 829
- Forks
- 234
- Merge médio
- 16h 13min
- PRs com merge (30d)
- 74
Preparar o ambiente
- Inclui um Dockerfile ou arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de cameri/nostream
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 83/100
Mantenedores costumam responder em até 1 dia
-
Website
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
Mantenedores costumam responder em até 1 dia
-
[BUG] Upgrade from 2.x: EWMA rate limiter hits WRONGTYPE on sliding-window keys left in RedisAberta
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 55/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
Mantenedores costumam responder em até 1 dia
-
[BUG] LNbits >= 1.0: ISO 8601 time/expiry parsed as unix seconds, paid admissions never confirmedAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 25/100
cameri/nostream#927 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
Todas as issues de cameri/nostream
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
Nimblesite/SharpLsp#468 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
Bundled uv is never updated and trusts the compromised eMudhra certificatesTalvez já em andamento @FabienDanieau assumiu hoje. Abertabug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
-
bg_wait's blocking mode (stopOnAttention: false) is under-documented and effectively undiscoverableAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
nicobailon/pi-subagents#3019 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
db-ux-design-system/core-web#8613 ·
Mantenedores costumam responder em até 1 dia