[Audit] Fee-collection events are the only handler not wrapped in a transaction, and worker inconsistency compounds UX-visible drift
维护者通常 7 天内回复
@d1a-m3n 已经在做这个了。
开始于 2026年8月29日。
评估
这个 Issue 还没有评估数据。
描述
Filed from the second-wave repository audit (issue 37/100). See the audit summary for full category context.
- Location:
backend/src/workers/soroban-event-worker.ts:1000-1060(handleFeeCollected) - Problem: Unlike every other event handler in the file, this one performs its dedup check and its upsert as two separate top-level
prismacalls instead of oneprisma.$transaction, reopening a TOCTOU window the rest of the file was clearly designed to avoid. - Evidence: No
$transactionwrapper, in contrast to sibling handlers in the same file. - Suggested implementation: Wrap the dedup-check + upsert in
prisma.$transaction, matching the other handlers. - Acceptance criteria: A test simulating two near-simultaneous fee-collected events for the same tx confirms exactly one
StreamEventrow is created. - Difficulty: S
- Expected impact: Closes a duplicate-fee-event race visible to anyone reconciling fee revenue from the API.
- 主要语言
- TypeScript
- 星标
- 18
- 派生
- 250
- 平均合并
- 5 天 5 小时
- 30 天内合并 PR
- 83
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
LabsCrypt/flowfi 的其他 Issue
-
backend points: 150 testing
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 7 天内回复
-
backend points: 150 testing
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 7 天内回复
-
backend points: 150 testing
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 7 天内回复
-
backend points: 150 testing
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 7 天内回复
-
backend points: 150 testing
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 7 天内回复
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 66/100
pingdotgg/t3code#24900 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
inu-appcenter/UNIDorm-web#411 ·
维护者通常 1 天内回复
-
🐛 bug
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 75/100
ranxianglei/billion-context#4720 ·
维护者通常 1 天内回复
-
area:arcade game p3-medium ready-for-agent type:bug
难度 2/5 1-3 小时 新手友好度 82/100
fderuiter/deruiter.dev#2840 ·
维护者通常 1 天内回复