diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 08b8d6d1b2..c011651c37 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -11,7 +11,7 @@ body: If repeating the action could cause data loss, an outage, duplicate changes, or excessive notifications, do not repeat it just to fill in this form. Describe the original sequence and what you observed instead. - For connection or data failures, only collect diagnostics if Pulse is running and collection is safe. **Run Diagnostics** can make live API and guest-agent requests; do not run it during backups, freeze/thaw or an unresponsive-host incident just to file a report. Prefer existing observations; if a result is already displayed, its GitHub export downloads that result without running checks again. See [safe diagnostics collection](https://github.com/rcourtman/Pulse/blob/3fd44b8325679e4ce7f470572af84687458aefcc/docs/TROUBLESHOOTING.md#collect-diagnostics-safely). + For connection or data failures, only collect diagnostics if Pulse is running and collection is safe. **Run Diagnostics** can make live API and guest-agent requests; do not run it during backups, freeze/thaw or an unresponsive-host incident just to file a report. Prefer existing observations; if a result is already displayed, its GitHub export downloads that result without running checks again. Anything you attach here is public. Review files and screenshots locally before posting, even when an export is labelled "sanitized". Remove credentials, session cookies, secret URLs, private host/network and personal details, including text echoed in errors. Do not attach full/private diagnostics, .env or configuration files, private keys, Copy as cURL commands or full network exports. diff --git a/.github/ISSUE_TEMPLATE/v6_rc_feedback.yml b/.github/ISSUE_TEMPLATE/v6_rc_feedback.yml index c33ebdfced..16d3ee0b5d 100644 --- a/.github/ISSUE_TEMPLATE/v6_rc_feedback.yml +++ b/.github/ISSUE_TEMPLATE/v6_rc_feedback.yml @@ -10,7 +10,7 @@ body: For general impressions or smaller notes, use the pinned v6 pre-release feedback hub. Give the version on the affected running instance, or the version or release asset attempted if installation never completed. For a running container (Docker, Compose, or Kubernetes), include the Pulse image tag or digest; non-container installs do not need an image reference. Do not repeat an action just to fill in this form if it could cause data loss, an outage, duplicate changes, or excessive notifications; describe the original sequence instead. - For connection or data failures, only collect diagnostics if Pulse is running and collection is safe. **Run Diagnostics** can make live API and guest-agent requests; do not run it during backups, freeze/thaw or an unresponsive-host incident just to file a report. Prefer existing observations; if a result is already displayed, its GitHub export downloads that result without running checks again. See [safe diagnostics collection](https://github.com/rcourtman/Pulse/blob/3fd44b8325679e4ce7f470572af84687458aefcc/docs/TROUBLESHOOTING.md#collect-diagnostics-safely). + For connection or data failures, only collect diagnostics if Pulse is running and collection is safe. **Run Diagnostics** can make live API and guest-agent requests; do not run it during backups, freeze/thaw or an unresponsive-host incident just to file a report. Prefer existing observations; if a result is already displayed, its GitHub export downloads that result without running checks again. Anything you attach here is public. Review files and screenshots locally before posting, even when an export is labelled "sanitized". Remove credentials, session cookies, secret URLs, private host/network and personal details, including text echoed in errors. Do not attach full/private diagnostics, .env or configuration files, private keys, Copy as cURL commands or full network exports. diff --git a/.github/scripts/issue-version-triage.test.cjs b/.github/scripts/issue-version-triage.test.cjs index 9d19ab1647..f55e1ed26c 100644 --- a/.github/scripts/issue-version-triage.test.cjs +++ b/.github/scripts/issue-version-triage.test.cjs @@ -307,11 +307,22 @@ for (const name of ["bug_report.yml", "v6_rc_feedback.yml"]) { assert.match(introduction, /do not run it during backups, freeze\/thaw or an unresponsive-host incident/); assert.match(introduction, /Prefer existing observations/); assert.match(introduction, /downloads that result without running checks again/); - assert.match(introduction, /docs\/TROUBLESHOOTING\.md#collect-diagnostics-safely/); assert.doesNotMatch(introduction, /Export for GitHub \(sanitized\)/); }); } +for (const name of ["bug_report.yml", "v6_rc_feedback.yml"]) { + test(`report intake excludes unreleased branch-tip guidance: ${name}`, () => { + const form = fs.readFileSync(path.resolve(__dirname, "../ISSUE_TEMPLATE", name), "utf8"); + // Safety instructions must remain self-contained for installed versions. + // A main/master link can describe runtime behaviour they do not ship. + assert.doesNotMatch(form, /https:\/\/github\.com\/[^/\s)]+\/[^/\s)]+\/(?:blob|tree)\/(?:main|master)\//); + assert.match(form, /only collect diagnostics if Pulse is running and collection is safe/); + assert.match(form, /downloads that result without running checks again/); + assert.match(form, /Review files and screenshots locally before posting/); + }); +} + for (const [name, field] of [ ["bug_report.yml", "logs"], ["v6_rc_feedback.yml", "evidence"],