makecindy / makecindy/cindy

[Bug] Slack /new 命令被旧 Cindy-Maker 应用接管,无法作用于新版 Cindy 会话

Open
#286 1 comment 0 reactions 0 assignees View on GitHub
bug
Dominant language
TypeScript
Stars
2.7k
Forks
395
Avg merge
21h 48m
Merged PRs (30d)
776

Description

**提交人**: yangzhen1
**客户端版本**: 0.1.7

---

## 问题描述

新版 Cindy Slack 集成已成功绑定,并且普通消息可以正常发送到 Desktop、由新版 Slack 应用 **Cindy** 回复。

但在同一 Slack 会话中输入 `/new` 后,命令响应来自旧应用 **Cindy-Maker**,而不是新版 **Cindy**。由于两个 Slack 应用的绑定状态不共享,Cindy-Maker 随后错误提示“没有绑定 Cindy 设备”,导致用户无法通过 `/new` 新建/归档当前会话。

## 复现步骤

1. 在 Desktop 中完成新版 Cindy Slack 集成的绑定。
2. 冷启动 Desktop,并确认 Slack Hook 已连接。
3. 在已绑定的 Slack 会话中直接发送一条普通消息。
4. 确认普通消息能够被新版 **Cindy** 正常处理和回复。
5. 在同一会话中输入 `/new` 并发送。
6. 观察命令响应的应用身份及提示内容。

## 实际行为

- 普通消息由新版 **Cindy** 回复,消息链路正常。
- `/new` 的回复者变成旧应用 **Cindy-Maker**。
- Cindy-Maker 提示当前“没有绑定 Cindy 设备”,即使新版 Cindy 实际已经绑定。
- Desktop 日志中可以看到普通消息对应的 `task.dispatch`,但执行 `/new` 后没有收到预期的 `session.archive`,说明命令没有进入当前新版 Cindy 的链路。

## 预期行为

- `/new` 应明确归属并发送给新版 **Cindy** Slack App。
- 新版 Cindy 已绑定时,`/new` 应正常作用于当前 Desktop 会话,并触发对应的会话归档/新会话流程。
- 不应因旧 Cindy-Maker 的独立绑定状态而错误提示“没有绑定 Cindy 设备”。

## 初步判断

可能存在 Slack slash command 的应用归属/同名命令冲突:

- Slack 的 `/new` 候选默认选中了旧 Cindy-Maker;或
- 新版 Cindy Slack App manifest 尚未注册 `/new`;或
- 安装新版 Cindy 后,旧 Cindy-Maker 的同名命令仍优先接管请求。

## 建议验收标准

- [ ] `/new` 明确归属新版 Cindy Slack App。
- [ ] 安装或绑定新版 Cindy 后,Slack 不会默认把 `/new` 发送给旧 Cindy-Maker。
- [ ] `/new` 成功后,当前 Desktop 收到并处理对应的 `session.archive`。
- [ ] 检测到旧应用同名命令冲突时,提供明确的迁移、选择或卸载提示。
- [ ] 文档说明如何在 Slack 命令候选中识别正确的 Cindy 应用。

## 补充材料

截图由报告者后续在 issue 中补充。
---
**OS**: win32 x64 (10.0.19045)
**界面语言**: zh-CN

Contributor guide

Open the contributing guide

Research direction

No files or tests are named. Start by tracing the Slack slash-command registration and /new handler, then compare the Cindy and Cindy-Maker command ownership and the path that should emit session.archive. Done means /new is routed to Cindy, archives the current Desktop session, and gives a clear response when the legacy command conflicts.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
api, backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.