Skip to content

Commit 970cc9a

Browse files
authored
Feature/183 introduce a new root level release notemd that is separate from changelogmd (#189)
1 parent 14f24e2 commit 970cc9a

10 files changed

Lines changed: 53 additions & 16 deletions

File tree

.github/agents/release-manager.agent.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,10 @@ Handle versioning, changelog shaping, release-flow documentation, and publish au
3737

3838
- Treat release automation as high-risk.
3939
- Keep Keep a Changelog structure intact.
40+
- Use only the official Keep a Changelog section types in `CHANGELOG.md` and `RELEASE_NOTE.md`: `Added`, `Changed`,
41+
`Deprecated`, `Removed`, `Fixed`, and `Security`.
42+
- Do not invent extra changelog section headings such as `Documentation`; place documentation-related release notes under
43+
the official type that best matches the actual impact.
4044
- Distinguish contributor docs from end-user docs.
4145
- Treat `.github/pull_request_template.md` as the authoritative format for structured release summaries.
4246
- When the release summary is returned as Markdown or copy-ready UI output, it must follow the `markdown-authoring`

.github/agents/reviewer.agent.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ Review changes for correctness, maintainability, test coverage, workflow safety,
1616
- Use the PR template categories as the review frame.
1717
- Treat CodeScene maintainability and changed-code coverage results as release-blocking signals unless risk is accepted
1818
explicitly.
19+
- If local CodeScene tooling is unavailable, continue the review with normal validation and rely on PR/CI as the
20+
effective CodeScene gate.
1921
- Check whether website docs preserve the CLI-vs-cmdlet separation when `docs/*.html` or help markdown changed.
2022

2123
## Inputs to inspect

.github/agents/test-engineer.agent.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@ Improve or maintain the repository's Pester coverage, coverage-gate behavior, an
4343
- The changed behavior is covered.
4444
- The touched tests are readable and low-duplication.
4545
- Validation and CodeScene implications are addressed.
46-
- The pre-commit CodeScene safeguard is clean before the work is treated as commit-ready.
46+
- The pre-commit CodeScene safeguard is clean before the work is treated as commit-ready when local CodeScene tooling is
47+
available.
4748

4849
## Must not do
4950

.github/copilot-instructions.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,9 @@ When CodeScene tooling is available:
9696
- use the `guiding-refactoring-with-code-health` skill for small, measured Code Health-driven refactors
9797
- use the `safeguarding-ai-generated-code` skill when deciding whether AI-touched work is ready for commit or PR handoff
9898

99+
If CodeScene tooling is unavailable locally, continue with the normal repository validation flow and continue silently;
100+
the pull request and CI flow remains the effective CodeScene gate.
101+
99102
For documentation-only changes, executable validation may be skipped if no code path or workflow behavior changed.
100103

101104
## File formatting rule

.github/instructions/release-policy.instructions.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,10 @@ automation.
1515
- Treat `CHANGELOG.md` as the exhaustive release history.
1616
- Treat `RELEASE_NOTE.md` as the interface-focused summary for public cmdlet, CLI, configuration, and migration changes.
1717
- Keep `## [Unreleased]` valid and readable.
18+
- Use only the official Keep a Changelog section types in both files: `Added`, `Changed`, `Deprecated`, `Removed`,
19+
`Fixed`, and `Security`.
20+
- Do not add custom section headings such as `Documentation`; place documentation-related release notes under the
21+
official type that best matches the real change.
1822
- If `RELEASE_NOTE.md` has no public API or workflow changes under `## [Unreleased]`, keep the exact placeholder under
1923
`### Added`: `No public API or workflow changes in this release. Internal maintenance only.`
2024
- If `RELEASE_NOTE.md` has real release-note entries, do not keep that placeholder.

.github/prompts/prepare-release.prompt.md

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,19 @@ Prepare release-related changes in NovaModuleTools without publishing or tagging
99
2. Inspect the touched versioning, package, publish, or release tests.
1010
3. Confirm whether the change affects stable releases, prereleases, or both.
1111
4. Update changelog, release notes, and contributor docs as needed.
12-
5. Check whether `RELEASE_NOTE.md` needs the placeholder rule under `## [Unreleased]`:
13-
- If there are no real public API or workflow changes, ensure `### Added` contains exactly
12+
5. Use only the official Keep a Changelog section types in `CHANGELOG.md` and `RELEASE_NOTE.md`: `Added`, `Changed`,
13+
`Deprecated`, `Removed`, `Fixed`, and `Security`.
14+
- Do not create custom headings such as `Documentation`; place documentation-related release notes under the official
15+
type that best matches the actual impact.
16+
6. Check whether `RELEASE_NOTE.md` needs the placeholder rule under `## [Unreleased]`:
17+
- If there are no real public API or workflow changes, ensure `### Added` contains exactly
1418
`No public API or workflow changes in this release. Internal maintenance only.`
15-
- If there are real release-note entries, remove that placeholder.
16-
6. Keep `RELEASE_NOTE.md` free of compare-link footer URLs.
17-
7. Validate the relevant release or versioning path.
18-
8. Summarize the result using the exact structure from `.github/pull_request_template.md`.
19-
9. Make the summary concise, reviewer-focused, directly reusable, and compliant with the `markdown-authoring` skill
20-
(`.github/skills/markdown-authoring/SKILL.md`) when the output is returned as Markdown.
19+
- If there are real release-note entries, remove that placeholder.
20+
7. Keep `RELEASE_NOTE.md` free of compare-link footer URLs.
21+
8. Validate the relevant release or versioning path.
22+
9. Summarize the result using the exact structure from `.github/pull_request_template.md`.
23+
10. Make the summary concise, reviewer-focused, directly reusable, and compliant with the `markdown-authoring` skill
24+
(`.github/skills/markdown-authoring/SKILL.md`) when the output is returned as Markdown.
2125

2226
## Repository-specific reminders
2327

.github/skills/codescene-quality/SKILL.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ Use the narrower sibling skills when the task is more specific:
2929
- Treat Code Health as the repository's authoritative maintainability signal.
3030
- Aim for Code Health `10.0` on touched files, not merely "good enough."
3131
- Treat CodeScene findings as actionable maintainability signals.
32+
- If CodeScene tooling is unavailable locally, continue with the normal repository validation flow and continue silently;
33+
pull requests and CI remain the effective CodeScene gate.
3234
- Fix duplicated test structure by extracting or parameterizing setup.
3335
- Add the smallest test that covers the missing changed-code branch.
3436
- Prefer incremental refactors over large rewrites.
@@ -42,7 +44,7 @@ Use the narrower sibling skills when the task is more specific:
4244
## Verification
4345

4446
- Re-run the affected test file(s)
45-
- Re-run the CodeScene file review after the refactor
46-
- Run the pre-commit safeguard before suggesting a commit
47-
- Run a change-set analysis before suggesting a PR for larger branch work
47+
- Re-run the CodeScene file review after the refactor when local CodeScene tooling is available
48+
- Run the pre-commit safeguard before suggesting a commit when local CodeScene tooling is available
49+
- Run a change-set analysis before suggesting a PR for larger branch work when local CodeScene tooling is available
4850
- Run `./run.ps1` after code changes

.github/skills/release-and-changelog/SKILL.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@ Use this skill when working on semantic versioning, release automation, package
2626

2727
- Keep unreleased entries readable and outcome-focused.
2828
- Keep `CHANGELOG.md` exhaustive and keep `RELEASE_NOTE.md` limited to interface-facing change summaries.
29+
- Use only the official Keep a Changelog section types: `Added`, `Changed`, `Deprecated`, `Removed`, `Fixed`, and
30+
`Security`.
31+
- Do not create custom changelog headings such as `Documentation`; place documentation-related release notes under the
32+
official type that best matches the actual release impact.
2933
- If `RELEASE_NOTE.md` has no public API or workflow changes under `## [Unreleased]`, keep the exact placeholder under
3034
`### Added`: `No public API or workflow changes in this release. Internal maintenance only.`
3135
- If `RELEASE_NOTE.md` has real release-note entries, remove that placeholder.
@@ -38,6 +42,7 @@ Use this skill when working on semantic versioning, release automation, package
3842
## Common pitfalls
3943

4044
- Logging internal iteration history in the changelog instead of final unreleased behavior
45+
- Using unofficial changelog section types such as `Documentation`
4146
- Copying internal-only changelog detail into `RELEASE_NOTE.md` when public interfaces are unchanged
4247
- Leaving the no-public-changes placeholder in place after real release-note entries were added
4348
- Forgetting that `main` and `develop` have different publish/version roles

.github/skills/safeguarding-ai-generated-code/SKILL.md

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,13 @@ Do not use this skill for broad refactoring discovery or project-level prioritiz
3030
1. After each AI modification to a file, run `code_health_review` on that file.
3131
2. If the review reports maintainability problems or regression risk, refactor the file in small steps and review it
3232
again.
33-
3. Run `pre_commit_code_health_safeguard` before commit-oriented recommendations as a broader gate across staged or
34-
modified files.
35-
4. Run `analyze_change_set` before PR-oriented recommendations as a final branch-level gate.
36-
5. If either later gate reports a regression, inspect the affected files with `code_health_review` and keep iterating
33+
3. When local CodeScene tooling is available, run `pre_commit_code_health_safeguard` before commit-oriented
34+
recommendations as a broader gate across staged or modified files.
35+
4. When local CodeScene tooling is available, run `analyze_change_set` before PR-oriented recommendations as a final
36+
branch-level gate.
37+
5. If local CodeScene tooling is unavailable, continue with the normal repository validation flow and continue silently;
38+
pull requests and CI remain the effective CodeScene gate.
39+
6. If either later gate reports a regression, inspect the affected files with `code_health_review` and keep iterating
3740
until the issue is removed or the user explicitly accepts the risk.
3841

3942
## Common mistakes

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2525
- Treats CodeScene Code Health as authoritative, requires safeguard checks before commit/PR readiness, and carries
2626
the
2727
repository's trailing-newline formatting rule into the agent flow.
28+
- Keeps local agentic work moving silently when CodeScene tooling is unavailable on a contributor machine, while
29+
pull requests and CI remain the effective CodeScene gate.
2830
- Adds repository-local PowerShell style guidance for indentation, spacing, braces/wrapping, and blank-line usage.
2931
- Adds a dedicated docs-site agent and documentation-separation guidance so website docs keep a clear CLI-vs-cmdlet
3032
split.
@@ -49,6 +51,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
4951
- `Package.Latest` now supports policy values: `"never"`, `"stable"`, and `"always"`.
5052
- `"stable"` keeps the floating `latest` alias pinned to stable package versions.
5153
- Legacy boolean values still work for now and map to `"always"` / `"never"` for backward compatibility.
54+
- Release-history handling now uses a separate root-level `RELEASE_NOTE.md`.
55+
- `CHANGELOG.md` remains the exhaustive release history.
56+
- `RELEASE_NOTE.md` now captures only public cmdlet, CLI, configuration, and migration-impacting changes, including
57+
backfilled summaries for the existing released versions in `CHANGELOG.md`.
58+
- `Tests.yml` now validates both files, and `Publish.yml` now finalizes both files during stable release
59+
preparation.
60+
- The public release-notes page now renders `RELEASE_NOTE.md` instead of the full changelog feed.
5261

5362
### Deprecated
5463

0 commit comments

Comments
 (0)