Skip to content
frontmatter
キー値
specdojo.idprj-0001:pjr-bjh6-product-package-json-protected
specdojo.typeproject
specdojo.statusready
specdojo.rulebookspecdojo:pjr-rulebook
specdojo.part_ofprj-0001:pjr-index
specdojo.item_typeissue
specdojo.item_statusdone
specdojo.prioritymedium
specdojo.ownerDEV
specdojo.registered_at2026-10-11T13:43:10Z
specdojo.completed_at2026-10-12T07:19:30Z
specdojo.conclusion保護は残し、申し送りの提案差分を exec handoff apply で確認つきで統合先へ適用できるようにした

PJR-BJH6 プロダクトリポジトリの package.json も agent の保護対象になる ​

1. 課題内容 ​

agent-config-write の保護対象パスがプロダクトリポジトリにも同じく適用され、プロダクトの依存定義を agent が作れない。初期構成や依存追加の作業が必ず block される

2. 影響範囲 ​

観点影響
スコープagent-config-write の保護と、block 後に設定変更を適用して再開する手順
スケジュールv0.3.0 の公開前に直す
コスト依存の追加や初期構成のたびに、申し送りの差分を人が手で適用し、再開する手間がかかる
品質手作業の適用で、差分の取り違えや適用漏れが起きうる
関係者exec を使う利用者と orchestrator

3. 対応方針 ​

項目内容
原因package.json は親検証や hook が script を実行するため保護対象で、プロダクトリポジトリにも同じ保護がかかる。プロダクト側の親検証({ id, repo })にも同じ危険があるため、保護自体は妥当である。問題は、block 後の適用が手作業であること
対応策利用者の判断(2026-10-12)により保護は残す。block 時に result の申し送りへ自動記録される提案差分を、人または orchestrator が 1 コマンドで統合先へ適用できるようにする(例: specdojo exec handoff apply --project <id> --register <PJR-ID>)。適用前に差分を表示し、明示の確認(--yes など)を求める。適用は統合先のブランチへの commit とし、worktree に残る同じ内容のファイルは再開時の同期で解消される(B2EC)。lock ファイルの再生成など、差分以外に必要な作業は案内として表示する
依存事項prj-0001:pjr-b2ec-resume-identical-untracked-restore(適用後の再開で同じ内容のファイルを解消する)
完了条件申し送りの提案差分を、確認つきで統合先へ commit できることを統合テストで確認する。確認なしでは適用しないこと、提案差分が無い場合はエラーになることも確認する。適用後に --resume で再開できることを確認する。command-reference と exec-config-guide の保護の節に手順を記載する。統合テストで子プロセスとして CLI を起動する場合は、実リポジトリの node_modules/.bin/tsx を絶対パスで起動する。fixture の agent-members.yaml は schema の必須項目(capabilities・proficiency・priority など)を満たす

4. 対応結果 ​

  • specdojo exec handoff apply --project <project-id> --register <PJR-ID> を追加し、waiting の最新 result に自動記録された agent-config-write の提案差分を表示後、確認つきで統合先へ適用・commit できるようにした。非対話実行は --yes がない限り変更しない。
  • 申し送りの対象パスと差分の対象を照合し、保護対象外のパス、未宣言リポジトリ、切り詰められた差分、適用不能な差分、対象パスの既存変更を commit 前に拒否する。複数リポジトリの差分は # repo: <name> ごとに宣言済みの統合先へ適用する。
  • package.json を適用した場合は lock ファイルの再生成・commit を案内し、続けて実行する --resume コマンドを表示する。
  • executor/reporter の統合テストを、保護違反、確認なしの拒否、--yes による統合先への commit、同期後の --resume 成功まで通す形に更新した。提案差分がない場合と切り詰められた場合の拒否も単体テストで固定した。

5. 関連ドキュメント ​