diff --git a/.github/ISSUE_TEMPLATE/task.yml b/.github/ISSUE_TEMPLATE/task.yml new file mode 100644 index 0000000..436ce8b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/task.yml @@ -0,0 +1,37 @@ +name: 作業 +description: 開発・調査・運用の作業を、事実(As-Is)・目標(To-Be)・実行・証拠に分けて記録する +body: + - type: markdown + attributes: + value: | + 同じ作業の issue が既に無いかを検索してから作成してください。 + 大きな作業は親 issue(目的と受入条件)と sub-issue(末端の作業)に分けます。 + **As-Is と To-Be は必ず書いてください。** 非公開リポでは、フォームの必須の検査が効かず空のまま送信できてしまいます。 + - type: textarea + id: as-is + attributes: + label: As-Is(現状) + description: 観測日時、対象環境、source の URL と commit/版、確認方法。現物で確認したもの・履歴からの参考・未検証を区別して書きます。 + validations: + required: true + - type: textarea + id: to-be + attributes: + label: To-Be(目標) + description: 目標、対象と対象外、受入条件。提案と、人が決めた内容を分けて書きます。 + validations: + required: true + - type: textarea + id: execution + attributes: + label: 実行 + description: 担当、次の一手、実際に阻んでいる依存、関連 issue、PR。依存は blocked-by、作業の分解は sub-issue、関連は参照リンクで区別します。 + validations: + required: false + - type: textarea + id: evidence + attributes: + label: 証拠 + description: 実装の commit/PR、実行した検証と環境・結果、未実行の項目、公開版と公開日時を別々に書きます。コード作成・build 成功・実画面での確認・業務受入・公開は、同じ完了として扱いません。 + validations: + required: false diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 1fd69b9..529a55f 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -2,7 +2,11 @@ ## なぜ - + +Closes # ## どう確かめたか diff --git a/README.md b/README.md index 7acf753..b69c7f9 100644 --- a/README.md +++ b/README.md @@ -4,12 +4,13 @@ ここに置いたファイルは、同じ organization が所有するリポジトリのうち、**自前の同名ファイルを持たないもの** に自動で適用されます。GitHub の仕様上、この機能を有効にするには本リポジトリが public である必要があります。 -適用条件と配置場所は GitHub の[既定コミュニティファイルの説明](https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)に従います。ここでは `.github/pull_request_template.md` を使います。 +適用条件と配置場所は GitHub の[既定コミュニティファイルの説明](https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/creating-a-default-community-health-file)に従います。ここでは `.github/pull_request_template.md` と `.github/ISSUE_TEMPLATE/` を使います。 | ファイル | 適用範囲 | | --- | --- | | [`SECURITY.md`](./SECURITY.md) | 脆弱性の報告経路と対応の目安 | -| [`.github/pull_request_template.md`](./.github/pull_request_template.md) | PR 本文の既定(何を・なぜ・どう確かめたか)。自前の PR テンプレートを持たないリポで、PR 作成時に本文へ入る | +| [`.github/pull_request_template.md`](./.github/pull_request_template.md) | PR 本文の既定(何を・なぜ・どう確かめたか)と、Issue を閉じる `Closes #番号`。自前の PR テンプレートを持たないリポで、PR 作成時に本文へ入る | +| [`.github/ISSUE_TEMPLATE/task.yml`](./.github/ISSUE_TEMPLATE/task.yml) | Issue フォーム「作業」(As-Is・To-Be・実行・証拠)。自前の `.github/ISSUE_TEMPLATE/` を持たないリポで、Issue 作成時に選べる | ## 編集にあたって @@ -24,4 +25,4 @@ ## 個別リポジトリで上書きしたいとき -そのリポジトリのルートに `SECURITY.md` を置けば、そちらが優先されます(PR テンプレートも同じで、リポ側に `.github/pull_request_template.md` などがあればそちらが使われます)。社内情報を含む完全版を使いたい場合はこの方法を取ってください。 +そのリポジトリのルートに `SECURITY.md` を置けば、そちらが優先されます(PR テンプレートも同じで、リポ側に `.github/pull_request_template.md` などがあればそちらが使われます。Issue テンプレートは、リポ側に `.github/ISSUE_TEMPLATE/` があると、ここのものは一つも使われません)。社内情報を含む完全版を使いたい場合はこの方法を取ってください。