cruldra
|
4094ffa49e
|
✨ feat(vscode): 审查列可以手动标记为通过
|
2026-10-04 10:01:41 +08:00 |
|
chehongweo
|
a34d7d3f4d
|
🐛 fix(vscode): 可靠捕获并补回审查会话关联
|
2026-10-02 01:19:11 +08:00 |
|
chehongweo
|
3621729367
|
🐛 fix(vscode): 会话终端直接拉起 claude/codex,不再往 shell 里打命令,启动命令不再污染 zsh 历史
新建工单、实施、审查、测试、原型、续聊、冲突解决、会话管理和各种恢复会话,
都改成开终端时直接指定要跑的程序(用户默认 shell 以 -ilc 'exec "$@"' 拉起),
环境变量照常加载,参数原样传入。程序退出时标签页随之关闭。
提示词和配置文件路径里带单引号也不再拒绝执行,相关的转义和拦截全部删掉。
|
2026-09-29 04:40:35 +08:00 |
|
cruldra
|
7d70783b32
|
🐛 fix(vscode): 工单先建好也补上头脑风暴会话
|
2026-09-28 19:10:37 +08:00 |
|
cruldra
|
6342f39de0
|
✨ feat(vscode): 审查列可以申请同事移交工单
|
2026-09-28 00:17:09 +08:00 |
|
cruldra
|
2b823a32ca
|
✨ feat(vscode): 代码阅读入口、文件树与预览编辑器
|
2026-09-24 21:36:00 +08:00 |
|
cruldra
|
d604b6f426
|
✨ feat(vscode): 五种会话 id 行都能用橡皮擦清除本机记录,别的机器上的旧会话不再挡着新起
|
2026-09-24 19:29:39 +08:00 |
|
cruldra
|
7bac5c8b03
|
✨ feat(vscode): 七份提示词统一走 Handlebars,头脑风暴三档合一
- 模板引擎换成 Handlebars(noEscape,提示词是纯文本不能被转义),单花括号写法彻底退场
- brainstorm-continue / brainstorm-continue-prototype 两份并进 brainstorm.md,
用 {{#if issueNumber}} 分新建 / 续聊,续聊里用 {{#if prototypeFile}} 嵌原型段落,
设置面板对应的两个 textarea 一并删掉
- 模板上下文 = 工单 state JSON 全量字段 + issueNumber / userRequest / nonce /
planFile / prNumber / prRef,以后模板想用新字段不用改扩展代码
- 各会话入口共用一条 state 读取路径,读失败只记 warn 按空状态继续,不拦开会话
- 升级后首次启动把存量自定义提示词迁到双花括号并合并成一份,改写前把
settings.json 备份成 settings.json.bak-<时间戳>,迁移动作全写日志
- 装 handlebars 时给 vsce 传递依赖的老 semver 加 trustPolicyExclude 豁免,
否则 no-downgrade 策略卡住整个装包
Claude-Session: https://claude.ai/code/session_01Kgmb1LvrPmFX3NoUDB4zZC
|
2026-09-15 00:44:28 +08:00 |
|
cruldra
|
142af57d9d
|
✨ feat(vscode): 工单挂原型插件,详情面板一键导入 Figma
- prototypeFile 走通 state → Issue → webview 全链路(gitea/youtrack 两个
loader、两份 KNOWN_STATE_FIELDS、issue/patch、webview types),按 planFile
同款当共享字段;路径校验换成 .json 版,允许绝对路径
- 详情面板「计划文件」下加「原型插件路径」行:双击开 manifest.json,
行尾按钮「在 Figma 中导入并打开」;没挂插件时只显示空态
- src/figma/:把 manifest 写进 Figma 桌面版的 localFileExtensions 再拉起
Figma。坑是 Figma 退出会用内存状态覆盖 settings.json,所以写之前先
osascript 优雅退出并轮询等它真没了(10s 等不到就让用户手动关,不强杀);
写前备份 settings.json.bak-<时间戳>;已导入过就跳过写入直接打开;
非 macOS 只把路径复制到剪贴板
- webhook 里 spec/plan 的 marker 同步改成表驱动,顺带认第三种 prototype
- 提示词:prototype.md 要求画完挂 marker;brainstorm-continue.md 新增
{prototypeRef} 占位符,有原型插件时让续聊先读它别从零重画,没有时
连同整段抹掉
Claude-Session: https://claude.ai/code/session_01Kgmb1LvrPmFX3NoUDB4zZC
|
2026-09-15 00:11:49 +08:00 |
|
cruldra
|
b62e58d739
|
✨ feat(vscode): 新增第五种工单会话「原型会话」
照测试会话那条链路补一份 prototype:
- 消息与路由:session/start-prototype、session/resume-prototype、
issue/update-prototype-profile-path,都进只读门禁
- 会话:handleStartPrototypeSession / handleResumePrototypeSession,
终端名 issue-N-原型;cwd 有 worktree 用 worktree、没有退主仓库根
(原 resolveTestSessionCwd 改名 resolveWorktreeOrRootCwd 两种会话共用)
- 不要求有 PR,任何阶段都能起;前置工单锁仍然拦
- 提示词:新增 prompts/prototype.md,设置里可改,占位符 {issueNumber}
- profile:工单级 prototypeProfilePath > 设置里的原型默认 profile >
内置默认,与其它会话互不回退
- 状态字段 prototypeSessionId / prototypeProfilePath / prototypeTabOpen
贯通 gitea、youtrack、本机 state 与移交包
- 详情面板加「原型会话id」「原型配置文件」两行,设置面板加对应两项
Claude-Session: https://claude.ai/code/session_01Kgmb1LvrPmFX3NoUDB4zZC
|
2026-09-14 10:20:30 +08:00 |
|
cruldra
|
70b826123c
|
⚡ perf(vscode): 开会话去掉多余远程往返,spinner 跟随真实进度
开会话原先要先全量拉工单(含每张工单的评论、依赖、PR)做前置锁检查,
再各读一次 state JSON 给 pre-create 钩子和终端图标,几秒后才 createTerminal。
- 锁检查改用主进程已算好的工单快照,快照里没有该工单才回落全量拉取
- state JSON 一次读两处用,且提前发起与本地准备重叠
- 会话行 spinner 由扩展的 session/tab-settled 消息驱动,不再是固定 1.5s 假动画,
消息丢失时 60s 超时兜底
Claude-Session: https://claude.ai/code/session_01Kgmb1LvrPmFX3NoUDB4zZC
|
2026-09-13 10:14:48 +08:00 |
|
cruldra
|
5bfd759822
|
✨ feat(vscode): 头脑风暴会话可清除,悬停提示改窄改紧凑
工单记着的头脑风暴会话 id 此前没有清除入口,续聊只能 resume 旧会话,
把几个版本前的提示词和它当时报的错一起带回来。会话 id 行新增清除按钮,
确认后把 state JSON 的 sessionId 置空,下次续聊新开会话;会话文件不动,
手上有 id 仍可 claude --resume 找回。
悬停气泡此前贴着视口右边测量尺寸:fixed 元素的可用宽度是「视口宽 - left」,
贴边测会被挤窄、行数变多,按那个高度定位就浮高一截。改成先在左上角量再落位,
字号行高收紧,提示文案压成一行。顺带修掉「重置为待办」的错误说明——它会停
会话、删 worktree 和未合并 PR,不是原样保留。
Claude-Session: https://claude.ai/code/session_01REdhpbaNyqWASF2HWsnTFv
|
2026-09-13 09:21:53 +08:00 |
|
cruldra
|
958c59e090
|
✨ feat(vscode): 设置面板可配头脑风暴/实施/测试会话的默认 profile
三类会话的 profile 此前只有工单级字段,留空就硬编码落到 official,
想整体换模型只能一个工单一个工单改。
设置面板新增三个下拉,与冲突解决/提交/改动说明的 profile 选择同区。
解析链路变成:工单级字段 > 对应的全局默认设置 > getDefaultProfilePath(),
三类之间仍互不回退。新建工单的头脑风暴会话也走同一条链路。
Claude-Session: https://claude.ai/code/session_01REdhpbaNyqWASF2HWsnTFv
|
2026-09-13 08:59:56 +08:00 |
|
cruldra
|
a68caf5f6e
|
⚡ perf(vscode): 看板打开先出快照、评论只拉末页
|
2026-09-01 07:09:55 +08:00 |
|
cruldra
|
b363e08ef9
|
✨ feat(vscode): 发布按钮扩展侧 handler,删除分支同步
Claude-Session: https://claude.ai/code/session_01HTMgwaE3woqM5yvsHiuSAa
|
2026-08-31 23:41:03 +08:00 |
|
cruldra
|
6f59b4f3fd
|
♻️ refactor(vscode): 设置项 autoBuildBranch 换成发布分支前缀与 Jenkins 任务
Claude-Session: https://claude.ai/code/session_01HTMgwaE3woqM5yvsHiuSAa
|
2026-08-31 23:38:53 +08:00 |
|
cruldra
|
dae1232f19
|
🎨 style(vscode): 清零 lint 欠账
非纯格式的改动:
- logger:info 级日志原先走 console.log(no-console 禁止),改为通过 VS Code
LogOutputChannel(Output 面板 "Superpowers")输出 info/warn/error,并在
activate 时注册 dispose
- esbuild.mjs:顶层 await 收进 async main(),失败时退出码 1;构建脚本打印
进度属正当输出,文件级关闭 no-console 并注明原因
- KanbanPanel 资源路径正则:去掉 `\.\/[^"]+` 分支(已被 `[^"/][^"]*` 完全
覆盖),匹配结果不变
- webhook/server:onError/onListening 互相引用,改为函数声明消除先用后定义
- SettingsModal:删掉针对未启用规则 react-hooks/exhaustive-deps 的失效
disable 注释,effect 依赖 [open] 保持不变(按打开时机重置表单是有意的)
- issues.ts 提示词里两处全角空格换成普通空格
- 其余为 node:process / node:buffer 显式导入与 switch 拆行
Claude-Session: https://claude.ai/code/session_01HTMgwaE3woqM5yvsHiuSAa
|
2026-08-31 22:33:11 +08:00 |
|
cruldra
|
443a8e472a
|
✨ feat(vscode): 改动说明 profile 可配置
|
2026-08-28 06:38:02 +08:00 |
|
cruldra
|
6d3720d424
|
🐛 fix(vscode): 完成列归档会话改为整包搬迁并清理重复 sid
Claude-Session: https://claude.ai/code/session_011cEyL6k351U2BzX1Qmygph
|
2026-08-26 16:33:54 +08:00 |
|
cruldra
|
6c05b7f7e3
|
✨ feat(vscode): 支持重置回待办并修好待办依赖拖拽
|
2026-08-25 18:53:55 +08:00 |
|
cruldra
|
c9eaca2904
|
🐛 fix(vscode): 状态分层读侧补漏——四处 handler 改走 readIssueState 叠加本地状态
|
2026-08-19 17:01:05 +08:00 |
|
cruldra
|
faf227412e
|
✨ feat(vscode): 多人协作二期:状态分层/写校验/签名/团队视图
- 本机状态(会话id/worktree/profile/prDiffFile)迁 workspaceState,
共享 state JSON 只留团队字段;读侧本地记录叠加,旧数据兜底
- mergeStateJsonComment 写后读回校验,并发覆盖时在最新状态上重放一次
- webhook 支持 Gitea secret,校验 X-Gitea-Signature(HMAC-SHA256),
不匹配 401;设置面板新增 Webhook Secret 字段
- 看板新增 我的/全部 范围切换(团队视图),按工作区持久化
|
2026-08-19 00:32:06 +08:00 |
|
cruldra
|
a9e4d6e9b9
|
🐛 fix(vscode): issue/patch 用 null 清空 worktree 字段以便 webview 即时刷新
|
2026-08-05 14:08:03 +08:00 |
|
cruldra
|
29aaabdabf
|
🐛 fix(vscode): 完成列/删 worktree 时自动杀掉占用进程再删目录
|
2026-08-05 13:31:00 +08:00 |
|
cruldra
|
0d078e848c
|
11
|
2026-07-31 06:52:09 +08:00 |
|
cruldra
|
8d00676bba
|
11
|
2026-07-24 14:26:56 +08:00 |
|
cruldra
|
aff4ee2758
|
🐛 fix(vscode): 删 worktree 前扫 /proc 检测进程占用,命中则中止清理
dev server 常驻在 worktree 里持续写构建产物,递归删除与写入竞态导致
rmdir 撞 ENOTEMPTY。新增 findProcessesUsingWorktree 扫 /proc 找 cwd 或
fd 落在 worktree 下的进程,三处删除调用点(拖到完成列 / 手动删 / 删整工单)
命中即弹错误 toast 列出 pid+命令并中止(不删、不杀进程),用户停掉后重试。
非 Linux 无 /proc 返回空,降级为原直接删除。
|
2026-07-13 09:26:23 +08:00 |
|
cruldra
|
b585016cd7
|
✨ feat(vscode): 头脑风暴 profile 独立 + codex 命令统一组装收尾
- 头脑风暴/实施/测试会话 profile 彻底独立,互不回退,各自空值回落默认
- 新建工单弹窗的 profile 选择改为头脑风暴专用 brainstormProfilePath
- 详情面板新增「头脑风暴配置文件」下拉
- 删除从未接线的死代码 reviewFlow.ts(runReview 全仓库无调用方)
- codexCommand 精简为仅 resume/interactive 两种终端命令形态
- 版本号 0.2.55 → 0.2.60
|
2026-07-13 07:50:39 +08:00 |
|
cruldra
|
7b4f737ce5
|
✨ feat(vscode): 冲突解决会话 profile 可在设置面板配置
|
2026-07-09 08:41:58 +08:00 |
|
cruldra
|
f39e61aa7f
|
✨ feat(vscode): 手动删除 worktree 时连同 feature 分支一起删(本地+远程)
抽出共享 cleanupFeatureBranch(handlers/branchCleanup.ts):受保护分支跳过、
远程走 gitea API、本地强删(git branch -D),全程 best-effort 只记日志。
「拖到完成」的分支清理改为复用它(71 行 → 12 行);handleDeleteWorktree 在
删完 worktree 目录后同样调用它,确认框与完成提示带上分支名。
放在 handlers 层而非 git/branchSync.ts:后者刻意不依赖 vscode(有单测覆盖
deleteLocalBranch),本函数需 logger(→vscode)+ gitea API。
|
2026-07-08 19:05:48 +08:00 |
|
cruldra
|
235cd9ea65
|
🐛 fix(vscode): worktree 清理改 rm -rf + prune,绕开 gitignored 产物导致的目录非空
git worktree remove 只删跟踪文件+admin 注册,不删 .next/node_modules 等 gitignored 产物,删完残留把目录撑住、最后 rmdir 撞 ENOTEMPTY。新增 removeWorktreeDir(带路径护栏的递归强删 + git worktree prune),替换 3 处 worktree remove 调用点。
|
2026-07-08 11:48:23 +08:00 |
|
 cruldraandClaude Opus 4.8
|
7be4e38620
|
♻️ refactor(vscode): claude 会话命令收口到 buildCcCommand 并移除已卸载的 serena --system-prompt
9 处手拼的 claude 启动命令(managedSessions/sessions/issues)统一改用新增的
cc/ccCommand.ts:buildCcCommand({ profilePath, effort?, resumeSessionId?, prompt? }),
去掉各处重复的 --system-prompt="$(serena prompts ...)"(serena 已卸载)。
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
2026-06-25 00:57:29 +08:00 |
|
 cruldraandClaude Opus 4.7
|
5e7a3d20d9
|
🐛 fix(vscode): worktreePath 消费侧统一解析 ~/绝对/相对,修复带 ~ 的存量工单与绝对路径 worktree 误判
新增 resolveWorktreePath(stored, workspaceRoot) 三态合一解析:开头 ~ 展开为 home、
已是绝对原样、相对拼到 workspaceRoot。替换全部消费点,原先「判 isAbsolute 再 join」
不认 ~、issueLoader 算 worktreeExists 更是裸 join 连绝对路径都拼坏。
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
2026-06-24 03:01:08 +08:00 |
|
cruldra
|
e6f1776d4f
|
11
|
2026-06-23 05:02:15 +08:00 |
|