diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..5e77fab --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,82 @@ +name: Bug report +description: Report a problem with the OpenShell Slack Admin Bridge +title: "[Bug]: " +labels: ["bug"] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to file a bug. + + Please do **not** include Slack tokens, `config/admins.yaml` contents, channel or user IDs, + or gateway credentials. For a security vulnerability, use the + [security policy](https://github.com/slack-samples/openshell-slack-admin-bridge/blob/main/SECURITY.md) + instead of a public issue. + - type: textarea + id: what-happened + attributes: + label: What happened? + description: What did you expect to happen, and what actually happened? + placeholder: I expected an approval card to post, but the poller logged `not_in_channel`. + validations: + required: true + - type: textarea + id: repro + attributes: + label: Steps to reproduce + description: A failing command or a minimal case. Include the exact steps. + placeholder: | + 1. npm run dev:mock + 2. npm run dev + 3. ... + validations: + required: true + - type: dropdown + id: area + attributes: + label: Area + description: Which part of the sample is affected? + options: + - Approval bridge (Slack + gRPC) + - Audit capture sink (start:capture) + - App Home dashboard + - Mock gateway / local testing + - Build, tooling, or CI + - Not sure / other + validations: + required: true + - type: input + id: env + attributes: + label: Environment + description: Node.js version and OS (the app requires Node 22+). + placeholder: Node 22.5.0, macOS 14.5 (arm64) + validations: + required: true + - type: input + id: version + attributes: + label: Version or commit + description: The bridge version (from package.json) or the commit SHA you are on. + placeholder: 0.1.0 / faf3a61 + validations: + required: false + - type: textarea + id: logs + attributes: + label: Relevant logs + description: > + Paste relevant pino log lines, or attach a share-safe support bundle + (`npm run support-bundle`, which by design contains no tokens, IDs, or message text). + render: shell + validations: + required: false + - type: checkboxes + id: checks + attributes: + label: Before submitting + options: + - label: I searched existing issues and this is not a duplicate. + required: true + - label: This is not a security vulnerability (those go through the security policy). + required: true diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..55527fd --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: true +contact_links: + - name: Security vulnerability + url: https://github.com/slack-samples/openshell-slack-admin-bridge/blob/main/SECURITY.md + about: Report security issues privately per the security policy, not as a public issue. + - name: Setup and deployment help + url: https://github.com/slack-samples/openshell-slack-admin-bridge/blob/main/docs/03-deployment.md + about: Deployment, configuration, and local-testing steps are covered in the docs. diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..6dbf8d9 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,52 @@ +name: Feature request +description: Suggest an enhancement or a new capability +title: "[Feature]: " +labels: ["enhancement"] +body: + - type: markdown + attributes: + value: | + Thanks for the suggestion. This is a Slack sample, so proposals that keep it small, + focused, and easy to follow are the most likely to land. + - type: textarea + id: problem + attributes: + label: Problem or use case + description: What are you trying to do, and what gets in the way today? + validations: + required: true + - type: textarea + id: proposal + attributes: + label: Proposed solution + description: What would you like the bridge to do? + validations: + required: false + - type: dropdown + id: area + attributes: + label: Area + options: + - Approval bridge (Slack + gRPC) + - Audit capture sink (start:capture) + - App Home dashboard + - Mock gateway / local testing + - Docs + - New capability + - Not sure / other + validations: + required: true + - type: textarea + id: alternatives + attributes: + label: Alternatives considered + description: Other approaches you weighed, and why this one. + validations: + required: false + - type: checkboxes + id: checks + attributes: + label: Before submitting + options: + - label: I searched existing issues and this is not a duplicate. + required: true