@tyhld/conductor 0.12.2 → 0.12.3

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.
@@ -129,7 +129,11 @@ export function buildCraftsmanPrompt(input) {
129
129
  '・秘密(.env の中身)を画面にも報告にも出さない。',
130
130
  '',
131
131
  '■ 締め方',
132
- '・テストが緑になってから push → プルリクエストを作成 → `gh pr merge <番号> --admin --merge --delete-branch`。',
132
+ // ★合流の作法は職人の鉄則7と同じ形にする(便 4a5bbb9f)。片方だけ古いと、
133
+ // 職人は毎便読む鉄則と、ここで渡される文の【両方】を受け取って食い違う。
134
+ '・テストが緑になってから push → プルリクエストを作成 → `gh pr merge <番号> --auto --merge --delete-branch`。',
135
+ ' (「auto-merge が使えない」と断られたリポだけ、CI が緑なのを確かめてから `gh pr merge <番号> --merge --delete-branch`)',
136
+ '・★`--admin` など保護を迂回する旗は使わない。保護が理由で合流できないときは、回避せず報告して止まる。',
133
137
  '・報告は簡潔に(変更したファイル・要点・確かめた結果)。専門用語はできるだけ避ける。',
134
138
  '・途中で人の判断が要るところに当たったら、無理に進めず outcome=blocked で終え、理由を1行で書く。',
135
139
  '',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyhld/conductor",
3
- "version": "0.12.2",
3
+ "version": "0.12.3",
4
4
  "description": "采配くん管制の見守りアプリ(conductor-agent)。各PCで常駐し、中央(devlog-tracker)へ定期的に生存報告(heartbeat)を送る常駐CLI。",
5
5
  "type": "module",
6
6
  "bin": {
@@ -236,7 +236,8 @@ APPLY=1 bash scripts/update-allowed-domains.sh # 内容に納得したら適用
236
236
  **設計思想: 「危険だけ確実に止める・それ以外は自動許可」**
237
237
 
238
238
  - 赤(deny): 取り返しのつかない操作(force push、本番DB破壊、rm -rf 等)を問答無用でブロック
239
- - 黄(ask): 本番デプロイや PR マージなど、実行自体は正当だが人間の確認が欲しい操作
239
+ - 黄(ask): 本番デプロイ・本番DB実行・main への直接 push など、実行自体は正当だが人間の確認が欲しい操作
240
+ (★PR のマージはここに入りません。職人が合流まで行います=ADR-007。ただし保護を迂回する旗(`--admin` 等)は使わず、CI が緑になってから合流します=職人の鉄則7)
240
241
  - 白(allow): ビルド・テスト・git 操作・ファイル閲覧など、日常開発で安全な操作を自動許可
241
242
 
242
243
  ## セットアップ手順
@@ -77,10 +77,17 @@ NODE_MAJOR_WANTED=24
77
77
  # (2026-09-16 11:01 に3現場で発生)、逆に本当に止まる2種(端末で Enter が要る/
78
78
  # 続きの指示が要る)も同じ文面で出るので、何をすればよいか分からなかった。
79
79
  # 0.12.1 で3種を分けた。下限を上げないと 0.12.0 の機に届かない。
80
+ # 【0.12.3 へ上げた理由(えふさん確定 2026-09-16・便 4a5bbb9f)】
81
+ # 0.12.2 までの職人の鉄則7は「その他のリポは gh pr merge --admin」と★指示していた。
82
+ # --admin は branch protection(CI が通っていない物を main に入れない仕組み)を迂回する旗で、
83
+ # 保護を足した日から「赤いまま本番の元が変わる」。実測 2026-09-16: 会話の記録で
84
+ # gh pr merge 1,225 回のうち 513 回が --admin(13 現場・11 日間)。
85
+ # 0.12.3 で鉄則7を「まず auto merge/使えないリポは通常の合流/--admin は使わない」に直した。
86
+ # ★鉄則は npm の配布物(skills/)に入っているので、下限を上げないと古い鉄則のまま回り続ける。
80
87
  # ★食い違うと「入口は通したのに設置係が止める」が起きる。テストで同一を固定してある。
81
88
  # ★公開 npm の latest より新しい値を書かないこと(書くと全員が設置できなくなる)。
82
89
  # package.json の版を超えていないことをテストで固定してある。
83
- MIN_CONDUCTOR_VERSION="0.12.1"
90
+ MIN_CONDUCTOR_VERSION="0.12.3"
84
91
 
85
92
  # nvm の版は固定する(毎回ちがう版が降ってくると再現しない)。
86
93
  NVM_VERSION='v0.40.1'
@@ -102,7 +102,7 @@ PROJECT_DIR="${2:-$HOME/projects/$SITE}"
102
102
  # 食い違うと「入口は通したのに設置係が止める」が起きる。テストで同一を固定してある。
103
103
  # ★公開 npm の latest より新しい値を書かないこと(書くと全員が設置できなくなる)。
104
104
  # package.json の版を超えていないことをテストで固定してある。
105
- MIN_CONDUCTOR_VERSION="0.12.1"
105
+ MIN_CONDUCTOR_VERSION="0.12.3"
106
106
 
107
107
  # ─── ヘルパ ───────────────────────────────────────────────────────────────────
108
108
  fail() { echo; echo "[setup] エラー: $1" >&2; exit 1; }
@@ -18,7 +18,13 @@ description: 采配くんの便(プロンプト末尾に CONDUCTOR_JOB:<id>
18
18
  4. **壁に当たったら止まる** — サンドボックス制約・保護されたパスに当たったら回避せず中断して報告する(★通信で塞がれたときの読み方は鉄則12)。
19
19
  5. **エージェント設定に書き込まない** — `.mcp.json`、`.claude/` 配下、hooks 等のエージェント設定パスには書き込まない。
20
20
  6. **本番に触らない** — 本番DB・deploy・secret に触らない。SQL/DDL は作って提示のみ(適用は人間)。
21
- 7. **便の終点はマージまで** — push → PR作成 → TYHLD-platform は `gh pr merge <番号> --auto --merge --delete-branch`(CI緑で自動合流・赤なら待機して状態を報告)/その他のリポは `gh pr merge <番号> --admin --merge --delete-branch`。
21
+ 7. **便の終点はマージまで(★保護を迂回しない)** — push → PR作成 → **CI が緑であることを確かめてから**合流する。手順は2段で、リポの名前は覚えなくてよい。
22
+ - ① まず `gh pr merge <番号> --auto --merge --delete-branch`。**CI が緑になった時点で自動的に合流する**(赤のままなら合流されない=待てばよい)。
23
+ - ② 「auto-merge が使えない」と断られたリポだけ、`gh pr checks <番号>` で**CI が緑なのを自分で確かめてから** `gh pr merge <番号> --merge --delete-branch`。
24
+ - ★**`--admin` など保護を迂回する旗は、通常運用では使わない。** branch protection は「CI が通っていない物を main に入れない」ための仕組みで、迂回すると**赤いまま本番の元が変わる**。旗を1つ付けるだけで、その現場の唯一の歯止めが外れる。
25
+ - ★**保護が理由で合流できないときは、回避せずそこで止めて報告する**(人の手番)。別の旗を探さない。
26
+ - ★CI が赤いときは、直してから合流する。直せない理由が分かったら、状態を報告して止まる。
27
+ - ★「この便のマージは人間が行う」と指示に書かれていれば、**その指示が優先**(ADR-007)。
22
28
  8. **ブラウザ検品(Playwright)の作法** — ★取りに行かない。PCに1回だけ入れた共有の道具を指すだけ(ADR-010)。
23
29
  - ① **起動は必ず `chromium_sandbox=False`**(`--no-sandbox`)。付けないと起動できない。
24
30
  - ② **道具は共有の場所を使う。自分でダウンロードしない。** python は `$HOME/.tyhld/pw-venv/bin/python`、`PLAYWRIGHT_BROWSERS_PATH` は `$HOME/.tyhld/pw-browsers`。**無ければそこで止めて「人の手番=`APPLY=1 bash scripts/pw-browser-install.sh`」と報告する。** `playwright install` も `pip install playwright` も職人は実行しない(毎便まるごとダウンロードが走り、便が遅くなる。通信自体は鉄則12のとおり許可済みだが、取りに行かないのが本筋=ADR-010)。