Skip to content

Commit 5406c1e

Browse files
feat: Add PowerShell scripts for feature management and implementation planning
- Created `create-new-feature.ps1` to automate the creation of new feature branches and directories. - Added `setup-plan.ps1` for setting up implementation plans for features. - Introduced `update-agent-context.ps1` to update agent context files based on plan data. - Added templates for agent files, constitutions, implementation plans, feature specifications, and tasks. - Implemented structured templates to standardize feature documentation and task generation processes.
1 parent cdade77 commit 5406c1e

File tree

4 files changed

+44
-21
lines changed

4 files changed

+44
-21
lines changed

.github/workflows/Build-Docs.yml

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,11 @@ on:
3232
description: The working directory where the script will run from.
3333
required: false
3434
default: '.'
35+
ShowSummaryOnSuccess:
36+
type: boolean
37+
description: Whether to show the super-linter summary on success.
38+
required: false
39+
default: false
3540

3641
permissions:
3742
contents: read # to checkout the repo
@@ -98,6 +103,7 @@ jobs:
98103
- name: Lint documentation
99104
id: super-linter
100105
uses: super-linter/super-linter/slim@7bba2eeb89d01dc9bfd93c497477a57e72c83240 # v8.2.0
106+
continue-on-error: true
101107
env:
102108
FILTER_REGEX_INCLUDE: outputs/docs
103109
DEFAULT_BRANCH: main
@@ -117,16 +123,15 @@ jobs:
117123
ENABLE_GITHUB_ACTIONS_STEP_SUMMARY: false
118124
SAVE_SUPER_LINTER_SUMMARY: true
119125

