@coralai/sps-cli 0.89.6 → 0.89.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,9 +6,18 @@
6
6
  * **worker 自己的系统提示**(仅 worker、一次/会话、resume 重水合)。与 gameforge 的
7
7
  * Output Style 人设、`<memory>` 指针分走不同通道、互不覆盖(已实测共存)。
8
8
  * 设计见 docs/design/claudemd-agent-config-layout.md §3。
9
+ *
10
+ * 🔴 **禁令与可执行配方并存时,配方赢** —— 配方具体、可直接照抄,禁令是抽象的。
11
+ * 本文件曾同时写着「Do NOT explore \`~/.coral/projects/...\`」和一条就落在那个目录下的
12
+ * marker 文件具体路径 ⇒ 作用域禁令被自己的配方架空(worker 照抄路径去读,顺带可以翻邻居项目)。
13
+ * ⇒ **凡给出可执行配方(具体路径/命令/可照抄的代码)的地方,必须自带适用范围。**
14
+ * 判据只看单行,不依赖"能同时看到全部禁令" —— 因为注入是四通道
15
+ * (CLAUDE.md 基座 / Output Style 人设 / 本文件 / 记忆指针),
16
+ * 禁令与配方可能落在不同通道里,那时逐文件读每份都对、拼起来才互相架空。
17
+ * 门禁见 spsWorkerRules.test.ts。
9
18
  * @layer core
10
19
  * @boundedContext agents
11
20
  */
12
21
  /** 追加进 SPS pipeline worker 系统提示的执行规则(agent 无关,凡 SPS 派的 worker 都适用)。 */
13
- export declare const SPS_WORKER_RULES = "## SPS pipeline worker \u2014 operating rules\n\n- Work only in the current project directory. Do NOT read or modify files outside it,\n and do NOT explore `~/.coral/projects/...` or other system paths.\n\nThis project is driven by SPS (Smart Pipeline System). Each card is a task. Two env vars\nidentify your stable context (POSIX freezes env at spawn, so per-card info is NOT in env):\n- `$SPS_PROJECT` \u2014 project name (stable across card reuse)\n- `$SPS_WORKER_SLOT` \u2014 worker slot name (stable across card reuse)\n\nFor the CURRENT card's info (id/stage/title), read the marker file\n`~/.coral/projects/$SPS_PROJECT/runtime/worker-$SPS_WORKER_SLOT-current.json`\nor run `sps card dashboard $SPS_PROJECT`.\n\nCard lifecycle is managed **automatically by hooks** \u2014 you do NOT update card state, move\ncolumns, or commit on behalf of the pipeline:\n- `AI-PIPELINE` admission mark \u2192 `CLAIMED` on slot claim \u2192 `STARTED-<stage>` on prompt submit\n (UserPromptSubmit ACK; missing within WORKER_ACK_TIMEOUT_S \u2192 ACK-TIMEOUT kill+retry) \u2192\n `COMPLETED-<stage>` on turn end (Stop hook advances the card).\n\n**Honesty**: if you declare \"done\" without actually implementing the work, the pipeline still\nadvances (the Stop hook fires regardless). The user relies on your honesty here.\n\n**Git**: Claude handles all git operations itself; SPS does not intervene in git workflows or\nconflict resolution.";
22
+ export declare const SPS_WORKER_RULES = "## SPS pipeline worker \u2014 operating rules\n\n- Work only in the current project directory. Do NOT read or modify files outside it,\n and do NOT explore `~/.coral/projects/...` or other system paths.\n **Exactly one exception exists** \u2014 the single marker file named below. Read that one path;\n do not list, glob, or explore the directories around it.\n\nThis project is driven by SPS (Smart Pipeline System). Each card is a task. Two env vars\nidentify your stable context (POSIX freezes env at spawn, so per-card info is NOT in env):\n- `$SPS_PROJECT` \u2014 project name (stable across card reuse)\n- `$SPS_WORKER_SLOT` \u2014 worker slot name (stable across card reuse)\n\nFor the CURRENT card's info (id/stage/title), read **this exact file and nothing else in\nthat tree** \u2014 it is the one exception to the scope rule above:\n`~/.coral/projects/$SPS_PROJECT/runtime/worker-$SPS_WORKER_SLOT-current.json`\nOr, to stay entirely inside the project directory, run `sps card dashboard $SPS_PROJECT`.\n\nCard lifecycle is managed **automatically by hooks** \u2014 you do NOT update card state, move\ncolumns, or commit on behalf of the pipeline:\n- `AI-PIPELINE` admission mark \u2192 `CLAIMED` on slot claim \u2192 `STARTED-<stage>` on prompt submit\n (UserPromptSubmit ACK; missing within WORKER_ACK_TIMEOUT_S \u2192 ACK-TIMEOUT kill+retry) \u2192\n `COMPLETED-<stage>` on turn end (Stop hook advances the card).\n\n**Honesty**: if you declare \"done\" without actually implementing the work, the pipeline still\nadvances (the Stop hook fires regardless). The user relies on your honesty here.\n\n**Git**: Claude handles all git operations itself; SPS does not intervene in git workflows or\nconflict resolution.";
14
23
  //# sourceMappingURL=spsWorkerRules.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spsWorkerRules.d.ts","sourceRoot":"","sources":["../../../src/core/agents/spsWorkerRules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,uEAAuE;AACvE,eAAO,MAAM,gBAAgB,85CAwBR,CAAC"}
1
+ {"version":3,"file":"spsWorkerRules.d.ts","sourceRoot":"","sources":["../../../src/core/agents/spsWorkerRules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,uEAAuE;AACvE,eAAO,MAAM,gBAAgB,wsDA2BR,CAAC"}
@@ -6,6 +6,15 @@
6
6
  * **worker 自己的系统提示**(仅 worker、一次/会话、resume 重水合)。与 gameforge 的
7
7
  * Output Style 人设、`<memory>` 指针分走不同通道、互不覆盖(已实测共存)。
8
8
  * 设计见 docs/design/claudemd-agent-config-layout.md §3。
9
+ *
10
+ * 🔴 **禁令与可执行配方并存时,配方赢** —— 配方具体、可直接照抄,禁令是抽象的。
11
+ * 本文件曾同时写着「Do NOT explore \`~/.coral/projects/...\`」和一条就落在那个目录下的
12
+ * marker 文件具体路径 ⇒ 作用域禁令被自己的配方架空(worker 照抄路径去读,顺带可以翻邻居项目)。
13
+ * ⇒ **凡给出可执行配方(具体路径/命令/可照抄的代码)的地方,必须自带适用范围。**
14
+ * 判据只看单行,不依赖"能同时看到全部禁令" —— 因为注入是四通道
15
+ * (CLAUDE.md 基座 / Output Style 人设 / 本文件 / 记忆指针),
16
+ * 禁令与配方可能落在不同通道里,那时逐文件读每份都对、拼起来才互相架空。
17
+ * 门禁见 spsWorkerRules.test.ts。
9
18
  * @layer core
10
19
  * @boundedContext agents
11
20
  */
@@ -14,15 +23,18 @@ export const SPS_WORKER_RULES = `## SPS pipeline worker — operating rules
14
23
 
