新增项目级 skill:.codex/skills/scope-discipline(只做用户明确要求的事;改完自动重启并确认进程活着)

This commit is contained in:
tianmo committed 2026-10-16 16:10:49 +08:00
1 parent ee1f2a2ced
commit b8fe2f98d1
1 file changed
+40
+40
View File
@@ -0,0 +1,40 @@
---
name: scope-discipline
description: 在本仓库(Spine 3.8.99 编辑器"面板加功能")里动手改代码前必读:只做用户明确要求的那一件事,严禁擅自换设计、绕开问题、顺手加功能;改完必须自己重启编辑器并确认进程活着。当用户说"我没让你做这个""只修 X""重启一下"时也适用。
---
# 只做被要求的事(本仓库纪律)
用户明确要求过:**严禁做没说过的事**。这条优先于"顺手改进""更优雅的实现""顺便修一下"。
## 动手前先划范围
1. **只改被点名的那一个问题**。例:用户说"列表不能滚动" —— 就只修滚动,
不允许改成分页、换控件、重构布局来绕开。
2. **不加用户没要的 UI / 功能 / 入口 / 自动化**。想加先问。
3. **不改已确认的约定**:面板文字一律英文;`skeleton` 可删、`root` 不可删;动作只作用于当前选择。
4. 修 bug 时不顺手改相邻行为;确需动到时保持最小改动,并在回复里点明"我动了 X,因为 Y"。
5. 用户没要求重构 / 改名 / 整理时,不做。
## 改完必做
1. 编译:`JAVA_HOME=/tmp/jdk-17.0.20.1+1/Contents/Home ./viewpanel/build.sh`
2. 重启并**确认活着**(不要只杀不启,也不要让用户自己点):
```bash
./viewpanel/run.sh
sleep 20; pgrep -f com.spineview.Launcher | wc -l # 期望是 1
```
启动必须用 `python subprocess.Popen(..., start_new_session=True)`(`run.sh` 里已这么做);
**不要用 `nohup … &`**:进程会挂在会话下,会话一结束就被收掉(踩过)。
3. 单独提交,提交信息写清"做了什么、为什么"。
## 报告方式
- 先给结果(进程 pid、日志关键行、能不能跑),再讲原因。
- 不确定就写"未定",不要猜;给结论要带出处(`file:line` 或 `javap -c` 证据)。
- 用户要自己手测时,只给入口/按钮,不替他下结论。
## 相关文件
- 调研结论与 API 对照:`编辑器交互与数据API.md`、`混淆名对照表.md`
- 重启入口:`viewpanel/run.sh`、`viewpanel/重启编辑器.command`