120-
- name: Post super-linter summary on failure
121-
if: steps.super-linter.outcome == 'failure'
126+
- name: Post super-linter summary
127+
if: failure() || inputs.ShowSummaryOnSuccess == true
122128
shell: pwsh
123129
run: |
124-
Write-Host "Super-linter found issues. Generating summary..."
125130
$summaryPath = Join-Path $env:GITHUB_WORKSPACE 'super-linter-output' 'super-linter-summary.md'
126-
if (Test-Path $summaryPath) {
127-
Get-Content $summaryPath | Out-File -FilePath $env:GITHUB_STEP_SUMMARY -Encoding utf8 -Append
128-
} else {
129-
Write-Host "::warning::Super-linter failed but summary file not found at: $summaryPath"
131+
Get-Content $summaryPath | Out-File -FilePath $env:GITHUB_STEP_SUMMARY -Encoding utf8
132+
133+
$failed = '${{ steps.super-linter.outcome }}' -eq 'failure'
134+
if ($failed) {
135+
Write-Host "::error::Super-linter found issues. Please review the summary above."
136+
exit 1
130137
}
131-
Write-Host "::error::Super-linter found issues. Please review the summary above."
132-
exit 1

.github/workflows/Get-Settings.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,8 @@ jobs:
209209
Skip = $settings.Build.Module.Skip ?? $false
210210
}
211211
Docs = [pscustomobject]@{
212-
Skip = $settings.Build.Docs.Skip ?? $false
212+
Skip = $settings.Build.Docs.Skip ?? $false
213+
ShowSummaryOnSuccess = $settings.Build.Docs.ShowSummaryOnSuccess ?? $false
213214
}
214215
Site = [pscustomobject]@{
215216
Skip = $settings.Build.Site.Skip ?? $false
@@ -231,8 +232,9 @@ jobs:
231232
232233
}
233234
Linter = [pscustomobject]@{
234-
Skip = $settings.Linter.Skip ?? $false
235-
env = $settings.Linter.env ?? @{}
235+
Skip = $settings.Linter.Skip ?? $false
236+
ShowSummaryOnSuccess = $settings.Linter.ShowSummaryOnSuccess ?? $false
237+
env = $settings.Linter.env ?? @{}
236238
}
237239
}
238240
LogGroup "Final settings" {

.github/workflows/workflow.yml

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -140,18 +140,18 @@ jobs:
140140
ENABLE_GITHUB_ACTIONS_STEP_SUMMARY: false
141141
SAVE_SUPER_LINTER_SUMMARY: true
142142

143-
- name: Post super-linter summary on failure
144-
if: steps.super-linter.outcome == 'failure'
143+
- name: Post super-linter summary
144+
if: failure() || fromJson(needs.Get-Settings.outputs.Settings).Linter.ShowSummaryOnSuccess == true
145+
shell: pwsh
145146
run: |
146-
Write-Host "Super-linter found issues. Generating summary..."
147147
$summaryPath = Join-Path $env:GITHUB_WORKSPACE 'super-linter-output' 'super-linter-summary.md'
148-
if (Test-Path $summaryPath) {
149-
Get-Content $summaryPath | Out-File -FilePath $env:GITHUB_STEP_SUMMARY -Encoding utf8 -Append
150-
} else {
151-
Write-Host "::warning::Super-linter failed but summary file not found at: $summaryPath"
148+
Get-Content $summaryPath | Out-File -FilePath $env:GITHUB_STEP_SUMMARY -Encoding utf8
149+
150+
$failed = '${{ steps.super-linter.outcome }}' -eq 'failure'
151+
if ($failed) {
152+
Write-Host "::error::Super-linter found issues. Please review the summary above."
153+
exit 1
152154
}
153-
Write-Host "::error::Super-linter found issues. Please review the summary above."
154-
exit 1
155155
156156
# Runs on:
157157
# - ✅ Open/Updated PR - Builds module for testing
@@ -185,6 +185,7 @@ jobs:
185185
Verbose: ${{ inputs.Verbose }}
186186
Version: ${{ inputs.Version }}
187187
WorkingDirectory: ${{ inputs.WorkingDirectory }}
188+
ShowSummaryOnSuccess: ${{ fromJson(needs.Get-Settings.outputs.Settings).Build.Docs.ShowSummaryOnSuccess }}
188189

189190
# Runs on:
190191
# - ✅ Open/Updated PR - Builds site for preview

README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -249,6 +249,7 @@ The following settings are available in the settings file:
249249
| `Build.Skip` | `Boolean` | Skip all build tasks | `false` |
250250
| `Build.Module.Skip` | `Boolean` | Skip module build | `false` |
251251
| `Build.Docs.Skip` | `Boolean` | Skip documentation build | `false` |
252+
| `Build.Docs.ShowSummaryOnSuccess` | `Boolean` | Show super-linter summary on success for documentation linting | `false` |
252253
| `Build.Site.Skip` | `Boolean` | Skip site build | `false` |
253254
| `Publish.Module.Skip` | `Boolean` | Skip module publishing | `false` |
254255
| `Publish.Module.AutoCleanup` | `Boolean` | Automatically cleanup old prerelease module versions | `true` |
@@ -261,6 +262,7 @@ The following settings are available in the settings file:
261262
| `Publish.Module.PatchLabels` | `String` | Labels indicating a patch version bump | `'patch, fix'` |
262263
| `Publish.Module.IgnoreLabels` | `String` | Labels indicating no release | `'NoRelease'` |
263264
| `Linter.Skip` | `Boolean` | Skip repository linting | `false` |
265+
| `Linter.ShowSummaryOnSuccess` | `Boolean` | Show super-linter summary on success for repository linting | `false` |
264266
| `Linter.env` | `Object` | Environment variables for super-linter configuration | `{}` |
265267

266268
<details>
@@ -275,6 +277,7 @@ Build:
275277
Skip: false
276278
Docs:
277279
Skip: false
280+
ShowSummaryOnSuccess: false
278281
Site:
279282
Skip: false
280283
@@ -332,6 +335,7 @@ Publish:
332335
333336
Linter:
334337
Skip: false
338+
ShowSummaryOnSuccess: false
335339
env: {}
336340
337341
```
@@ -419,6 +423,17 @@ Linter:
419423
VALIDATE_ALL_CODEBASE: false
420424
```
421425

426+
#### Showing Linter Summary on Success
427+
428+
By default, the linter only shows a summary when it finds issues. You can enable summary display on successful runs:
429+
430+
```yaml
431+
Linter:
432+
ShowSummaryOnSuccess: true
433+
```
434+
435+
This is useful for reviewing what was checked even when no issues are found.
436+
422437
**Note:** The `GITHUB_TOKEN` is automatically provided by the workflow to enable status updates in pull requests.
423438

424439
For a complete list of available environment variables and configuration options, see the

0 commit comments

Comments
 (0)