[Admin Console]: Relay operations v2 (history, diagnostics, advanced NIP-66)
維護者通常 1 天內回覆
@Ferryx349 已經在處理了。
開始於 2026年7月15日。
評估
這個 Issue 還沒有評估資料。
描述
Context
#669 delivers the first end-to-end NIP-66 monitor:
- shared probe engine
- relay-monitor worker
- basic kind
30166/10166publishing - 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-readandrtt-writeprobes - Detect NIP-42 auth requirements where applicable
- Enrich kind
30166tags (rtt-read,rtt-write,N,R,k, optional NIP-52g) - 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
.onionDNS-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-healthlatest 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
- 平均合併
- 2 天 10 小時
- 30 天內合併 PR
- 24
環境準備
- 提供 Dockerfile 或 Docker Compose 檔案
- 有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
cameri/nostream 的其他 Issue
-
難度 2/5 1-3 小時 新手友好度 72/100
維護者通常 1 天內回覆
-
feat(admin): bounded NIP-66 probe history and Network Health timeline可能已有人在做 @Ferryx349 於 4 天前認領。 未關閉Admin Console enhancement
cameri/nostream#800 · 已指派 1 人 ·
維護者通常 1 天內回覆
-
Store relay settings overrides in PostgreSQL (SETTINGS_BACKEND=db)可能已有人在做 @Ferryx349 於 37 天前認領。 未關閉enhancement
cameri/nostream#757 · 已指派 1 人 ·
維護者通常 1 天內回覆
-
feat(nip85): Web-of-Trust spam mitigation engine可能重新可做 @Ferryx349 於 67 天前認領,目前沒有進行中的 PR。 未關閉enhancement
cameri/nostream#720 · 已指派 1 人 ·
維護者通常 1 天內回覆
-
feat(nip96): native HTTP media storage pipeline可能重新可做 @Ferryx349 於 67 天前認領,目前沒有進行中的 PR。 未關閉enhancement
cameri/nostream#719 · 已指派 1 人 ·
維護者通常 1 天內回覆
相似的 Issue
-
area:tui enhancement platform:macos
難度 2/5 1-3 小時 新手友好度 66/100
anthropics/claude-code#101490 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 66/100
netlify/netlify-mcp#75 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 78/100
atlassian-labs/compiled#1960 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 75/100
pnp/cli-microsoft365#7639 ·
維護者通常 2 天內回覆
-
nextjs-tracking
難度 2/5 1-3 小時 新手友好度 74/100
cloudflare/vinext#3887 ·
維護者通常 1 天內回覆