Skip to content

fix(onion): resolve reachability merge conflict in RelayReachability#61

Merged
v0id-byte merged 1 commit into
fix/onion-pr32-review-followupsfrom
codex/fix-code-conflicts-in-pr-#35
Jul 4, 2026
Merged

fix(onion): resolve reachability merge conflict in RelayReachability#61
v0id-byte merged 1 commit into
fix/onion-pr32-review-followupsfrom
codex/fix-code-conflicts-in-pr-#35

Conversation

@v0id-byte

Copy link
Copy Markdown
Owner

Motivation

  • 修复在合并过程中引入的 probe / probeOne 冲突,保证中继可达性探测接口语义清晰且不破坏 SSRF 守卫及缓存策略。
  • 保持对探测结果写缓存的“发起者时间戳”保护,避免陈旧探测结果覆盖新近的 markBad / markProvenForwarder 决策。

Description

  • packages/node/src/relay/reachability.ts 恢复私有 probe(d: RelayDescriptor) 封装并让其委托给现有的 probeOne,以解开合并时的语义冲突。
  • 移除重复/错位的 probeOne 调用,确保 inflight 使用单一探测 promise 并在完成时正确清理。
  • 保留并说明 refresh() 中的“仅当探测发起时间早于缓存时间才写回”的保护逻辑以防止竞态写入。

Testing

  • 运行 corepack pnpm --filter @v0idchain/node run typecheck,Node 包的类型检查通过(成功)。
  • 运行 corepack pnpm -r run typecheck 做递归类型检查时被现有的 packages/web 模块解析问题中断(失败,错误:Cannot find module '@v0idchain/core/browser'),该失败与本次修改无关且在修改前即存在。

Codex Task

@v0id-byte v0id-byte merged commit 62978c3 into fix/onion-pr32-review-followups Jul 4, 2026
2 checks passed
@v0id-byte v0id-byte deleted the codex/fix-code-conflicts-in-pr-#35 branch July 4, 2026 15:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant