From eaf0f3086f35179eb9985c876748ad9dfa3a6fc7 Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Sun, 12 Oct 2025 14:28:37 +0200 Subject: [PATCH 1/7] =?UTF-8?q?=F0=9F=A9=B9=20[Patch]:=20Encode=20all=20Po?= =?UTF-8?q?werShell=20files=20using=20UTF8=20with=20BOM=20(#231)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Description This pull request updates several PowerShell script files across the project. The main change is the addition of a Unicode Byte Order Mark (BOM) at the beginning of each file, which can help ensure proper encoding and compatibility, especially on Windows systems. No functional code changes have been made. --- .specify/scripts/powershell/check-prerequisites.ps1 | 2 +- .specify/scripts/powershell/common.ps1 | 2 +- .specify/scripts/powershell/create-new-feature.ps1 | 2 +- .specify/scripts/powershell/setup-plan.ps1 | 2 +- .specify/scripts/powershell/update-agent-context.ps1 | 2 +- tests/srcTestRepo/src/variables/public/Planets.ps1 | 2 +- tests/srcTestRepo/tests/AfterAll.ps1 | 2 +- tests/srcTestRepo/tests/BeforeAll.ps1 | 2 +- tests/srcWithManifestTestRepo/src/variables/public/Planets.ps1 | 2 +- tests/srcWithManifestTestRepo/tests/AfterAll.ps1 | 2 +- tests/srcWithManifestTestRepo/tests/BeforeAll.ps1 | 2 +- 11 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.specify/scripts/powershell/check-prerequisites.ps1 b/.specify/scripts/powershell/check-prerequisites.ps1 index 44a0e16a..9ac7a434 100644 --- a/.specify/scripts/powershell/check-prerequisites.ps1 +++ b/.specify/scripts/powershell/check-prerequisites.ps1 @@ -1,4 +1,4 @@ -#!/usr/bin/env pwsh +#!/usr/bin/env pwsh # Consolidated prerequisite checking script (PowerShell) # diff --git a/.specify/scripts/powershell/common.ps1 b/.specify/scripts/powershell/common.ps1 index ca4cdbed..029bd9a7 100644 --- a/.specify/scripts/powershell/common.ps1 +++ b/.specify/scripts/powershell/common.ps1 @@ -1,4 +1,4 @@ -#!/usr/bin/env pwsh +#!/usr/bin/env pwsh # Common PowerShell functions analogous to common.sh function Get-RepoRoot { diff --git a/.specify/scripts/powershell/create-new-feature.ps1 b/.specify/scripts/powershell/create-new-feature.ps1 index 7ab08058..c05032e3 100644 --- a/.specify/scripts/powershell/create-new-feature.ps1 +++ b/.specify/scripts/powershell/create-new-feature.ps1 @@ -1,4 +1,4 @@ -#!/usr/bin/env pwsh +#!/usr/bin/env pwsh # Create a new feature [CmdletBinding()] param( diff --git a/.specify/scripts/powershell/setup-plan.ps1 b/.specify/scripts/powershell/setup-plan.ps1 index c1020b67..5f2859b1 100644 --- a/.specify/scripts/powershell/setup-plan.ps1 +++ b/.specify/scripts/powershell/setup-plan.ps1 @@ -1,4 +1,4 @@ -#!/usr/bin/env pwsh +#!/usr/bin/env pwsh # Setup implementation plan for a feature [CmdletBinding()] diff --git a/.specify/scripts/powershell/update-agent-context.ps1 b/.specify/scripts/powershell/update-agent-context.ps1 index d1d2a5c8..73a662c4 100644 --- a/.specify/scripts/powershell/update-agent-context.ps1 +++ b/.specify/scripts/powershell/update-agent-context.ps1 @@ -1,4 +1,4 @@ -#!/usr/bin/env pwsh +#!/usr/bin/env pwsh <#! .SYNOPSIS Update agent context files with information from plan.md (PowerShell version) diff --git a/tests/srcTestRepo/src/variables/public/Planets.ps1 b/tests/srcTestRepo/src/variables/public/Planets.ps1 index 736584b9..5927bc51 100644 --- a/tests/srcTestRepo/src/variables/public/Planets.ps1 +++ b/tests/srcTestRepo/src/variables/public/Planets.ps1 @@ -1,4 +1,4 @@ -$script:Planets = @( +$script:Planets = @( @{ Name = 'Mercury' Mass = 0.330 diff --git a/tests/srcTestRepo/tests/AfterAll.ps1 b/tests/srcTestRepo/tests/AfterAll.ps1 index 4329d916..8933adae 100644 --- a/tests/srcTestRepo/tests/AfterAll.ps1 +++ b/tests/srcTestRepo/tests/AfterAll.ps1 @@ -1,4 +1,4 @@ -Write-Warning "=== AFTERALL TEARDOWN SCRIPT EXECUTING ===" +Write-Warning "=== AFTERALL TEARDOWN SCRIPT EXECUTING ===" Write-Warning "Tearing down test environment..." # Example teardown tasks: diff --git a/tests/srcTestRepo/tests/BeforeAll.ps1 b/tests/srcTestRepo/tests/BeforeAll.ps1 index 2001ccab..f487de58 100644 --- a/tests/srcTestRepo/tests/BeforeAll.ps1 +++ b/tests/srcTestRepo/tests/BeforeAll.ps1 @@ -1,4 +1,4 @@ -Write-Warning "=== BEFOREALL SETUP SCRIPT EXECUTING ===" +Write-Warning "=== BEFOREALL SETUP SCRIPT EXECUTING ===" Write-Warning "Setting up test environment..." # Example setup tasks: diff --git a/tests/srcWithManifestTestRepo/src/variables/public/Planets.ps1 b/tests/srcWithManifestTestRepo/src/variables/public/Planets.ps1 index 736584b9..5927bc51 100644 --- a/tests/srcWithManifestTestRepo/src/variables/public/Planets.ps1 +++ b/tests/srcWithManifestTestRepo/src/variables/public/Planets.ps1 @@ -1,4 +1,4 @@ -$script:Planets = @( +$script:Planets = @( @{ Name = 'Mercury' Mass = 0.330 diff --git a/tests/srcWithManifestTestRepo/tests/AfterAll.ps1 b/tests/srcWithManifestTestRepo/tests/AfterAll.ps1 index 3d81902f..f6728d6f 100644 --- a/tests/srcWithManifestTestRepo/tests/AfterAll.ps1 +++ b/tests/srcWithManifestTestRepo/tests/AfterAll.ps1 @@ -1,4 +1,4 @@ -Write-Warning "=== AFTERALL TEARDOWN SCRIPT (Environments) EXECUTING ===" +Write-Warning "=== AFTERALL TEARDOWN SCRIPT (Environments) EXECUTING ===" Write-Warning "Tearing down test environment for Environments..." # Example teardown tasks for Environments directory: diff --git a/tests/srcWithManifestTestRepo/tests/BeforeAll.ps1 b/tests/srcWithManifestTestRepo/tests/BeforeAll.ps1 index f0362f39..0b6bbcdc 100644 --- a/tests/srcWithManifestTestRepo/tests/BeforeAll.ps1 +++ b/tests/srcWithManifestTestRepo/tests/BeforeAll.ps1 @@ -1,4 +1,4 @@ -Write-Warning "=== BEFOREALL SETUP SCRIPT EXECUTING ===" +Write-Warning "=== BEFOREALL SETUP SCRIPT EXECUTING ===" Write-Warning "Setting up test environment..." # Example setup tasks for test environment: From 391173753b4499f3916e657ba79f3720a44b12ca Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 31 Oct 2025 00:11:08 +0100 Subject: [PATCH 2/7] Bump super-linter/super-linter from 8.2.0 to 8.2.1 (#234) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [super-linter/super-linter](https://github.com/super-linter/super-linter) from 8.2.0 to 8.2.1.
Release notes

Sourced from super-linter/super-linter's releases.

v8.2.1

8.2.1 (2025-10-15)

🐛 Bugfixes

⬆️ Dependency updates

  • docker: bump the docker group with 2 updates (#7100) (28c5681)
  • npm: bump eslint from 9.36.0 to 9.37.0 in /dependencies (#7102) (cf6cb1e)
  • npm: bump renovate from 41.132.2 to 41.136.0 in /dependencies (#7107) (495692f)
  • npm: bump the eslint-plugins-configs group across 1 directory with 2 updates (#7101) (b3a735d)
  • npm: bump the npm group across 1 directory with 4 updates (#7108) (ce227b3)
  • npm: bump typescript (#7109) (deba11c)
  • python: bump the pip group across 1 directory with 7 updates (#7106) (7c02a56)

🧰 Maintenance

Changelog

Sourced from super-linter/super-linter's changelog.

Changelog

8.2.1 (2025-10-15)

🐛 Bugfixes

⬆️ Dependency updates

  • docker: bump the docker group with 2 updates (#7100) (28c5681)
  • npm: bump eslint from 9.36.0 to 9.37.0 in /dependencies (#7102) (cf6cb1e)
  • npm: bump renovate from 41.132.2 to 41.136.0 in /dependencies (#7107) (495692f)
  • npm: bump the eslint-plugins-configs group across 1 directory with 2 updates (#7101) (b3a735d)
  • npm: bump the npm group across 1 directory with 4 updates (#7108) (ce227b3)
  • npm: bump typescript (#7109) (deba11c)
  • python: bump the pip group across 1 directory with 7 updates (#7106) (7c02a56)

🧰 Maintenance

8.2.0 (2025-09-30)

🚀 Features

🐛 Bugfixes

... (truncated)

Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=super-linter/super-linter&package-manager=github_actions&previous-version=8.2.0&new-version=8.2.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/Build-Docs.yml | 2 +- .github/workflows/Linter.yml | 2 +- .github/workflows/workflow.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/Build-Docs.yml b/.github/workflows/Build-Docs.yml index a8d9ceb8..34883425 100644 --- a/.github/workflows/Build-Docs.yml +++ b/.github/workflows/Build-Docs.yml @@ -102,7 +102,7 @@ jobs: - name: Lint documentation id: super-linter - uses: super-linter/super-linter/slim@7bba2eeb89d01dc9bfd93c497477a57e72c83240 # v8.2.0 + uses: super-linter/super-linter/slim@2bdd90ed3262e023ac84bf8fe35dc480721fc1f2 # v8.2.1 env: RUN_LOCAL: true DEFAULT_BRANCH: main diff --git a/.github/workflows/Linter.yml b/.github/workflows/Linter.yml index 22d68469..18f55172 100644 --- a/.github/workflows/Linter.yml +++ b/.github/workflows/Linter.yml @@ -25,7 +25,7 @@ jobs: fetch-depth: 0 - name: Lint code base - uses: super-linter/super-linter@7bba2eeb89d01dc9bfd93c497477a57e72c83240 # v8.2.0 + uses: super-linter/super-linter@2bdd90ed3262e023ac84bf8fe35dc480721fc1f2 # v8.2.1 env: GITHUB_TOKEN: ${{ github.token }} VALIDATE_BIOME_FORMAT: false diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index 85d441e8..b1463219 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -133,7 +133,7 @@ jobs: - name: Lint code base id: super-linter - uses: super-linter/super-linter@7bba2eeb89d01dc9bfd93c497477a57e72c83240 # v8.2.0 + uses: super-linter/super-linter@2bdd90ed3262e023ac84bf8fe35dc480721fc1f2 # v8.2.1 env: GITHUB_TOKEN: ${{ github.token }} DEFAULT_WORKSPACE: ${{ inputs.WorkingDirectory }} From 27e2a6d8ca30a22cb01ea044898e543db2780731 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 31 Oct 2025 00:19:47 +0100 Subject: [PATCH 3/7] Bump actions/upload-artifact from 4 to 5 (#235) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5.
Release notes

Sourced from actions/upload-artifact's releases.

v5.0.0

What's Changed

BREAKING CHANGE: this update supports Node v24.x. This is not a breaking change per-se but we're treating it as such.

New Contributors

Full Changelog: https://github.com/actions/upload-artifact/compare/v4...v5.0.0

v4.6.2

What's Changed

New Contributors

Full Changelog: https://github.com/actions/upload-artifact/compare/v4...v4.6.2

v4.6.1

What's Changed

Full Changelog: https://github.com/actions/upload-artifact/compare/v4...v4.6.1

v4.6.0

What's Changed

Full Changelog: https://github.com/actions/upload-artifact/compare/v4...v4.6.0

v4.5.0

What's Changed

New Contributors

... (truncated)

Commits
  • 330a01c Merge pull request #734 from actions/danwkennedy/prepare-5.0.0
  • 03f2824 Update github.dep.yml
  • 905a1ec Prepare v5.0.0
  • 2d9f9cd Merge pull request #725 from patrikpolyak/patch-1
  • 9687587 Merge branch 'main' into patch-1
  • 2848b2c Merge pull request #727 from danwkennedy/patch-1
  • 9b51177 Spell out the first use of GHES
  • cd231ca Update GHES guidance to include reference to Node 20 version
  • de65e23 Merge pull request #712 from actions/nebuk89-patch-1
  • 8747d8c Update README.md
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/upload-artifact&package-manager=github_actions&previous-version=4&new-version=5)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Marius Storhaug --- .github/workflows/Build-Docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/Build-Docs.yml b/.github/workflows/Build-Docs.yml index 34883425..37c79179 100644 --- a/.github/workflows/Build-Docs.yml +++ b/.github/workflows/Build-Docs.yml @@ -66,7 +66,7 @@ jobs: WorkingDirectory: ${{ inputs.WorkingDirectory }} - name: Upload docs artifact - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v5 with: name: docs path: ${{ inputs.WorkingDirectory }}/outputs/docs From 9a780ae75f03294c45ef8c3959271dd761ab3877 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 31 Oct 2025 00:37:18 +0100 Subject: [PATCH 4/7] Bump actions/download-artifact from 5 to 6 (#236) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 5 to 6.
Release notes

Sourced from actions/download-artifact's releases.

v6.0.0

What's Changed

BREAKING CHANGE: this update supports Node v24.x. This is not a breaking change per-se but we're treating it as such.

New Contributors

Full Changelog: https://github.com/actions/download-artifact/compare/v5...v6.0.0

Commits
  • 018cc2c Merge pull request #438 from actions/danwkennedy/prepare-6.0.0
  • 815651c Revert "Remove github.dep.yml"
  • bb3a066 Remove github.dep.yml
  • fa1ce46 Prepare v6.0.0
  • 4a24838 Merge pull request #431 from danwkennedy/patch-1
  • 5e3251c Readme: spell out the first use of GHES
  • abefc31 Merge pull request #424 from actions/yacaovsnc/update_readme
  • ac43a60 Update README with artifact extraction details
  • de96f46 Merge pull request #417 from actions/yacaovsnc/update_readme
  • 7993cb4 Remove migration guide for artifact download changes
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/download-artifact&package-manager=github_actions&previous-version=5&new-version=6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Marius Storhaug --- .github/workflows/Build-Docs.yml | 2 +- .github/workflows/Build-Site.yml | 2 +- .github/workflows/Test-Module.yml | 4 ++-- .github/workflows/Test-ModuleLocal.yml | 2 +- .github/workflows/workflow.yml | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/Build-Docs.yml b/.github/workflows/Build-Docs.yml index 37c79179..a78222a0 100644 --- a/.github/workflows/Build-Docs.yml +++ b/.github/workflows/Build-Docs.yml @@ -54,7 +54,7 @@ jobs: fetch-depth: 0 - name: Download module artifact - uses: actions/download-artifact@v5 + uses: actions/download-artifact@v6 with: name: module path: ${{ inputs.WorkingDirectory }}/outputs/module diff --git a/.github/workflows/Build-Site.yml b/.github/workflows/Build-Site.yml index b13face7..b3425ffb 100644 --- a/.github/workflows/Build-Site.yml +++ b/.github/workflows/Build-Site.yml @@ -51,7 +51,7 @@ jobs: uses: PSModule/Install-PSModuleHelpers@v1 - name: Download docs artifact - uses: actions/download-artifact@v5 + uses: actions/download-artifact@v6 with: name: docs path: ${{ inputs.WorkingDirectory }}/outputs/docs diff --git a/.github/workflows/Test-Module.yml b/.github/workflows/Test-Module.yml index e6d757d7..35c35bc9 100644 --- a/.github/workflows/Test-Module.yml +++ b/.github/workflows/Test-Module.yml @@ -86,7 +86,7 @@ jobs: persist-credentials: false - name: Download module artifact - uses: actions/download-artifact@v5 + uses: actions/download-artifact@v6 with: name: module path: ${{ inputs.WorkingDirectory }}/outputs/module @@ -112,7 +112,7 @@ jobs: persist-credentials: false - name: Download module artifact - uses: actions/download-artifact@v5 + uses: actions/download-artifact@v6 with: name: module path: ${{ inputs.WorkingDirectory }}/outputs/module diff --git a/.github/workflows/Test-ModuleLocal.yml b/.github/workflows/Test-ModuleLocal.yml index 68f4e3f2..98d4113c 100644 --- a/.github/workflows/Test-ModuleLocal.yml +++ b/.github/workflows/Test-ModuleLocal.yml @@ -98,7 +98,7 @@ jobs: fetch-depth: 0 - name: Download module artifact - uses: actions/download-artifact@v5 + uses: actions/download-artifact@v6 with: name: module path: ${{ inputs.WorkingDirectory }}/outputs/module diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index b1463219..47338867 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -505,7 +505,7 @@ jobs: fetch-depth: 0 - name: Download module artifact - uses: actions/download-artifact@v5 + uses: actions/download-artifact@v6 with: name: module path: ${{ inputs.WorkingDirectory }}/outputs/module From ec604690b93a47f0c979218df3072ac1214c55bb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 26 Nov 2025 19:39:58 +0100 Subject: [PATCH 5/7] Bump actions/checkout from 5 to 6 (#237) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
Release notes

Sourced from actions/checkout's releases.

v6.0.0

What's Changed

Full Changelog: https://github.com/actions/checkout/compare/v5.0.0...v6.0.0

v6-beta

What's Changed

Updated persist-credentials to store the credentials under $RUNNER_TEMP instead of directly in the local git config.

This requires a minimum Actions Runner version of v2.329.0 to access the persisted credentials for Docker container action scenarios.

v5.0.1

What's Changed

Full Changelog: https://github.com/actions/checkout/compare/v5...v5.0.1

Changelog

Sourced from actions/checkout's changelog.

Changelog

V6.0.0

V5.0.1

V5.0.0

V4.3.1

V4.3.0

v4.2.2

v4.2.1

v4.2.0

v4.1.7

v4.1.6

v4.1.5

... (truncated)

Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/checkout&package-manager=github_actions&previous-version=5&new-version=6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/Auto-Release.yml | 2 +- .github/workflows/Build-Docs.yml | 2 +- .github/workflows/Build-Module.yml | 2 +- .github/workflows/Build-Site.yml | 2 +- .github/workflows/Get-Settings.yml | 2 +- .github/workflows/Lint-SourceCode.yml | 2 +- .github/workflows/Linter.yml | 2 +- .github/workflows/Test-Module.yml | 4 ++-- .github/workflows/Test-ModuleLocal.yml | 2 +- .github/workflows/Test-SourceCode.yml | 2 +- .github/workflows/workflow.yml | 8 ++++---- 11 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/Auto-Release.yml b/.github/workflows/Auto-Release.yml index 50a5a410..976b40c7 100644 --- a/.github/workflows/Auto-Release.yml +++ b/.github/workflows/Auto-Release.yml @@ -26,7 +26,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Auto-Release uses: PSModule/Auto-Release@v1 diff --git a/.github/workflows/Build-Docs.yml b/.github/workflows/Build-Docs.yml index a78222a0..6cbdb9f1 100644 --- a/.github/workflows/Build-Docs.yml +++ b/.github/workflows/Build-Docs.yml @@ -48,7 +48,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 diff --git a/.github/workflows/Build-Module.yml b/.github/workflows/Build-Module.yml index 328c4d56..0e90bb5a 100644 --- a/.github/workflows/Build-Module.yml +++ b/.github/workflows/Build-Module.yml @@ -29,7 +29,7 @@ jobs: GH_TOKEN: ${{ github.token }} steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 diff --git a/.github/workflows/Build-Site.yml b/.github/workflows/Build-Site.yml index b3425ffb..b5cd3a4b 100644 --- a/.github/workflows/Build-Site.yml +++ b/.github/workflows/Build-Site.yml @@ -42,7 +42,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 diff --git a/.github/workflows/Get-Settings.yml b/.github/workflows/Get-Settings.yml index 62a6e5b5..79efa6f4 100644 --- a/.github/workflows/Get-Settings.yml +++ b/.github/workflows/Get-Settings.yml @@ -65,7 +65,7 @@ jobs: ModuleTestSuites: ${{ fromJson(steps.Get-Settings.outputs.result).ModuleTestSuites }} steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 diff --git a/.github/workflows/Lint-SourceCode.yml b/.github/workflows/Lint-SourceCode.yml index 627dfc08..21fc626f 100644 --- a/.github/workflows/Lint-SourceCode.yml +++ b/.github/workflows/Lint-SourceCode.yml @@ -50,7 +50,7 @@ jobs: runs-on: ${{ inputs.RunsOn }} steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false diff --git a/.github/workflows/Linter.yml b/.github/workflows/Linter.yml index 18f55172..5398688f 100644 --- a/.github/workflows/Linter.yml +++ b/.github/workflows/Linter.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 diff --git a/.github/workflows/Test-Module.yml b/.github/workflows/Test-Module.yml index 35c35bc9..01f26f7e 100644 --- a/.github/workflows/Test-Module.yml +++ b/.github/workflows/Test-Module.yml @@ -81,7 +81,7 @@ jobs: runs-on: ${{ inputs.RunsOn }} steps: - name: Checkout repository - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false @@ -107,7 +107,7 @@ jobs: runs-on: ${{ inputs.RunsOn }} steps: - name: Checkout repository - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false diff --git a/.github/workflows/Test-ModuleLocal.yml b/.github/workflows/Test-ModuleLocal.yml index 98d4113c..a3399c78 100644 --- a/.github/workflows/Test-ModuleLocal.yml +++ b/.github/workflows/Test-ModuleLocal.yml @@ -92,7 +92,7 @@ jobs: runs-on: ${{ inputs.RunsOn }} steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 diff --git a/.github/workflows/Test-SourceCode.yml b/.github/workflows/Test-SourceCode.yml index 3d36e736..4402835b 100644 --- a/.github/workflows/Test-SourceCode.yml +++ b/.github/workflows/Test-SourceCode.yml @@ -50,7 +50,7 @@ jobs: runs-on: ${{ inputs.RunsOn }} steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index 47338867..d5cd8cea 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -104,7 +104,7 @@ jobs: - Get-Settings steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 @@ -295,7 +295,7 @@ jobs: - Get-Settings steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 @@ -372,7 +372,7 @@ jobs: - Test-ModuleLocal steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 @@ -499,7 +499,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Code - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: persist-credentials: false fetch-depth: 0 From c7983ef980e842281c8818693c6f02252520ba2b Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Wed, 26 Nov 2025 21:06:36 +0100 Subject: [PATCH 6/7] Use commit SHA with version comments for all workflow action references (#239) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Standardize all GitHub Actions workflow references to use commit SHAs with version comments instead of mutable tags, ensuring deterministic builds and supply chain security. ### Changes - **GitHub Actions**: Updated `actions/checkout`, `actions/download-artifact`, `actions/upload-artifact`, `actions/upload-pages-artifact`, `actions/configure-pages`, `actions/deploy-pages` to SHA references - **PSModule Actions**: Updated all PSModule actions (`Auto-Release`, `Document-PSModule`, `GitHub-Script`, `Build-PSModule`, `Install-PSModuleHelpers`, `Get-PesterCodeCoverage`, `Get-PesterTestResults`, `Invoke-ScriptAnalyzer`, `Test-PSModule`, `Invoke-Pester`, `Publish-PSModule`) to SHA references - **13 workflow files updated** in `.github/workflows/` ### Format ```yaml # Before uses: actions/checkout@v6 # After uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 ``` Dependabot supports SHA references for automated update PRs.
Original prompt > > ---- > > *This section details on the original issue you should resolve* > > 🩹 [Patch]: Use commit SHA with specific version comments for all workflow action references > ### Describe the change > > Standardize all GitHub Actions workflow references in this repository so that every action uses a commit SHA, with a comment specifying the most specific version tag (e.g., `# v1.2.3`). > > Why: > - Ensures deterministic builds and protects against unexpected updates or supply chain attacks. > - Improves maintainability and readability by documenting the exact version in use. > > Examples: > **✅ Correct:** > ```yaml > - name: Checkout Code > uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v1.2.3 > with: > persist-credentials: false > ``` > **❌ Incorrect:** > ```yaml > - name: Checkout Code > uses: actions/checkout@v1 > ``` > Scope of change: > - Update all workflow files in `.github/workflows/*. yml` to reference actions by SHA with a version comment, instead of by tag. > - Use the most specific version tag in comments (e.g., `v1.2.3` instead of `v1`). > - Affected actions may include but are not limited to: `actions/checkout`, `actions/download-artifact`, `actions/upload-artifact`, `actions/configure-pages`, `actions/deploy-pages`, custom PSModule actions, etc. > - Ensure CI and linting checks do not break. > - Document changes in affected files. > > Security Note: > Dependabot is configured to notify and create PRs when upstream actions/workflows update. Dependabot supports SHA references, so using them does not reduce security or update capabilities. > > Acceptance: > - [ ] All workflows use commit SHA with a version comment specifying the most specific tag > - [ ] No workflows reference actions by tag (e.g., `@v1`) > - [ ] All CI/CD checks pass > - [ ] Documentation is updated as needed > > ## Comments on the Issue (you are @copilot in this section) > > > >
- Fixes PSModule/Process-PSModule#238 --- ✨ Let Copilot coding agent [set things up for you](https://github.com/PSModule/Process-PSModule/issues/new?title=✨+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot) — coding agent works faster and does higher quality work when set up for your repo. --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: MariusStorhaug <17722253+MariusStorhaug@users.noreply.github.com> --- .github/workflows/Auto-Release.yml | 4 ++-- .github/workflows/Build-Docs.yml | 10 +++++----- .github/workflows/Build-Module.yml | 4 ++-- .github/workflows/Build-Site.yml | 10 +++++----- .github/workflows/Get-CodeCoverage.yml | 2 +- .github/workflows/Get-Settings.yml | 4 ++-- .github/workflows/Get-TestResults.yml | 2 +- .github/workflows/Lint-SourceCode.yml | 4 ++-- .github/workflows/Linter.yml | 2 +- .github/workflows/Test-Module.yml | 12 ++++++------ .github/workflows/Test-ModuleLocal.yml | 8 ++++---- .github/workflows/Test-SourceCode.yml | 4 ++-- .github/workflows/workflow.yml | 20 ++++++++++---------- 13 files changed, 43 insertions(+), 43 deletions(-) diff --git a/.github/workflows/Auto-Release.yml b/.github/workflows/Auto-Release.yml index 976b40c7..60a51ed9 100644 --- a/.github/workflows/Auto-Release.yml +++ b/.github/workflows/Auto-Release.yml @@ -26,9 +26,9 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 - name: Auto-Release - uses: PSModule/Auto-Release@v1 + uses: PSModule/Auto-Release@eabd533035e2cb9822160f26f2eda584bd012356 # v1.9.5 with: IncrementalPrerelease: false diff --git a/.github/workflows/Build-Docs.yml b/.github/workflows/Build-Docs.yml index 6cbdb9f1..74dedc53 100644 --- a/.github/workflows/Build-Docs.yml +++ b/.github/workflows/Build-Docs.yml @@ -48,25 +48,25 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 - name: Download module artifact - uses: actions/download-artifact@v6 + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: module path: ${{ inputs.WorkingDirectory }}/outputs/module - name: Document module - uses: PSModule/Document-PSModule@v1 + uses: PSModule/Document-PSModule@7e50d9f41753417346ff75b3601a90524aa8ab7e # v1.0.11 with: Name: ${{ inputs.Name }} WorkingDirectory: ${{ inputs.WorkingDirectory }} - name: Upload docs artifact - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 with: name: docs path: ${{ inputs.WorkingDirectory }}/outputs/docs @@ -74,7 +74,7 @@ jobs: retention-days: 1 - name: Commit all changes - uses: PSModule/GitHub-Script@v1 + uses: PSModule/GitHub-Script@00547bff5a143fbfc23a912a783fbfe9c470815c # v1.7.4 with: Debug: ${{ inputs.Debug }} Prerelease: ${{ inputs.Prerelease }} diff --git a/.github/workflows/Build-Module.yml b/.github/workflows/Build-Module.yml index 0e90bb5a..71049df6 100644 --- a/.github/workflows/Build-Module.yml +++ b/.github/workflows/Build-Module.yml @@ -29,13 +29,13 @@ jobs: GH_TOKEN: ${{ github.token }} steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 - name: Build module - uses: PSModule/Build-PSModule@v4 + uses: PSModule/Build-PSModule@fe8cc14a7192066cc46cb9514659772ebde05849 # v4.0.9 with: Name: ${{ inputs.Name }} ArtifactName: ${{ inputs.ArtifactName }} diff --git a/.github/workflows/Build-Site.yml b/.github/workflows/Build-Site.yml index b5cd3a4b..59794fb4 100644 --- a/.github/workflows/Build-Site.yml +++ b/.github/workflows/Build-Site.yml @@ -42,16 +42,16 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 - name: Install-PSModuleHelpers - uses: PSModule/Install-PSModuleHelpers@v1 + uses: PSModule/Install-PSModuleHelpers@e05e9875aafc0a1e63fc13989b3b683a7ef6444f # v1.0.5 - name: Download docs artifact - uses: actions/download-artifact@v6 + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: docs path: ${{ inputs.WorkingDirectory }}/outputs/docs @@ -65,7 +65,7 @@ jobs: pip install mkdocs-git-committers-plugin-2 - name: Structure site - uses: PSModule/GitHub-Script@v1 + uses: PSModule/GitHub-Script@00547bff5a143fbfc23a912a783fbfe9c470815c # v1.7.4 with: Debug: ${{ inputs.Debug }} Prerelease: ${{ inputs.Prerelease }} @@ -173,7 +173,7 @@ jobs: mkdocs build --config-file mkdocs.yml --site-dir ../../_site } - - uses: actions/upload-pages-artifact@v4 + - uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b # v4.0.0 with: name: github-pages path: ${{ inputs.WorkingDirectory }}/_site diff --git a/.github/workflows/Get-CodeCoverage.yml b/.github/workflows/Get-CodeCoverage.yml index e82496c6..26c7f2c6 100644 --- a/.github/workflows/Get-CodeCoverage.yml +++ b/.github/workflows/Get-CodeCoverage.yml @@ -48,7 +48,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Get-CodeCoverage - uses: PSModule/Get-PesterCodeCoverage@v1 + uses: PSModule/Get-PesterCodeCoverage@a7923eefbf55b452f9b1534c5b50ca9bd192f810 # v1.0.3 id: Get-CodeCoverage with: CodeCoveragePercentTarget: ${{ inputs.CodeCoveragePercentTarget }} diff --git a/.github/workflows/Get-Settings.yml b/.github/workflows/Get-Settings.yml index 79efa6f4..d4cf4e85 100644 --- a/.github/workflows/Get-Settings.yml +++ b/.github/workflows/Get-Settings.yml @@ -65,13 +65,13 @@ jobs: ModuleTestSuites: ${{ fromJson(steps.Get-Settings.outputs.result).ModuleTestSuites }} steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 - name: Get-Settings - uses: PSModule/GitHub-Script@v1 + uses: PSModule/GitHub-Script@00547bff5a143fbfc23a912a783fbfe9c470815c # v1.7.4 id: Get-Settings env: PSMODULE_GET_SETTINGS_INPUT_Name: ${{ inputs.Name }} diff --git a/.github/workflows/Get-TestResults.yml b/.github/workflows/Get-TestResults.yml index aa6148ad..52fc82b5 100644 --- a/.github/workflows/Get-TestResults.yml +++ b/.github/workflows/Get-TestResults.yml @@ -50,7 +50,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Get-TestResults - uses: PSModule/Get-PesterTestResults@v1 + uses: PSModule/Get-PesterTestResults@0c1d8cde9575b192831f76e87d3f7e825a7d8ff4 # v1.0.7 id: Get-TestResults with: SourceCodeTestSuites: ${{ inputs.SourceCodeTestSuites }} diff --git a/.github/workflows/Lint-SourceCode.yml b/.github/workflows/Lint-SourceCode.yml index 21fc626f..7753995b 100644 --- a/.github/workflows/Lint-SourceCode.yml +++ b/.github/workflows/Lint-SourceCode.yml @@ -50,12 +50,12 @@ jobs: runs-on: ${{ inputs.RunsOn }} steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false - name: Lint-SourceCode - uses: PSModule/Invoke-ScriptAnalyzer@v4 + uses: PSModule/Invoke-ScriptAnalyzer@0b13023a981f4c94136bba6193a9abd2d936cbc1 # v4.1.1 with: Debug: ${{ inputs.Debug }} Prerelease: ${{ inputs.Prerelease }} diff --git a/.github/workflows/Linter.yml b/.github/workflows/Linter.yml index 5398688f..70a57ce2 100644 --- a/.github/workflows/Linter.yml +++ b/.github/workflows/Linter.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repo - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 diff --git a/.github/workflows/Test-Module.yml b/.github/workflows/Test-Module.yml index 01f26f7e..912bdf3a 100644 --- a/.github/workflows/Test-Module.yml +++ b/.github/workflows/Test-Module.yml @@ -81,18 +81,18 @@ jobs: runs-on: ${{ inputs.RunsOn }} steps: - name: Checkout repository - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false - name: Download module artifact - uses: actions/download-artifact@v6 + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: module path: ${{ inputs.WorkingDirectory }}/outputs/module - name: Test-Module - uses: PSModule/Test-PSModule@v3 + uses: PSModule/Test-PSModule@80b0364db8192e73f584603c68a127de171f881f # v3.0.6 with: Name: ${{ inputs.Name }} Debug: ${{ inputs.Debug }} @@ -107,18 +107,18 @@ jobs: runs-on: ${{ inputs.RunsOn }} steps: - name: Checkout repository - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false - name: Download module artifact - uses: actions/download-artifact@v6 + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: module path: ${{ inputs.WorkingDirectory }}/outputs/module - name: Lint-Module - uses: PSModule/Invoke-ScriptAnalyzer@v4 + uses: PSModule/Invoke-ScriptAnalyzer@0b13023a981f4c94136bba6193a9abd2d936cbc1 # v4.1.1 with: Path: outputs/module Debug: ${{ inputs.Debug }} diff --git a/.github/workflows/Test-ModuleLocal.yml b/.github/workflows/Test-ModuleLocal.yml index a3399c78..3127e89e 100644 --- a/.github/workflows/Test-ModuleLocal.yml +++ b/.github/workflows/Test-ModuleLocal.yml @@ -92,19 +92,19 @@ jobs: runs-on: ${{ inputs.RunsOn }} steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 - name: Download module artifact - uses: actions/download-artifact@v6 + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: module path: ${{ inputs.WorkingDirectory }}/outputs/module - name: Install-PSModuleHelpers - uses: PSModule/Install-PSModuleHelpers@v1 + uses: PSModule/Install-PSModuleHelpers@e05e9875aafc0a1e63fc13989b3b683a7ef6444f # v1.0.5 - name: Import-Module id: import-module @@ -118,7 +118,7 @@ jobs: "path=$path" >> $env:GITHUB_OUTPUT - name: Test-ModuleLocal - uses: PSModule/Invoke-Pester@v4 + uses: PSModule/Invoke-Pester@882994cbe1ff07c3fc8afdac52404c940f99b331 # v4.2.2 with: Debug: ${{ inputs.Debug }} Prerelease: ${{ inputs.Prerelease }} diff --git a/.github/workflows/Test-SourceCode.yml b/.github/workflows/Test-SourceCode.yml index 4402835b..ba4756cf 100644 --- a/.github/workflows/Test-SourceCode.yml +++ b/.github/workflows/Test-SourceCode.yml @@ -50,13 +50,13 @@ jobs: runs-on: ${{ inputs.RunsOn }} steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 - name: Test-SourceCode - uses: PSModule/Test-PSModule@v3 + uses: PSModule/Test-PSModule@80b0364db8192e73f584603c68a127de171f881f # v3.0.6 with: Debug: ${{ inputs.Debug }} Prerelease: ${{ inputs.Prerelease }} diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index d5cd8cea..581d79e6 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -104,7 +104,7 @@ jobs: - Get-Settings steps: - name: Checkout repo - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 @@ -295,13 +295,13 @@ jobs: - Get-Settings steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 - name: Run BeforeAll Setup Scripts - uses: PSModule/GitHub-Script@v1 + uses: PSModule/GitHub-Script@00547bff5a143fbfc23a912a783fbfe9c470815c # v1.7.4 with: Name: BeforeAll-ModuleLocal ShowInfo: false @@ -372,14 +372,14 @@ jobs: - Test-ModuleLocal steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 - name: Run AfterAll Teardown Scripts if: always() - uses: PSModule/GitHub-Script@v1 + uses: PSModule/GitHub-Script@00547bff5a143fbfc23a912a783fbfe9c470815c # v1.7.4 with: Name: AfterAll-ModuleLocal ShowInfo: false @@ -473,11 +473,11 @@ jobs: url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest steps: - - uses: actions/configure-pages@v5 + - uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0 - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@v4 + uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5 # Runs on: # - ✅ Open/Updated PR - Publishes prerelease when all tests/coverage/build succeed @@ -499,13 +499,13 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Code - uses: actions/checkout@v6 + uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0 with: persist-credentials: false fetch-depth: 0 - name: Download module artifact - uses: actions/download-artifact@v6 + uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: module path: ${{ inputs.WorkingDirectory }}/outputs/module @@ -516,7 +516,7 @@ jobs: Install-PSResource -Name Microsoft.PowerShell.PSResourceGet -Repository PSGallery -TrustRepository - name: Publish module - uses: PSModule/Publish-PSModule@v2 + uses: PSModule/Publish-PSModule@6c25d139fe51b890f75c057897bd58ac344b192a # v2.0.8 env: GH_TOKEN: ${{ github.token }} with: From 78c2264ff36901ce677f2f0c4d4cdf6ea362ba6d Mon Sep 17 00:00:00 2001 From: Marius Storhaug Date: Tue, 2 Dec 2025 13:51:29 +0100 Subject: [PATCH 7/7] Update dependencies and doc cleanup (#245) This release updates workflow dependencies to their latest versions and standardizes table formatting across documentation files. **Workflow Dependency Updates:** * Updated actions in various workflows to their latest versions: * `super-linter/super-linter` from 8.2.1 to 8.3.0 * `PSModule/Document-PSModule` from 1.0.11 to 1.0.12 * `PSModule/Install-PSModuleHelpers` from 1.0.5 to 1.0.6 * `PSModule/Test-PSModule` from 3.0.6 to 3.0.7 **Documentation and Table Formatting Improvements:** * Standardized markdown table column alignment and spacing in multiple documentation files. * Added a style configuration for markdown tables (MD060) in `.github/linters/.markdown-lint.yml` to enforce leading column style and avoid emoji width issues. --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com> --- .github/copilot-instructions.md | 6 +-- .github/linters/.markdown-lint.yml | 2 + .github/prompts/constitution.prompt.md | 6 +-- .github/prompts/plan.prompt.md | 16 +++---- .github/prompts/pr.prompt.md | 14 +++--- .github/workflows/Build-Docs.yml | 4 +- .github/workflows/Build-Site.yml | 2 +- .github/workflows/Linter.yml | 2 +- .github/workflows/Test-Module.yml | 2 +- .github/workflows/Test-ModuleLocal.yml | 2 +- .github/workflows/Test-SourceCode.yml | 2 +- .github/workflows/workflow.yml | 2 +- .specify/memory/constitution.md | 30 ++++++------- .specify/templates/plan-template.md | 30 ++++++------- .specify/templates/spec-template.md | 62 +++++++++++++------------- README.md | 38 ++++++++-------- 16 files changed, 112 insertions(+), 108 deletions(-) diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 858eab7b..b9a9fc6d 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -12,7 +12,7 @@ When executing terminal commands (using `run_in_terminal` or similar tools): ## Other instructions -| Tech | Instruction file | -|------|------------------| +| Tech | Instruction file | +|------------|-------------------------------------------------------------| | PowerShell | [pwsh.instructions.md](./instructions/pwsh.instructions.md) | -| Markdown | [md.instructions.md](./instructions/md.instructions.md) | +| Markdown | [md.instructions.md](./instructions/md.instructions.md) | diff --git a/.github/linters/.markdown-lint.yml b/.github/linters/.markdown-lint.yml index b9ecdfa9..bb432af1 100644 --- a/.github/linters/.markdown-lint.yml +++ b/.github/linters/.markdown-lint.yml @@ -18,6 +18,8 @@ MD026: MD029: false # Ordered list item prefix MD033: false # Allow inline HTML MD036: false # Emphasis used instead of a heading +MD060: + style: "leading" # Table column style (leading avoids emoji width issues) ################# # Rules by tags # diff --git a/.github/prompts/constitution.prompt.md b/.github/prompts/constitution.prompt.md index 4a78dfe6..454a3a03 100644 --- a/.github/prompts/constitution.prompt.md +++ b/.github/prompts/constitution.prompt.md @@ -29,9 +29,9 @@ Two operating modes: Replacement Analysis Table (when overlap detected): -| Existing Item | Proposed New / Change | Overlap Basis | Suggested Action | -|---------------|-----------------------|---------------|------------------| -| | <incoming title / change> | e.g. semantic similarity, scope duplication | Replace / Merge / Keep Both | +| Existing Item | Proposed New / Change | Overlap Basis | Suggested Action | +|---------------------|---------------------------|----------------------------------------------|----------------------------| +| <title / section> | <incoming title / change> | e.g. semantic similarity, scope duplication | Replace / Merge / Keep Both | Heuristics for overlap: - Title similarity score (case-insensitive) >= 0.6 (rough string similarity) OR diff --git a/.github/prompts/plan.prompt.md b/.github/prompts/plan.prompt.md index 5fda97f5..26959b24 100644 --- a/.github/prompts/plan.prompt.md +++ b/.github/prompts/plan.prompt.md @@ -102,14 +102,14 @@ Given the implementation details provided as an argument, do this: - **Use the same title for the PR**: The PR title must match the issue title exactly - If unable to retrieve the issue title, determine the PR type and icon based on the changes: - | Type of change | Icon | Label | - |-|-|-| - | Docs | 📖 | Docs | - | Fix | 🪲 | Fix, Patch | - | Security fix | ⚠️ | Fix | - | Patch | 🩹 | Patch | - | Feature | 🚀 | Minor | - | Breaking change | 🌟 | Major | + | Type of change | Icon | Label | + | --------------- | ---- | ---------- | + | Docs | 📖 | Docs | + | Fix | 🪲 | Fix, Patch | + | Security fix | ⚠️ | Fix | + | Patch | 🩹 | Patch | + | Feature | 🚀 | Minor | + | Breaking change | 🌟 | Major | - Fallback PR title format (if issue title unavailable): `<Icon> [Type of change]: <Short description>` - Create PR description: diff --git a/.github/prompts/pr.prompt.md b/.github/prompts/pr.prompt.md index 8baabc88..75661c9a 100644 --- a/.github/prompts/pr.prompt.md +++ b/.github/prompts/pr.prompt.md @@ -14,13 +14,13 @@ $ARGUMENTS ## Supported Change Types -| Type | Icon | Labels | Description | -|------|------|--------|-------------| -| Major | 🌟 | `Major` | Breaking changes that affect compatibility | -| Minor | 🚀 | `Minor` | New features or enhancements | -| Patch | 🩹 | `Patch` | Small fixes or improvements | -| Fix | 🪲 | `Fix`, `Patch` | Bugfixes | -| Docs | 📖 | `Docs` | Documentation changes only | +| Type | Icon | Labels | Description | +| ----- | ---- | -------------- | ------------------------------------------ | +| Major | 🌟 | `Major` | Breaking changes that affect compatibility | +| Minor | 🚀 | `Minor` | New features or enhancements | +| Patch | 🩹 | `Patch` | Small fixes or improvements | +| Fix | 🪲 | `Fix`, `Patch` | Bugfixes | +| Docs | 📖 | `Docs` | Documentation changes only | ## Execution Steps diff --git a/.github/workflows/Build-Docs.yml b/.github/workflows/Build-Docs.yml index 74dedc53..08e28cd4 100644 --- a/.github/workflows/Build-Docs.yml +++ b/.github/workflows/Build-Docs.yml @@ -60,7 +60,7 @@ jobs: path: ${{ inputs.WorkingDirectory }}/outputs/module - name: Document module - uses: PSModule/Document-PSModule@7e50d9f41753417346ff75b3601a90524aa8ab7e # v1.0.11 + uses: PSModule/Document-PSModule@15dc407c99e408fc0a4023d4f16aee2a5507ba74 # v1.0.12 with: Name: ${{ inputs.Name }} WorkingDirectory: ${{ inputs.WorkingDirectory }} @@ -102,7 +102,7 @@ jobs: - name: Lint documentation id: super-linter - uses: super-linter/super-linter/slim@2bdd90ed3262e023ac84bf8fe35dc480721fc1f2 # v8.2.1 + uses: super-linter/super-linter/slim@502f4fe48a81a392756e173e39a861f8c8efe056 # v8.3.0 env: RUN_LOCAL: true DEFAULT_BRANCH: main diff --git a/.github/workflows/Build-Site.yml b/.github/workflows/Build-Site.yml index 59794fb4..53ec0e8a 100644 --- a/.github/workflows/Build-Site.yml +++ b/.github/workflows/Build-Site.yml @@ -48,7 +48,7 @@ jobs: fetch-depth: 0 - name: Install-PSModuleHelpers - uses: PSModule/Install-PSModuleHelpers@e05e9875aafc0a1e63fc13989b3b683a7ef6444f # v1.0.5 + uses: PSModule/Install-PSModuleHelpers@d60d63e4be477d1ca0c67c6085101fb109bce8f1 # v1.0.6 - name: Download docs artifact uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 diff --git a/.github/workflows/Linter.yml b/.github/workflows/Linter.yml index 70a57ce2..8d3dbfb9 100644 --- a/.github/workflows/Linter.yml +++ b/.github/workflows/Linter.yml @@ -25,7 +25,7 @@ jobs: fetch-depth: 0 - name: Lint code base - uses: super-linter/super-linter@2bdd90ed3262e023ac84bf8fe35dc480721fc1f2 # v8.2.1 + uses: super-linter/super-linter@502f4fe48a81a392756e173e39a861f8c8efe056 # v8.3.0 env: GITHUB_TOKEN: ${{ github.token }} VALIDATE_BIOME_FORMAT: false diff --git a/.github/workflows/Test-Module.yml b/.github/workflows/Test-Module.yml index 912bdf3a..77644516 100644 --- a/.github/workflows/Test-Module.yml +++ b/.github/workflows/Test-Module.yml @@ -92,7 +92,7 @@ jobs: path: ${{ inputs.WorkingDirectory }}/outputs/module - name: Test-Module - uses: PSModule/Test-PSModule@80b0364db8192e73f584603c68a127de171f881f # v3.0.6 + uses: PSModule/Test-PSModule@7d94ed751a60973867e84ea8d44521e94b7c485d # v3.0.7 with: Name: ${{ inputs.Name }} Debug: ${{ inputs.Debug }} diff --git a/.github/workflows/Test-ModuleLocal.yml b/.github/workflows/Test-ModuleLocal.yml index 3127e89e..fa4dde48 100644 --- a/.github/workflows/Test-ModuleLocal.yml +++ b/.github/workflows/Test-ModuleLocal.yml @@ -104,7 +104,7 @@ jobs: path: ${{ inputs.WorkingDirectory }}/outputs/module - name: Install-PSModuleHelpers - uses: PSModule/Install-PSModuleHelpers@e05e9875aafc0a1e63fc13989b3b683a7ef6444f # v1.0.5 + uses: PSModule/Install-PSModuleHelpers@d60d63e4be477d1ca0c67c6085101fb109bce8f1 # v1.0.6 - name: Import-Module id: import-module diff --git a/.github/workflows/Test-SourceCode.yml b/.github/workflows/Test-SourceCode.yml index ba4756cf..b9001ad9 100644 --- a/.github/workflows/Test-SourceCode.yml +++ b/.github/workflows/Test-SourceCode.yml @@ -56,7 +56,7 @@ jobs: fetch-depth: 0 - name: Test-SourceCode - uses: PSModule/Test-PSModule@80b0364db8192e73f584603c68a127de171f881f # v3.0.6 + uses: PSModule/Test-PSModule@7d94ed751a60973867e84ea8d44521e94b7c485d # v3.0.7 with: Debug: ${{ inputs.Debug }} Prerelease: ${{ inputs.Prerelease }} diff --git a/.github/workflows/workflow.yml b/.github/workflows/workflow.yml index 581d79e6..f5c0ece6 100644 --- a/.github/workflows/workflow.yml +++ b/.github/workflows/workflow.yml @@ -133,7 +133,7 @@ jobs: - name: Lint code base id: super-linter - uses: super-linter/super-linter@2bdd90ed3262e023ac84bf8fe35dc480721fc1f2 # v8.2.1 + uses: super-linter/super-linter@502f4fe48a81a392756e173e39a861f8c8efe056 # v8.3.0 env: GITHUB_TOKEN: ${{ github.token }} DEFAULT_WORKSPACE: ${{ inputs.WorkingDirectory }} diff --git a/.specify/memory/constitution.md b/.specify/memory/constitution.md index 4bc59ab8..5b52fc91 100644 --- a/.specify/memory/constitution.md +++ b/.specify/memory/constitution.md @@ -495,21 +495,21 @@ The Process-PSModule workflow uses **dynamic conditions** to determine job execu ### Publishing Behavior Examples -| PR State | Labels | Build/Test | Publish-Module | Publish-Site | Version | -|----------|--------|------------|----------------|--------------|---------| -| Opened | `minor` | ✅ Yes | ❌ No | ❌ No | N/A (not published) | -| Opened | `prerelease` | ✅ Yes | ✅ Yes (prerelease) | ❌ No | `1.3.0-branchname001` | -| Opened | `prerelease`, `minor` | ✅ Yes | ✅ Yes (prerelease) | ❌ No | `1.3.0-branchname001` | -| Synchronized | `major` | ✅ Yes | ❌ No | ❌ No | N/A (not published) | -| Synchronized | `prerelease` | ✅ Yes | ✅ Yes (prerelease) | ❌ No | `1.3.0-branchname002` | -| Merged | `minor` | ✅ Yes | ✅ Yes (normal) | ✅ Yes | `1.3.0` | -| Merged | `major` | ✅ Yes | ✅ Yes (normal) | ✅ Yes | `2.0.0` | -| Merged | `patch` | ✅ Yes | ✅ Yes (normal) | ✅ Yes | `1.2.4` | -| Merged | (no label) | ✅ Yes | ✅ Yes (if AutoPatching) | ✅ Yes | `1.2.4` (patch) | -| Merged | `NoRelease` | ✅ Yes | ❌ No | ❌ No | N/A (skipped) | -| Merged | `prerelease`, `minor` | ✅ Yes | ✅ Yes (normal) | ✅ Yes | `1.3.0` (prerelease ignored) | -| Scheduled (cron) | N/A | ✅ Yes | ❌ No | ❌ No | N/A (validation only) | -| Manual (workflow_dispatch) | N/A | ✅ Yes | ❌ No | ❌ No | N/A (validation only) | +| PR State | Labels | Build/Test | Publish-Module | Publish-Site | Version | +| -------------------------- | --------------------- | ---------- | ------------------------ | ------------ | ---------------------------- | +| Opened | `minor` | ✅ Yes | ❌ No | ❌ No | N/A (not published) | +| Opened | `prerelease` | ✅ Yes | ✅ Yes (prerelease) | ❌ No | `1.3.0-branchname001` | +| Opened | `prerelease`, `minor` | ✅ Yes | ✅ Yes (prerelease) | ❌ No | `1.3.0-branchname001` | +| Synchronized | `major` | ✅ Yes | ❌ No | ❌ No | N/A (not published) | +| Synchronized | `prerelease` | ✅ Yes | ✅ Yes (prerelease) | ❌ No | `1.3.0-branchname002` | +| Merged | `minor` | ✅ Yes | ✅ Yes (normal) | ✅ Yes | `1.3.0` | +| Merged | `major` | ✅ Yes | ✅ Yes (normal) | ✅ Yes | `2.0.0` | +| Merged | `patch` | ✅ Yes | ✅ Yes (normal) | ✅ Yes | `1.2.4` | +| Merged | (no label) | ✅ Yes | ✅ Yes (if AutoPatching) | ✅ Yes | `1.2.4` (patch) | +| Merged | `NoRelease` | ✅ Yes | ❌ No | ❌ No | N/A (skipped) | +| Merged | `prerelease`, `minor` | ✅ Yes | ✅ Yes (normal) | ✅ Yes | `1.3.0` (prerelease ignored) | +| Scheduled (cron) | N/A | ✅ Yes | ❌ No | ❌ No | N/A (validation only) | +| Manual (workflow_dispatch) | N/A | ✅ Yes | ❌ No | ❌ No | N/A (validation only) | ### Version Calculation Process diff --git a/.specify/templates/plan-template.md b/.specify/templates/plan-template.md index 53ee1010..c1a663b8 100644 --- a/.specify/templates/plan-template.md +++ b/.specify/templates/plan-template.md @@ -35,17 +35,17 @@ ## Technical Context -| Aspect | Details | -|--------|---------| -| **Language/Version** | [e.g., Python 3.11, Swift 5.9, Rust 1.75 or NEEDS CLARIFICATION] | -| **Primary Dependencies** | [e.g., FastAPI, UIKit, LLVM or NEEDS CLARIFICATION] | -| **Storage** | [if applicable, e.g., PostgreSQL, CoreData, files or N/A] | -| **Testing** | [e.g., pytest, XCTest, cargo test or NEEDS CLARIFICATION] | -| **Target Platform** | [e.g., Linux server, iOS 15+, Wasm or NEEDS CLARIFICATION] | -| **Project Type** | [single/web/mobile - determines source structure] | -| **Performance Goals** | [domain-specific, e.g., 1000 req/s, 10k lines/sec, 60 fps or NEEDS CLARIFICATION] | -| **Constraints** | [domain-specific, e.g., <200ms p95, <100MB memory, offline-capable or NEEDS CLARIFICATION] | -| **Scale/Scope** | [domain-specific, e.g., 10k users, 1M LOC, 50 screens or NEEDS CLARIFICATION] | +| Aspect | Details | +| ------------------------ | ------------------------------------------------------------------------------------------ | +| **Language/Version** | [e.g., Python 3.11, Swift 5.9, Rust 1.75 or NEEDS CLARIFICATION] | +| **Primary Dependencies** | [e.g., FastAPI, UIKit, LLVM or NEEDS CLARIFICATION] | +| **Storage** | [if applicable, e.g., PostgreSQL, CoreData, files or N/A] | +| **Testing** | [e.g., pytest, XCTest, cargo test or NEEDS CLARIFICATION] | +| **Target Platform** | [e.g., Linux server, iOS 15+, Wasm or NEEDS CLARIFICATION] | +| **Project Type** | [single/web/mobile - determines source structure] | +| **Performance Goals** | [domain-specific, e.g., 1000 req/s, 10k lines/sec, 60 fps or NEEDS CLARIFICATION] | +| **Constraints** | [domain-specific, e.g., <200ms p95, <100MB memory, offline-capable or NEEDS CLARIFICATION] | +| **Scale/Scope** | [domain-specific, e.g., 10k users, 1M LOC, 50 screens or NEEDS CLARIFICATION] | ## Constitution Check @@ -243,10 +243,10 @@ directories captured above] *Fill ONLY if Constitution Check has violations that must be justified* -| Violation | Why Needed | Simpler Alternative Rejected Because | -|-----------|------------|-------------------------------------| -| [e.g., 4th project] | [current need] | [why 3 projects insufficient] | -| [e.g., Repository pattern] | [specific problem] | [why direct DB access insufficient] | +| Violation | Why Needed | Simpler Alternative Rejected Because | +| -------------------------- | ------------------ | ------------------------------------ | +| [e.g., 4th project] | [current need] | [why 3 projects insufficient] | +| [e.g., Repository pattern] | [specific problem] | [why direct DB access insufficient] | ## Progress Tracking diff --git a/.specify/templates/spec-template.md b/.specify/templates/spec-template.md index 9e2de0cb..600e8d0b 100644 --- a/.specify/templates/spec-template.md +++ b/.specify/templates/spec-template.md @@ -20,53 +20,53 @@ ### Functional Requirements -| ID | Requirement | -|----|-------------| -| **FR-001** | System MUST [specific capability, e.g., "allow users to create accounts"] | -| **FR-002** | System MUST [specific capability, e.g., "validate email addresses"] | -| **FR-003** | Users MUST be able to [key interaction, e.g., "reset their password"] | -| **FR-004** | System MUST [data requirement, e.g., "persist user preferences"] | -| **FR-005** | System MUST [behavior, e.g., "log all security events"] | +| ID | Requirement | +| ---------- | ----------------------------------------------------------------------------------------------------------------- | +| **FR-001** | System MUST [specific capability, e.g., "allow users to create accounts"] | +| **FR-002** | System MUST [specific capability, e.g., "validate email addresses"] | +| **FR-003** | Users MUST be able to [key interaction, e.g., "reset their password"] | +| **FR-004** | System MUST [data requirement, e.g., "persist user preferences"] | +| **FR-005** | System MUST [behavior, e.g., "log all security events"] | | **FR-006** | System MUST authenticate users via [NEEDS CLARIFICATION: auth method not specified - email/password, SSO, OAuth?] | -| **FR-007** | System MUST retain user data for [NEEDS CLARIFICATION: retention period not specified] | +| **FR-007** | System MUST retain user data for [NEEDS CLARIFICATION: retention period not specified] | ### Non-Functional Requirements -| ID | Requirement | -|----|-------------| -| **NFR-001** | System MUST respond within [specific time, e.g., "500ms for 95th percentile"] | -| **NFR-002** | System MUST handle [specific load, e.g., "1000 concurrent users"] | -| **NFR-003** | System MUST maintain [availability target, e.g., "99.9% uptime"] | -| **NFR-004** | System MUST scale to [capacity limit, e.g., "10,000 transactions per second"] | -| **NFR-005** | System MUST recover within [time period, e.g., "5 minutes after failure"] | +| ID | Requirement | +| ----------- | ------------------------------------------------------------------------------------------------------------ | +| **NFR-001** | System MUST respond within [specific time, e.g., "500ms for 95th percentile"] | +| **NFR-002** | System MUST handle [specific load, e.g., "1000 concurrent users"] | +| **NFR-003** | System MUST maintain [availability target, e.g., "99.9% uptime"] | +| **NFR-004** | System MUST scale to [capacity limit, e.g., "10,000 transactions per second"] | +| **NFR-005** | System MUST recover within [time period, e.g., "5 minutes after failure"] | | **NFR-006** | System MUST encrypt data [NEEDS CLARIFICATION: encryption scope not specified - at rest, in transit, both?] | -| **NFR-007** | System MUST maintain audit logs for [NEEDS CLARIFICATION: retention period not specified] | +| **NFR-007** | System MUST maintain audit logs for [NEEDS CLARIFICATION: retention period not specified] | ### Quality Attributes Addressed -| Attribute | Target Metric | -|-----------|---------------| -| **Performance** | [e.g., "Response time < 200ms", "Throughput > 5000 TPS"] | -| **Scalability** | [e.g., "Support 100,000 concurrent users", "Linear scaling to 10 nodes"] | -| **Availability** | [e.g., "99.95% uptime", "Max 4 hours downtime per year"] | -| **Reliability** | [e.g., "MTBF > 720 hours", "Error rate < 0.01%"] | -| **Security** | [e.g., "OWASP Top 10 compliant", "SOC 2 Type II certified"] | -| **Maintainability** | [e.g., "Code coverage > 80%", "Cyclomatic complexity < 10"] | -| **Usability** | [e.g., "Task completion time < 2 minutes", "User satisfaction > 4.5/5"] | +| Attribute | Target Metric | +| ------------------- | ------------------------------------------------------------------------- | +| **Performance** | [e.g., "Response time < 200ms", "Throughput > 5000 TPS"] | +| **Scalability** | [e.g., "Support 100,000 concurrent users", "Linear scaling to 10 nodes"] | +| **Availability** | [e.g., "99.95% uptime", "Max 4 hours downtime per year"] | +| **Reliability** | [e.g., "MTBF > 720 hours", "Error rate < 0.01%"] | +| **Security** | [e.g., "OWASP Top 10 compliant", "SOC 2 Type II certified"] | +| **Maintainability** | [e.g., "Code coverage > 80%", "Cyclomatic complexity < 10"] | +| **Usability** | [e.g., "Task completion time < 2 minutes", "User satisfaction > 4.5/5"] | ### Constraints *(include if applicable)* -| Constraint | Description | -|------------|-------------| +| Constraint | Description | +| ------------------ | --------------------------------------------------------------------- | | **[Constraint 1]** | [Limitation or restriction, e.g., "Must run on Windows Server 2019+"] | -| **[Constraint 2]** | [Compliance requirement, e.g., "Must comply with GDPR"] | +| **[Constraint 2]** | [Compliance requirement, e.g., "Must comply with GDPR"] | ### Key Entities *(include if feature involves data)* -| Entity | Description | -|--------|-------------| +| Entity | Description | +| -------------- | ----------------------------------------------------------- | | **[Entity 1]** | [What it represents, key attributes without implementation] | -| **[Entity 2]** | [What it represents, relationships to other entities] | +| **[Entity 2]** | [What it represents, relationships to other entities] | --- diff --git a/README.md b/README.md index fa4d33d1..c3538716 100644 --- a/README.md +++ b/README.md @@ -200,23 +200,23 @@ For more info see [Deploy GitHub Pages site](https://github.com/marketplace/acti This table shows when each job runs based on the trigger scenario: -| Job | Open/Updated PR | Merged PR | Abandoned PR | Manual Run | -|-----|-----------------|-----------|--------------|------------| -| **Get-Settings** | ✅ Always | ✅ Always | ✅ Always | ✅ Always | -| **Lint-Repository** | ✅ Yes | ❌ No | ❌ No | ❌ No | -| **Build-Module** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | -| **Build-Docs** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | -| **Build-Site** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | -| **Test-SourceCode** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | -| **Lint-SourceCode** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | -| **Test-Module** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | -| **BeforeAll-ModuleLocal** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | -| **Test-ModuleLocal** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | -| **AfterAll-ModuleLocal** | ✅ Yes | ✅ Yes | ✅ Yes* | ✅ Yes | -| **Get-TestResults** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | -| **Get-CodeCoverage** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | -| **Publish-Site** | ❌ No | ✅ Yes | ❌ No | ❌ No | -| **Publish-Module** | ✅ Yes** | ✅ Yes** | ✅ Yes*** | ✅ Yes** | +| Job | Open/Updated PR | Merged PR | Abandoned PR | Manual Run | +| ------------------------- | --------------- | ---------- | ------------ | ---------- | +| **Get-Settings** | ✅ Always | ✅ Always | ✅ Always | ✅ Always | +| **Lint-Repository** | ✅ Yes | ❌ No | ❌ No | ❌ No | +| **Build-Module** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | +| **Build-Docs** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | +| **Build-Site** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | +| **Test-SourceCode** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | +| **Lint-SourceCode** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | +| **Test-Module** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | +| **BeforeAll-ModuleLocal** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | +| **Test-ModuleLocal** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | +| **AfterAll-ModuleLocal** | ✅ Yes | ✅ Yes | ✅ Yes* | ✅ Yes | +| **Get-TestResults** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | +| **Get-CodeCoverage** | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes | +| **Publish-Site** | ❌ No | ✅ Yes | ❌ No | ❌ No | +| **Publish-Module** | ✅ Yes** | ✅ Yes** | ✅ Yes*** | ✅ Yes** | \* Runs for cleanup if tests were started \*\* Only when all tests/coverage/build succeed @@ -261,7 +261,7 @@ The following settings are available in the settings file: | `Publish.Module.AutoCleanup` | `Boolean` | Automatically cleanup old prerelease module versions | `true` | | `Publish.Module.AutoPatching` | `Boolean` | Automatically patch module version | `true` | | `Publish.Module.IncrementalPrerelease` | `Boolean` | Use incremental prerelease versioning | `true` | -| `Publish.Module.DatePrereleaseFormat` | `String` | Format for date-based prerelease ([.NET DateTime](https://learn.microsoft.com/dotnet/standard/base-types/standard-date-and-time-format-strings)) | `''` | +| `Publish.Module.DatePrereleaseFormat` | `String` | Format for date-based prerelease ([.NET DateTime][netdt]) | `''` | | `Publish.Module.VersionPrefix` | `String` | Prefix for version tags | `'v'` | | `Publish.Module.MajorLabels` | `String` | Labels indicating a major version bump | `'major, breaking'` | | `Publish.Module.MinorLabels` | `String` | Labels indicating a minor version bump | `'minor, feature'` | @@ -453,3 +453,5 @@ The process is compatible with: - [GitHub Flow specifications](https://docs.github.com/en/get-started/using-github/github-flow) - [SemVer 2.0.0 specifications](https://semver.org) - [Continuous Delivery practices](https://en.wikipedia.org/wiki/Continuous_delivery) + +[netdt]: https://learn.microsoft.com/dotnet/standard/base-types/standard-date-and-time-format-strings