From 51c6b01f34e712a3d5343487ebb36994f0f997e4 Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Fri, 28 Aug 2026 22:42:23 +0200 Subject: [PATCH 01/11] Align starter test with Pester 6.1 Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- tests/PSModuleTest.Tests.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/PSModuleTest.Tests.ps1 b/tests/PSModuleTest.Tests.ps1 index 99bef2e..c33a583 100644 --- a/tests/PSModuleTest.Tests.ps1 +++ b/tests/PSModuleTest.Tests.ps1 @@ -1,4 +1,4 @@ -#Requires -Modules @{ ModuleName = 'Pester'; ModuleVersion = '6.0.0'; MaximumVersion = '6.*' } +#Requires -Modules @{ ModuleName = 'Pester'; ModuleVersion = '6.1.0'; MaximumVersion = '6.*' } [Diagnostics.CodeAnalysis.SuppressMessageAttribute( 'PSReviewUnusedParameter', '', From 84e9477e051af2c7ec9e7f04bd9040868c7b6733 Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Fri, 28 Aug 2026 22:43:08 +0200 Subject: [PATCH 02/11] Add canonical starter command documentation link Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- src/functions/public/Get-PSModuleTest.ps1 | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/functions/public/Get-PSModuleTest.ps1 b/src/functions/public/Get-PSModuleTest.ps1 index 3043abd..151cfe4 100644 --- a/src/functions/public/Get-PSModuleTest.ps1 +++ b/src/functions/public/Get-PSModuleTest.ps1 @@ -21,6 +21,12 @@ function Get-PSModuleTest { System.String A greeting string for the given name. + + .NOTES + This scaffold function is intended to be replaced with the module's first real command. + + .LINK + https://psmodule.io/Template-PSModule/Functions/Get-PSModuleTest/ #> [OutputType([string])] [CmdletBinding()] From 22967e55f6eb556903d82570d2361f15e3285456 Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Fri, 28 Aug 2026 22:50:46 +0200 Subject: [PATCH 03/11] Align generated docs with the canonical Zensical design Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/zensical.toml | 74 +++++++++++++++++++++++++++++++++---------- 1 file changed, 57 insertions(+), 17 deletions(-) diff --git a/.github/zensical.toml b/.github/zensical.toml index 2ed17a5..55f09a9 100644 --- a/.github/zensical.toml +++ b/.github/zensical.toml @@ -1,56 +1,96 @@ +# Zensical configuration +# https://zensical.org/docs/setup/basics/ + [project] site_name = "-{{ REPO_NAME }}-" +site_url = "https://psmodule.io/-{{ REPO_NAME }}-/" +docs_dir = "docs" repo_name = "-{{ REPO_OWNER }}-/-{{ REPO_NAME }}-" repo_url = "/-{{ REPO_OWNER }}-/-{{ REPO_NAME }}-" [project.theme] -variant = "classic" language = "en" +font.text = "Mona Sans" +font.code = "Source Code Pro" logo = "Assets/icon.png" favicon = "Assets/icon.png" features = [ - "navigation.instant", - "navigation.instant.progress", - "navigation.top", - "navigation.tracking", - "navigation.expand", - "search.suggest", - "search.highlight", - "content.code.copy" + "announce.dismiss", + "content.code.annotate", + "content.code.copy", + "content.tooltips", + "navigation.footer", + "navigation.instant", + "navigation.instant.prefetch", + "navigation.instant.preview", + "navigation.instant.progress", + "navigation.tabs", + "navigation.top", + "navigation.tracking", + "search.highlight", + "search.share", + "search.suggest", + "toc.follow", ] +[project.theme.icon] +repo = "material/github" +link = "material/link-variant" + +# Palette toggle for automatic mode [[project.theme.palette]] media = "(prefers-color-scheme)" -toggle.icon = "lucide/sun-moon" +toggle.icon = "material/link" toggle.name = "Switch to dark mode" +# Palette toggle for dark mode [[project.theme.palette]] media = "(prefers-color-scheme: dark)" scheme = "slate" primary = "black" -accent = "light-blue" -toggle.icon = "lucide/moon" +accent = "light blue" +toggle.icon = "material/toggle-switch-off-outline" toggle.name = "Switch to light mode" +# Palette toggle for light mode [[project.theme.palette]] media = "(prefers-color-scheme: light)" scheme = "default" primary = "black" -accent = "light-blue" -toggle.icon = "lucide/sun" +accent = "light blue" +toggle.icon = "material/toggle-switch" toggle.name = "Switch to system preference" -[project.theme.icon] -repo = "fontawesome/brands/github" +[project.plugins.meta] + +[project.plugins.search] [project.markdown_extensions.toc] -permalink = true +permalink = "#" [project.markdown_extensions.attr_list] + +[project.markdown_extensions.abbr] + [project.markdown_extensions.admonition] + +[project.markdown_extensions.def_list] + +[project.markdown_extensions.footnotes] + [project.markdown_extensions.md_in_html] + +[project.markdown_extensions.tables] + [project.markdown_extensions.pymdownx.details] + [project.markdown_extensions.pymdownx.superfences] +custom_fences = [ + { name = "mermaid", class = "mermaid", format = "pymdownx.superfences.fence_code_format" }, +] + +[project.markdown_extensions.pymdownx.tasklist] +custom_checkbox = true [[project.extra.social]] icon = "fontawesome/brands/discord" From 01627bde0c4d622ca670e61c2920bc52d4d5239f Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Sat, 29 Aug 2026 09:55:23 +0200 Subject: [PATCH 04/11] Use native indexed documentation navigation Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/zensical.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/zensical.toml b/.github/zensical.toml index 55f09a9..b78586f 100644 --- a/.github/zensical.toml +++ b/.github/zensical.toml @@ -20,6 +20,7 @@ features = [ "content.code.copy", "content.tooltips", "navigation.footer", + "navigation.indexes", "navigation.instant", "navigation.instant.prefetch", "navigation.instant.preview", From 5beece1193e7e6f4af36c455c1c66bf149dc250b Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Sat, 29 Aug 2026 11:06:44 +0200 Subject: [PATCH 05/11] Keep community health files with the repository Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/CODE_OF_CONDUCT.md | 83 ++++++++++++++++++++++++++++++++++++++ .github/CONTRIBUTING.md | 45 +++++++++++++++++++++ .github/SECURITY.md | 15 +++++++ .github/SUPPORT.md | 17 ++++++++ AGENTS.md | 2 +- CONTRIBUTING.md | 44 -------------------- README.md | 2 +- 7 files changed, 162 insertions(+), 46 deletions(-) create mode 100644 .github/CODE_OF_CONDUCT.md create mode 100644 .github/CONTRIBUTING.md create mode 100644 .github/SECURITY.md create mode 100644 .github/SUPPORT.md delete mode 100644 CONTRIBUTING.md diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..b260892 --- /dev/null +++ b/.github/CODE_OF_CONDUCT.md @@ -0,0 +1,83 @@ +# Contributor Covenant 3.0 Code of Conduct + +## Our Pledge + +We pledge to make our community welcoming, safe, and equitable for all. + +We are committed to fostering an environment that respects and promotes the dignity, rights, and contributions of all individuals, regardless of characteristics including race, ethnicity, caste, color, age, physical characteristics, neurodiversity, disability, sex or gender, gender identity or expression, sexual orientation, language, philosophy or religion, national or social origin, socio-economic position, level of education, or other status. The same privileges of participation are extended to everyone who participates in good faith and in accordance with this Covenant. + +## Encouraged Behaviors + +While acknowledging differences in social norms, we all strive to meet our community's expectations for positive behavior. We also understand that our words and actions may be interpreted differently than we intend based on culture, background, or native language. + +With these considerations in mind, we agree to behave mindfully toward each other and act in ways that center our shared values, including: + +1. Respecting the **purpose of our community**, our activities, and our ways of gathering. +1. Engaging **kindly and honestly** with others. +1. Respecting **different viewpoints** and experiences. +1. **Taking responsibility** for our actions and contributions. +1. Gracefully giving and accepting **constructive feedback**. +1. Committing to **repairing harm** when it occurs. +1. Behaving in other ways that promote and sustain the **well-being of our community**. + +## Restricted Behaviors + +We agree to restrict the following behaviors in our community. Instances, threats, and promotion of these behaviors are violations of this Code of Conduct. + +1. **Harassment.** Violating explicitly expressed boundaries or engaging in unnecessary personal attention after any clear request to stop. +1. **Character attacks.** Making insulting, demeaning, or pejorative comments directed at a community member or group of people. +1. **Stereotyping or discrimination.** Characterizing anyone's personality or behavior on the basis of immutable identities or traits. +1. **Sexualization.** Behaving in a way that would generally be considered inappropriately intimate in the context or purpose of the community. +1. **Violating confidentiality.** Sharing or acting on someone's personal or private information without their permission. +1. **Endangerment.** Causing, encouraging, or threatening violence or other harm toward any person or group. +1. Behaving in other ways that **threaten the well-being** of our community. + +### Other Restrictions + +1. **Misleading identity.** Impersonating someone else for any reason, or pretending to be someone else to evade enforcement actions. +1. **Failing to credit sources.** Not properly crediting the sources of content you contribute. +1. **Promotional materials.** Sharing marketing or other commercial content in a way that is outside the norms of the community. +1. **Irresponsible communication.** Failing to responsibly present content which includes, links or describes any other restricted behaviors. + +## Reporting an Issue + +Tensions can occur between community members even when they are trying their best to collaborate. Not every conflict represents a code of conduct violation, and this Code of Conduct reinforces encouraged behaviors and norms that can help avoid conflicts and minimize harm. + +When an incident does occur, it is important to report it promptly. To report a possible violation, email [psmodule@psmodule.io](mailto:psmodule@psmodule.io). + +Community Moderators take reports of violations seriously and will make every effort to respond in a timely manner. They will investigate all reports of code of conduct violations, reviewing messages, logs, and recordings, or interviewing witnesses and other participants. Community Moderators will keep investigation and enforcement actions as transparent as possible while prioritizing safety and confidentiality. In order to honor these values, enforcement actions are carried out in private with the involved parties, but communicating to the whole community may be part of a mutually agreed upon resolution. + +## Addressing and Repairing Harm + +If an investigation by the Community Moderators finds that this Code of Conduct has been violated, the following enforcement ladder may be used to determine how best to repair harm, based on the incident's impact on the individuals involved and the community as a whole. Depending on the severity of a violation, lower rungs on the ladder may be skipped. + +1. Warning + 1. Event: A violation involving a single incident or series of incidents. + 1. Consequence: A private, written warning from the Community Moderators. + 1. Repair: Examples of repair include a private written apology, acknowledgement of responsibility, and seeking clarification on expectations. +1. Temporarily Limited Activities + 1. Event: A repeated incidence of a violation that previously resulted in a warning, or the first incidence of a more serious violation. + 1. Consequence: A private, written warning with a time-limited cooldown period designed to underscore the seriousness of the situation and give the community members involved time to process the incident. The cooldown period may be limited to particular communication channels or interactions with particular community members. + 1. Repair: Examples of repair may include making an apology, using the cooldown period to reflect on actions and impact, and being thoughtful about re-entering community spaces after the period is over. +1. Temporary Suspension + 1. Event: A pattern of repeated violation which the Community Moderators have tried to address with warnings, or a single serious violation. + 1. Consequence: A private written warning with conditions for return from suspension. In general, temporary suspensions give the person being suspended time to reflect upon their behavior and possible corrective actions. + 1. Repair: Examples of repair include respecting the spirit of the suspension, meeting the specified conditions for return, and being thoughtful about how to reintegrate with the community when the suspension is lifted. +1. Permanent Ban + 1. Event: A pattern of repeated code of conduct violations that other steps on the ladder have failed to resolve, or a violation so serious that the Community Moderators determine there is no way to keep the community safe with this person as a member. + 1. Consequence: Access to all community spaces, tools, and communication channels is removed. In general, permanent bans should be rarely used, should have strong reasoning behind them, and should only be resorted to if working through other remedies has failed to change the behavior. + 1. Repair: There is no possible repair in cases of this severity. + +This enforcement ladder is intended as a guideline. It does not limit the ability of Community Managers to use their discretion and judgment, in keeping with the best interests of our community. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public or other spaces. Examples of representing our community include using an official email address, posting via an official social media account, or acting as an appointed representative at an online or offline event. + +## Attribution + +This Code of Conduct is adapted from the Contributor Covenant, version 3.0, permanently available at [https://www.contributor-covenant.org/version/3/0/](https://www.contributor-covenant.org/version/3/0/). + +Contributor Covenant is stewarded by the Organization for Ethical Source and licensed under CC BY-SA 4.0. To view a copy of this license, visit [https://creativecommons.org/licenses/by-sa/4.0/](https://creativecommons.org/licenses/by-sa/4.0/). + +For answers to common questions about Contributor Covenant, see the [FAQ](https://www.contributor-covenant.org/faq). [Translations](https://www.contributor-covenant.org/translations) are available. Additional enforcement and community guideline resources can be found at [https://www.contributor-covenant.org/resources](https://www.contributor-covenant.org/resources). The enforcement ladder was inspired by the work of [Mozilla's code of conduct team](https://github.com/mozilla/inclusion). diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..cc163df --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,45 @@ +# Contributing + +Thank you for investing your time in contributing to this module. +Read the [Code of Conduct](CODE_OF_CONDUCT.md) before participating, and read +[`AGENTS.md`](../AGENTS.md) for the full guidance chain and documentation references. + +## Before you start + +1. Read [`README.md`](../README.md) to understand what the module does. +2. Familiarize yourself with the [repository standard](https://psmodule.io/Process-PSModule/reference/repository-standard/). +3. Check the open issues and pull requests to avoid duplicate work. + +## Workflow + +This project follows the [MSX contribution workflow](https://msx.no/docs/Ways-of-Working/Contribution-Workflow/): + +1. Open or pick up an issue that describes the change. +2. Create a branch from `main` following the `/-` convention. +3. Make small, focused commits and push often. +4. Open a **draft pull request** as soon as the change has a basic shape. +5. Run the **Copilot review loop** until it reports a clean round. File an issue for out-of-scope findings. +6. Mark the pull request ready for review and enable auto-merge. + +For branching details, see [Branching and Merging](https://msx.no/docs/Ways-of-Working/Branching-and-Merging/). + +## Pull requests + +- Keep pull requests small and focused on a single deliverable. +- Follow the [commit conventions](https://msx.no/docs/Ways-of-Working/Commit-Conventions/). +- Follow the [pull request format](https://msx.no/docs/Ways-of-Working/PR-Format/). + +## Issues + +Use GitHub Issues to report bugs, request features, or propose improvements. +Follow the [issue format](https://msx.no/docs/Ways-of-Working/Issues/Process/Format/). + +## Code standards + +PowerShell in this module follows the +[PSModule PowerShell module standard](https://psmodule.io/Process-PSModule/reference/powershell-module-standard/) +and the [MSX coding standards](https://msx.no/docs/Coding-Standards/). + +## Questions + +Follow the repository's [support guidance](SUPPORT.md). diff --git a/.github/SECURITY.md b/.github/SECURITY.md new file mode 100644 index 0000000..885e6dd --- /dev/null +++ b/.github/SECURITY.md @@ -0,0 +1,15 @@ +# Security Policy + +## Supported versions + +Only the latest release is supported. Security fixes are released only for the latest version. + +## Reporting a vulnerability + +Do not disclose a suspected or confirmed vulnerability through a public issue, pull request, or discussion. + +Report the vulnerability through the repository's **Security** tab by creating a private security advisory. If that option is unavailable, email [psmodule@psmodule.io](mailto:psmodule@psmodule.io). + +Include the affected repository and version, a clear description of the vulnerability and its impact, steps to reproduce it, and any proof of concept or suggested mitigation. + +We handle reports privately, investigate them, and coordinate a fix and disclosure with the reporter where possible. diff --git a/.github/SUPPORT.md b/.github/SUPPORT.md new file mode 100644 index 0000000..7f974ab --- /dev/null +++ b/.github/SUPPORT.md @@ -0,0 +1,17 @@ +# Support + +## PSModule support + +For help with a PSModule repository, open an issue in the GitHub repository for the relevant codebase. Issues let maintainers and other users collaborate on a solution. + +For matters that are not suitable for a public issue, contact [psmodule@psmodule.io](mailto:psmodule@psmodule.io). + +To contribute, see the repository's [contributing guide](CONTRIBUTING.md). + +## Security vulnerabilities + +Do not report security vulnerabilities through GitHub Issues. Follow the repository's [security policy](SECURITY.md) instead. + +## PowerShell Gallery support + +For PowerShell Gallery support, contact [cgadmin@microsoft.com](mailto:cgadmin@microsoft.com) or open an issue in [PowerShell/PowerShellGallery](https://github.com/PowerShell/PowerShellGallery/issues). diff --git a/AGENTS.md b/AGENTS.md index 0879ad2..d06c112 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -8,7 +8,7 @@ If you find a problem or improvement, fix if small; otherwise open an issue. ## Repo guidance - [`README.md`](README.md) — what this repository is and its purpose as a template. -- [`CONTRIBUTING.md`](CONTRIBUTING.md) — how to contribute to this repository. +- [`.github/CONTRIBUTING.md`](.github/CONTRIBUTING.md) — how to contribute to this repository. ## PSModule Framework guidance diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md deleted file mode 100644 index 15f724a..0000000 --- a/CONTRIBUTING.md +++ /dev/null @@ -1,44 +0,0 @@ -# Contributing - -Thank you for contributing to this module. -Read [`AGENTS.md`](AGENTS.md) first for the full guidance chain and documentation references. - -## Before you start - -1. Read [`README.md`](README.md) to understand what the module does. -2. Familiarise yourself with the [repository defaults](https://psmodule.github.io/docs/Modules/Repository-Defaults/) that this repository must satisfy. -3. Check the open issues and pull requests to avoid duplicate work. - -## Workflow - -This project follows the [MSXOrg contribution workflow](https://msxorg.github.io/docs/Ways-of-Working/Contribution-Workflow/): - -1. Open or pick up an issue that describes the change. -2. Create a branch from `main` following the `/-` convention (e.g. `feat/42-add-security-md`). -3. Make small, focused commits and push often. -4. Open a **draft PR** as soon as the change has a basic shape — early feedback is preferred. -5. Run the **Copilot review loop**: request a Copilot review, address its feedback, and repeat until it reports a clean round. File an issue for any out-of-scope findings rather than expanding the PR. -6. Mark the PR ready for review and enable auto-merge. It lands automatically once the required checks pass and a reviewer approves. - -For branching details, see [Branching and Merging](https://msxorg.github.io/docs/Ways-of-Working/Branching-and-Merging/). - -## Pull requests - -- Keep PRs small and focused on a single deliverable. -- The PR title should follow the [commit conventions](https://msxorg.github.io/docs/Ways-of-Working/Commit-Conventions/). - -For PR format guidance, see [PR Format](https://msxorg.github.io/docs/Ways-of-Working/PR-Format/). - -## Issues - -Use GitHub Issues to report bugs, request features, or propose improvements. -Follow the [issue format](https://msxorg.github.io/docs/Ways-of-Working/Issue-Format/) guidance. - -## Code standards - -PowerShell in this module follows the [PSModule Standards](https://psmodule.github.io/docs/Modules/Standards/) and the -[MSXOrg Coding Standards](https://msxorg.github.io/docs/Coding-Standards/). - -## Questions - -Open a GitHub Discussion or file an issue if something is unclear. diff --git a/README.md b/README.md index 9cfd27d..1ec6c22 100644 --- a/README.md +++ b/README.md @@ -25,5 +25,5 @@ Modules built from this template use the [PSModule framework](https://github.com ## Contributing -To contribute to this template itself, read the [Contribution guidelines](CONTRIBUTING.md). +To contribute to this template itself, read the [contribution guidelines](.github/CONTRIBUTING.md). For agents and AI tools, start with [`AGENTS.md`](AGENTS.md). From bad826b4933ec5e4515e561ca00985b11cddc964 Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Sun, 30 Aug 2026 08:37:42 +0200 Subject: [PATCH 06/11] Use central community policies and Process releases Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/CODE_OF_CONDUCT.md | 83 -------------------------------------- .github/CONTRIBUTING.md | 7 +++- .github/SECURITY.md | 15 ------- .github/SUPPORT.md | 17 -------- .github/release.yml | 18 --------- README.md | 4 +- 6 files changed, 8 insertions(+), 136 deletions(-) delete mode 100644 .github/CODE_OF_CONDUCT.md delete mode 100644 .github/SECURITY.md delete mode 100644 .github/SUPPORT.md delete mode 100644 .github/release.yml diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md deleted file mode 100644 index b260892..0000000 --- a/.github/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,83 +0,0 @@ -# Contributor Covenant 3.0 Code of Conduct - -## Our Pledge - -We pledge to make our community welcoming, safe, and equitable for all. - -We are committed to fostering an environment that respects and promotes the dignity, rights, and contributions of all individuals, regardless of characteristics including race, ethnicity, caste, color, age, physical characteristics, neurodiversity, disability, sex or gender, gender identity or expression, sexual orientation, language, philosophy or religion, national or social origin, socio-economic position, level of education, or other status. The same privileges of participation are extended to everyone who participates in good faith and in accordance with this Covenant. - -## Encouraged Behaviors - -While acknowledging differences in social norms, we all strive to meet our community's expectations for positive behavior. We also understand that our words and actions may be interpreted differently than we intend based on culture, background, or native language. - -With these considerations in mind, we agree to behave mindfully toward each other and act in ways that center our shared values, including: - -1. Respecting the **purpose of our community**, our activities, and our ways of gathering. -1. Engaging **kindly and honestly** with others. -1. Respecting **different viewpoints** and experiences. -1. **Taking responsibility** for our actions and contributions. -1. Gracefully giving and accepting **constructive feedback**. -1. Committing to **repairing harm** when it occurs. -1. Behaving in other ways that promote and sustain the **well-being of our community**. - -## Restricted Behaviors - -We agree to restrict the following behaviors in our community. Instances, threats, and promotion of these behaviors are violations of this Code of Conduct. - -1. **Harassment.** Violating explicitly expressed boundaries or engaging in unnecessary personal attention after any clear request to stop. -1. **Character attacks.** Making insulting, demeaning, or pejorative comments directed at a community member or group of people. -1. **Stereotyping or discrimination.** Characterizing anyone's personality or behavior on the basis of immutable identities or traits. -1. **Sexualization.** Behaving in a way that would generally be considered inappropriately intimate in the context or purpose of the community. -1. **Violating confidentiality.** Sharing or acting on someone's personal or private information without their permission. -1. **Endangerment.** Causing, encouraging, or threatening violence or other harm toward any person or group. -1. Behaving in other ways that **threaten the well-being** of our community. - -### Other Restrictions - -1. **Misleading identity.** Impersonating someone else for any reason, or pretending to be someone else to evade enforcement actions. -1. **Failing to credit sources.** Not properly crediting the sources of content you contribute. -1. **Promotional materials.** Sharing marketing or other commercial content in a way that is outside the norms of the community. -1. **Irresponsible communication.** Failing to responsibly present content which includes, links or describes any other restricted behaviors. - -## Reporting an Issue - -Tensions can occur between community members even when they are trying their best to collaborate. Not every conflict represents a code of conduct violation, and this Code of Conduct reinforces encouraged behaviors and norms that can help avoid conflicts and minimize harm. - -When an incident does occur, it is important to report it promptly. To report a possible violation, email [psmodule@psmodule.io](mailto:psmodule@psmodule.io). - -Community Moderators take reports of violations seriously and will make every effort to respond in a timely manner. They will investigate all reports of code of conduct violations, reviewing messages, logs, and recordings, or interviewing witnesses and other participants. Community Moderators will keep investigation and enforcement actions as transparent as possible while prioritizing safety and confidentiality. In order to honor these values, enforcement actions are carried out in private with the involved parties, but communicating to the whole community may be part of a mutually agreed upon resolution. - -## Addressing and Repairing Harm - -If an investigation by the Community Moderators finds that this Code of Conduct has been violated, the following enforcement ladder may be used to determine how best to repair harm, based on the incident's impact on the individuals involved and the community as a whole. Depending on the severity of a violation, lower rungs on the ladder may be skipped. - -1. Warning - 1. Event: A violation involving a single incident or series of incidents. - 1. Consequence: A private, written warning from the Community Moderators. - 1. Repair: Examples of repair include a private written apology, acknowledgement of responsibility, and seeking clarification on expectations. -1. Temporarily Limited Activities - 1. Event: A repeated incidence of a violation that previously resulted in a warning, or the first incidence of a more serious violation. - 1. Consequence: A private, written warning with a time-limited cooldown period designed to underscore the seriousness of the situation and give the community members involved time to process the incident. The cooldown period may be limited to particular communication channels or interactions with particular community members. - 1. Repair: Examples of repair may include making an apology, using the cooldown period to reflect on actions and impact, and being thoughtful about re-entering community spaces after the period is over. -1. Temporary Suspension - 1. Event: A pattern of repeated violation which the Community Moderators have tried to address with warnings, or a single serious violation. - 1. Consequence: A private written warning with conditions for return from suspension. In general, temporary suspensions give the person being suspended time to reflect upon their behavior and possible corrective actions. - 1. Repair: Examples of repair include respecting the spirit of the suspension, meeting the specified conditions for return, and being thoughtful about how to reintegrate with the community when the suspension is lifted. -1. Permanent Ban - 1. Event: A pattern of repeated code of conduct violations that other steps on the ladder have failed to resolve, or a violation so serious that the Community Moderators determine there is no way to keep the community safe with this person as a member. - 1. Consequence: Access to all community spaces, tools, and communication channels is removed. In general, permanent bans should be rarely used, should have strong reasoning behind them, and should only be resorted to if working through other remedies has failed to change the behavior. - 1. Repair: There is no possible repair in cases of this severity. - -This enforcement ladder is intended as a guideline. It does not limit the ability of Community Managers to use their discretion and judgment, in keeping with the best interests of our community. - -## Scope - -This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public or other spaces. Examples of representing our community include using an official email address, posting via an official social media account, or acting as an appointed representative at an online or offline event. - -## Attribution - -This Code of Conduct is adapted from the Contributor Covenant, version 3.0, permanently available at [https://www.contributor-covenant.org/version/3/0/](https://www.contributor-covenant.org/version/3/0/). - -Contributor Covenant is stewarded by the Organization for Ethical Source and licensed under CC BY-SA 4.0. To view a copy of this license, visit [https://creativecommons.org/licenses/by-sa/4.0/](https://creativecommons.org/licenses/by-sa/4.0/). - -For answers to common questions about Contributor Covenant, see the [FAQ](https://www.contributor-covenant.org/faq). [Translations](https://www.contributor-covenant.org/translations) are available. Additional enforcement and community guideline resources can be found at [https://www.contributor-covenant.org/resources](https://www.contributor-covenant.org/resources). The enforcement ladder was inspired by the work of [Mozilla's code of conduct team](https://github.com/mozilla/inclusion). diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index cc163df..fc194cd 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -1,7 +1,8 @@ # Contributing Thank you for investing your time in contributing to this module. -Read the [Code of Conduct](CODE_OF_CONDUCT.md) before participating, and read +Read the [PSModule Code of Conduct](https://github.com/PSModule/.github/blob/main/.github/CODE_OF_CONDUCT.md) +before participating, and read [`AGENTS.md`](../AGENTS.md) for the full guidance chain and documentation references. ## Before you start @@ -42,4 +43,6 @@ and the [MSX coding standards](https://msx.no/docs/Coding-Standards/). ## Questions -Follow the repository's [support guidance](SUPPORT.md). +Follow the [PSModule support guidance](https://github.com/PSModule/.github/blob/main/.github/SUPPORT.md). +Report vulnerabilities through the +[PSModule security policy](https://github.com/PSModule/.github/blob/main/.github/SECURITY.md). diff --git a/.github/SECURITY.md b/.github/SECURITY.md deleted file mode 100644 index 885e6dd..0000000 --- a/.github/SECURITY.md +++ /dev/null @@ -1,15 +0,0 @@ -# Security Policy - -## Supported versions - -Only the latest release is supported. Security fixes are released only for the latest version. - -## Reporting a vulnerability - -Do not disclose a suspected or confirmed vulnerability through a public issue, pull request, or discussion. - -Report the vulnerability through the repository's **Security** tab by creating a private security advisory. If that option is unavailable, email [psmodule@psmodule.io](mailto:psmodule@psmodule.io). - -Include the affected repository and version, a clear description of the vulnerability and its impact, steps to reproduce it, and any proof of concept or suggested mitigation. - -We handle reports privately, investigate them, and coordinate a fix and disclosure with the reporter where possible. diff --git a/.github/SUPPORT.md b/.github/SUPPORT.md deleted file mode 100644 index 7f974ab..0000000 --- a/.github/SUPPORT.md +++ /dev/null @@ -1,17 +0,0 @@ -# Support - -## PSModule support - -For help with a PSModule repository, open an issue in the GitHub repository for the relevant codebase. Issues let maintainers and other users collaborate on a solution. - -For matters that are not suitable for a public issue, contact [psmodule@psmodule.io](mailto:psmodule@psmodule.io). - -To contribute, see the repository's [contributing guide](CONTRIBUTING.md). - -## Security vulnerabilities - -Do not report security vulnerabilities through GitHub Issues. Follow the repository's [security policy](SECURITY.md) instead. - -## PowerShell Gallery support - -For PowerShell Gallery support, contact [cgadmin@microsoft.com](mailto:cgadmin@microsoft.com) or open an issue in [PowerShell/PowerShellGallery](https://github.com/PowerShell/PowerShellGallery/issues). diff --git a/.github/release.yml b/.github/release.yml deleted file mode 100644 index c7c5225..0000000 --- a/.github/release.yml +++ /dev/null @@ -1,18 +0,0 @@ -# https://docs.github.com/repositories/releasing-projects-on-github/automatically-generated-release-notes#configuring-automatically-generated-release-notes - -changelog: - exclude: - labels: - - NoRelease - categories: - - title: 🌟 Breaking Changes - labels: - - Major - - Breaking - - title: 🚀 New Features - labels: - - Minor - - Feature - - title: Other Changes - labels: - - '*' diff --git a/README.md b/README.md index 1ec6c22..0150774 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,9 @@ The canonical starting template for new PowerShell modules in the PSModule organ ## Purpose Use this template when creating a new PowerShell module repository. -It provides the CI/CD framework wiring, required community files, and starter layout that every PSModule module repository needs. +It provides the CI/CD framework wiring, repository contribution guidance, and starter layout that every PSModule module repository needs. +Code of Conduct, security, and support policies are inherited from [`PSModule/.github`](https://github.com/PSModule/.github). +Process-PSModule owns release generation, so the template does not include GitHub generated-release-notes configuration. For step-by-step instructions, see the [template quickstart](https://psmodule.github.io/docs/Modules/Process-PSModule/template-quickstart/). From d92cdc697ed763e70ec6909e25d3f124ed6f5660 Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Sun, 30 Aug 2026 08:44:37 +0200 Subject: [PATCH 07/11] Make contribution guidance template-safe Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/CONTRIBUTING.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index fc194cd..a359ded 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -1,13 +1,13 @@ # Contributing -Thank you for investing your time in contributing to this module. +Thank you for investing your time in contributing to this repository. Read the [PSModule Code of Conduct](https://github.com/PSModule/.github/blob/main/.github/CODE_OF_CONDUCT.md) before participating, and read [`AGENTS.md`](../AGENTS.md) for the full guidance chain and documentation references. ## Before you start -1. Read [`README.md`](../README.md) to understand what the module does. +1. Read [`README.md`](../README.md) to understand the repository's purpose. 2. Familiarize yourself with the [repository standard](https://psmodule.io/Process-PSModule/reference/repository-standard/). 3. Check the open issues and pull requests to avoid duplicate work. @@ -37,7 +37,7 @@ Follow the [issue format](https://msx.no/docs/Ways-of-Working/Issues/Process/For ## Code standards -PowerShell in this module follows the +PowerShell in this repository follows the [PSModule PowerShell module standard](https://psmodule.io/Process-PSModule/reference/powershell-module-standard/) and the [MSX coding standards](https://msx.no/docs/Coding-Standards/). From e56bf6bc294221dc0235c0e990610fd5f8486972 Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Sun, 30 Aug 2026 14:08:05 +0200 Subject: [PATCH 08/11] Align agent and contribution guidance Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/CONTRIBUTING.md | 52 +++++++---------------------------------- AGENTS.md | 38 +++++++----------------------- 2 files changed, 16 insertions(+), 74 deletions(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index a359ded..bc0da9d 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -1,48 +1,12 @@ # Contributing -Thank you for investing your time in contributing to this repository. -Read the [PSModule Code of Conduct](https://github.com/PSModule/.github/blob/main/.github/CODE_OF_CONDUCT.md) -before participating, and read -[`AGENTS.md`](../AGENTS.md) for the full guidance chain and documentation references. +Follow the central [MSX contribution workflow](https://msx.no/docs/Ways-of-Working/Contribution-Workflow/) +for how to select work, create a branch, make commits, open a draft pull request, request review, +and merge changes. Use the [MSX Ways of Working](https://msx.no/docs/Ways-of-Working/) for the +shared issue, branching, commit, pull request, and review conventions. -## Before you start +Use the Process-PSModule documentation for repository-specific standards: -1. Read [`README.md`](../README.md) to understand the repository's purpose. -2. Familiarize yourself with the [repository standard](https://psmodule.io/Process-PSModule/reference/repository-standard/). -3. Check the open issues and pull requests to avoid duplicate work. - -## Workflow - -This project follows the [MSX contribution workflow](https://msx.no/docs/Ways-of-Working/Contribution-Workflow/): - -1. Open or pick up an issue that describes the change. -2. Create a branch from `main` following the `/-` convention. -3. Make small, focused commits and push often. -4. Open a **draft pull request** as soon as the change has a basic shape. -5. Run the **Copilot review loop** until it reports a clean round. File an issue for out-of-scope findings. -6. Mark the pull request ready for review and enable auto-merge. - -For branching details, see [Branching and Merging](https://msx.no/docs/Ways-of-Working/Branching-and-Merging/). - -## Pull requests - -- Keep pull requests small and focused on a single deliverable. -- Follow the [commit conventions](https://msx.no/docs/Ways-of-Working/Commit-Conventions/). -- Follow the [pull request format](https://msx.no/docs/Ways-of-Working/PR-Format/). - -## Issues - -Use GitHub Issues to report bugs, request features, or propose improvements. -Follow the [issue format](https://msx.no/docs/Ways-of-Working/Issues/Process/Format/). - -## Code standards - -PowerShell in this repository follows the -[PSModule PowerShell module standard](https://psmodule.io/Process-PSModule/reference/powershell-module-standard/) -and the [MSX coding standards](https://msx.no/docs/Coding-Standards/). - -## Questions - -Follow the [PSModule support guidance](https://github.com/PSModule/.github/blob/main/.github/SUPPORT.md). -Report vulnerabilities through the -[PSModule security policy](https://github.com/PSModule/.github/blob/main/.github/SECURITY.md). +- [Repository Standard](https://psmodule.io/Process-PSModule/reference/repository-standard/) +- [PowerShell module standard](https://psmodule.io/Process-PSModule/reference/powershell-module-standard/) +- [Validating before review](https://psmodule.io/Process-PSModule/guides/validating-before-review/) diff --git a/AGENTS.md b/AGENTS.md index d06c112..354a6bf 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,32 +1,10 @@ -# Agents +# AGENTS -## Main directive +Read in this order: -Everything is a work in progress and can be improved. -If you find a problem or improvement, fix if small; otherwise open an issue. - -## Repo guidance - -- [`README.md`](README.md) — what this repository is and its purpose as a template. -- [`.github/CONTRIBUTING.md`](.github/CONTRIBUTING.md) — how to contribute to this repository. - -## PSModule Framework guidance - -Regarding repo structure, module source code and how the Process-PSModule workflow works. -For PSModule-specific build, layout, and process guidance: - -- [Template quickstart](https://psmodule.github.io/docs/Modules/Process-PSModule/template-quickstart/) — how to create a new module from this template. -- [Repository defaults](https://psmodule.github.io/docs/Modules/Repository-Defaults/) — the expected repository layout and required files. -- [Module anatomy](https://psmodule.github.io/docs/Modules/Process-PSModule/module-anatomy/) — source layout and framework conventions. -- [Build, test, pack, publish](https://psmodule.github.io/docs/Modules/Process-PSModule/build-test-pack-publish/) — the CI/CD pipeline. -- [Standards](https://psmodule.github.io/docs/Modules/Standards/) — PowerShell module coding standards. -- [PSModule/memory](https://github.com/PSModule/memory) — durable cross-session agent working memory for the PSModule organization. - -## Org-wide guidance - -For cross-cutting ways of working and standards: - -- [Agentic Development](https://msxorg.github.io/docs/Ways-of-Working/Agentic-Development/) — how agents and humans collaborate in this ecosystem. -- [Ways of Working](https://msxorg.github.io/docs/Ways-of-Working/) — contribution workflow, branching, PRs, issues. -- [Coding Standards](https://msxorg.github.io/docs/Coding-Standards/) — language-level conventions. -- [MSXOrg/memory](https://github.com/MSXOrg/memory) — durable agent working memory: gotchas, knowledge, and agent role notes. +1. [`README.md`](README.md) + - what this repository is and what it contains +2. [`.github/CONTRIBUTING.md`](.github/CONTRIBUTING.md) + - how a change is made and reviewed +3. [Process-PSModule documentation](https://psmodule.io/Process-PSModule/) + - repository structure, module standards, and build/test/pack/publish guidance From 1283ef678e416aefd6f2f1d50d16ab2f0ca15dfc Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Sun, 30 Aug 2026 14:20:29 +0200 Subject: [PATCH 09/11] Use Lucide palette icons Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/zensical.toml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/zensical.toml b/.github/zensical.toml index b78586f..3eacefd 100644 --- a/.github/zensical.toml +++ b/.github/zensical.toml @@ -41,7 +41,7 @@ link = "material/link-variant" # Palette toggle for automatic mode [[project.theme.palette]] media = "(prefers-color-scheme)" -toggle.icon = "material/link" +toggle.icon = "lucide/sun-moon" toggle.name = "Switch to dark mode" # Palette toggle for dark mode @@ -50,7 +50,7 @@ media = "(prefers-color-scheme: dark)" scheme = "slate" primary = "black" accent = "light blue" -toggle.icon = "material/toggle-switch-off-outline" +toggle.icon = "lucide/moon" toggle.name = "Switch to light mode" # Palette toggle for light mode @@ -59,7 +59,7 @@ media = "(prefers-color-scheme: light)" scheme = "default" primary = "black" accent = "light blue" -toggle.icon = "material/toggle-switch" +toggle.icon = "lucide/sun" toggle.name = "Switch to system preference" [project.plugins.meta] From 8700f3465a8f49c3fa86f60282877c62ae9a940e Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Sun, 30 Aug 2026 14:24:58 +0200 Subject: [PATCH 10/11] Add central docs to agent guidance Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- AGENTS.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index 354a6bf..aabe307 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -6,5 +6,7 @@ Read in this order: - what this repository is and what it contains 2. [`.github/CONTRIBUTING.md`](.github/CONTRIBUTING.md) - how a change is made and reviewed -3. [Process-PSModule documentation](https://psmodule.io/Process-PSModule/) +3. [MSXOrg documentation](https://msx.no/docs/) + - central ways of working and coding standards +4. [Process-PSModule documentation](https://psmodule.io/Process-PSModule/) - repository structure, module standards, and build/test/pack/publish guidance From d9fbe1ca7487f1aecdcc0827e91b0c4422948abf Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Sun, 30 Aug 2026 14:26:00 +0200 Subject: [PATCH 11/11] Order agent guidance from local to central Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- AGENTS.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index aabe307..6b70809 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -6,7 +6,7 @@ Read in this order: - what this repository is and what it contains 2. [`.github/CONTRIBUTING.md`](.github/CONTRIBUTING.md) - how a change is made and reviewed -3. [MSXOrg documentation](https://msx.no/docs/) - - central ways of working and coding standards -4. [Process-PSModule documentation](https://psmodule.io/Process-PSModule/) +3. [Process-PSModule documentation](https://psmodule.io/Process-PSModule/) - repository structure, module standards, and build/test/pack/publish guidance +4. [MSXOrg documentation](https://msx.no/docs/) + - central ways of working and coding standards