patchgate への提案・実装・運用変更の共通フローです。
- 対象: code / policy / docs / workflow / plugin / integration
- 互換性は
v1契約を優先し、破壊的変更は移行ガイド同時提出を必須とします。
docs/06_phase_backcast_1_100.mdとdocs/ROADMAP.mdの該当フェーズを確認する。- PR本文に以下を明記する。
- 目的
- 互換性への影響
- ロールバック手順
- 監査証跡(metrics/audit/release artifact)
- policy変更を含む場合は
policy-approvedラベルを付与する。
- 既存JSONキーの削除は禁止(追加は optional のみ)
- 既存CLIオプションの削除は禁止(非推奨化は1 minor以上の猶予)
- plugin APIは
patchgate.plugin.v1を維持し、破壊変更はv2新設で対応
- 公式テンプレート:
sdk/templates/python-plugin - pluginは JSON stdin/stdout 契約に従うこと
plugins.sandbox.profile = "restricted"で動作すること
just ci-checkcargo run -p patchgate-cli -- policy lint --path config/policy.toml.example --require-current-versioncargo run -p patchgate-cli -- policy verify-v1 --path config/policy.toml.example- 必要時:
cargo run -p xtask -- ops slo-report --metrics-input <file> --output <file>
- LTS対象修正は
backport/lts-v1ラベルを使用 - security修正は
release.lts.security_sla_hours以内に判断 - GA判定は
ga-readiness.ymlの出力を根拠に実施