15
24
  - Work only in the current project directory. Do NOT read or modify files outside it,
16
25
  and do NOT explore \`~/.coral/projects/...\` or other system paths.
26
+ **Exactly one exception exists** — the single marker file named below. Read that one path;
27
+ do not list, glob, or explore the directories around it.
17
28
 
18
29
  This project is driven by SPS (Smart Pipeline System). Each card is a task. Two env vars
19
30
  identify your stable context (POSIX freezes env at spawn, so per-card info is NOT in env):
20
31
  - \`$SPS_PROJECT\` — project name (stable across card reuse)
21
32
  - \`$SPS_WORKER_SLOT\` — worker slot name (stable across card reuse)
22
33
 
23
- For the CURRENT card's info (id/stage/title), read the marker file
34
+ For the CURRENT card's info (id/stage/title), read **this exact file and nothing else in
35
+ that tree** — it is the one exception to the scope rule above:
24
36
  \`~/.coral/projects/$SPS_PROJECT/runtime/worker-$SPS_WORKER_SLOT-current.json\`
25
- or run \`sps card dashboard $SPS_PROJECT\`.
37
+ Or, to stay entirely inside the project directory, run \`sps card dashboard $SPS_PROJECT\`.
26
38
 
27
39
  Card lifecycle is managed **automatically by hooks** — you do NOT update card state, move
28
40
  columns, or commit on behalf of the pipeline:
@@ -1 +1 @@
1
- {"version":3,"file":"spsWorkerRules.js","sourceRoot":"","sources":["../../../src/core/agents/spsWorkerRules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,uEAAuE;AACvE,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;qBAwBX,CAAC"}
1
+ {"version":3,"file":"spsWorkerRules.js","sourceRoot":"","sources":["../../../src/core/agents/spsWorkerRules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,uEAAuE;AACvE,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;qBA2BX,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coralai/sps-cli",
3
- "version": "0.89.6",
3
+ "version": "0.89.7",
4
4
  "description": "SPS CLI — AI-driven development pipeline orchestrator",
5
5
  "type": "module",
6
6
  "main": "dist/main.js",