Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[Admin Console]: Relay operations v2 (history, diagnostics, advanced NIP-66)

未关闭
#688 0 条评论 0 个 reaction 已指派 1 人 在 GitHub 查看

维护者通常 1 天内回复

@Ferryx349 已经在做这个了。

开始于 2026年7月15日。

评估

这个 Issue 还没有评估数据。

描述

Admin Console enhancement

Context

#669 delivers the first end-to-end NIP-66 monitor:

  • shared probe engine
  • relay-monitor worker
  • basic kind 30166 / 10166 publishing
  • latest network-health snapshot in admin

This issue is the next phase: turns that foundation into a practical relay operations layer.

Problem

After #669, operators can see a current health snapshot, but they still cannot easily:

  • track failures over time
  • compare advertised relay behavior vs measured behavior
  • inspect mirror/worker/NIP-05/storage health from one place
  • audit admin actions or receive alerts when things break

Goal

Extend the admin console into an operations platform without redoing #669.

Scope

1) Advanced NIP-66 telemetry
  • Add rtt-read and rtt-write probes
  • Detect NIP-42 auth requirements where applicable
  • Enrich kind 30166 tags (rtt-read, rtt-write, N, R, k, optional NIP-52 g)
  • Add NIP-11 vs probe mismatch warnings (auth, limits, public URL mismatch)
  • Monitor peer relays from mirroring.static[]
2) Network Health operations
  • Persist bounded probe history
  • GET /admin/network-health/history
  • Optional POST /admin/network-health/probe (manual trigger + audit entry)
  • History charts/timeline in dashboard
  • nip66.* controls in settings editor (interval, targets, timeouts, retention)
3) Ops visibility panels
  • Mirror Health: connection state, reconnects, last event, lag/failure reason
  • Worker Ops: maintenance / mirroring / relay-monitor status and last run
  • NIP-05 Verification: search/filter, age, failures, manual re-verify
  • Storage (NIP-45 COUNT): counts by kind/time range, retention impact
  • Tor/I2P visibility and explicit .onion DNS-skip behavior
4) Trust and automation
  • Append-only audit log (login, settings changes, manual probes, webhook config)
  • Outbound webhooks: probe.failed, probe.recovered, ssl.expiring, mirror.disconnected
  • OpenTelemetry probe/mirror metrics
  • Redacted diagnostics export bundle (version, sanitized config, recent health, worker state)

Out of scope (handled by #669)

  • Initial probe engine implementation
  • First relay-monitor worker
  • First publish path for kind 30166 / 10166
  • First GET /admin/network-health latest snapshot endpoint
  • First basic Network Health panel

Important constraint

Self-hosted probing validates public URL/DNS/TLS/routing from the relay’s own network location.
It is useful for operators, but not a substitute for independent external monitors.
UI and published NIP-66 data must label monitor identity/location and avoid presenting one monitor as authoritative.

Relevant NIPs

  • NIP-66 (advanced monitor/discovery tags)
  • NIP-11 (advertised vs observed mismatch checks)
  • NIP-42 (auth probing)
  • NIP-52 (optional geohash)
  • NIP-45 (storage counts)
  • NIP-05 (verification visibility)
  • NIP-65 (monitor bootstrap continuity)

Dependencies

  • #669 (NIP-66 foundation)
  • Admin metrics SSE and dashboard groundwork
  • Admin settings editor groundwork

Success criteria

  • Operators can diagnose recurring DNS/TLS/WS/mirror/worker issues without SSH/SQL
  • Probe history and mismatch warnings are visible in admin
  • Admin mutations and manual probes are auditable
  • Alerts are opt-in, reliable, and never expose secrets
  • Nostream publishes richer NIP-66 data compatible with client aggregation models
主要语言
TypeScript
星标
829
派生
234
平均合并
4 天 5 小时
30 天内合并 PR
22

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

cameri/nostream 的其他 Issue

查看 cameri/nostream 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。