mirror of
https://github.com/NanmiCoder/cc-haha
synced 2026-07-17 13:13:35 +08:00
Address two production issues in the AttachmentStore: 1. TOCTOU race in resolvePath() — concurrent downloads with same filename in the same millisecond could collide. Fixed by appending a 6-char random suffix to the timestamp-based path, ensuring millisecond-level collisions never occur. 2. Orphan .part files from crashed writes never cleaned up. Fixed by extending gc() to recognize .part files and clean them with a shorter grace period (10 minutes by default) rather than the normal retention window. Added two test cases covering heavy collision pressure and .part cleanup. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Claude Code IM Adapters
当前目录只放 IM Adapter 运行时代码。
用户文档已经迁移到 docs/,并且以 Desktop Webapp 配置流程为准:
docs/im/index.mddocs/im/telegram.mddocs/im/feishu.md
当前方案摘要
当前真实链路是:
Desktop Webapp Settings
-> /api/adapters
-> ~/.claude/adapters.json
-> adapters/<platform>/index.ts
-> /api/sessions + /ws/:sessionId
-> Claude Code session
注意两点:
- IM 配置和配对都在 Desktop Webapp 的
Settings -> IM 接入 - Webapp 不会自动启动 Adapter 进程,仍需手动运行
bun run telegram或bun run feishu
快速启动
cd adapters
bun install
bun run telegram
# 或
bun run feishu
开发
运行测试
cd adapters
bun test
bun test common/
bun test telegram/
bun test feishu/
目录结构
adapters/
├── common/
├── telegram/
├── feishu/
├── package.json
├── tsconfig.json
└── README.md