Skip to content

Template guidance uses canonical pointers without a PR template - #42

Open
Marius Storhaug (MariusStorhaug) wants to merge 4 commits into
mainfrom
fix-repository-standard-link
Open

Marius Storhaug (MariusStorhaug) wants to merge 4 commits into
mainfrom
fix-repository-standard-link

Conversation

@MariusStorhaug

@MariusStorhaug Marius Storhaug (MariusStorhaug) commented Aug 2, 2026 •

Copy link
Copy Markdown
Member

Template contributors use canonical documentation pointers and PR-format guidance without a repository-local PR scaffold. This candidate preserves the original link corrections and removes the stale PR-template file; it stays draft because live documentation and current-main correspondence remain unresolved.

Removed: Repository-local pull request scaffolds

New repositories created from this candidate no longer receive .github/pull_request_template.md. Contributors write their actual descriptions from the canonical PR description example, not a replacement file. Existing downstream repositories must remove their own local copies when adopting the no-file decision; this pull request changes only this template candidate.

The user's clarified decision is "Remove central defaults too; use canonical PR-format guidance only". Central default-file removals are separately owned and unmerged. This candidate neither supplies a central fallback nor claims GitHub inheritance is already removed in production. It does not change the separately owned artifact work in #43.

The file policy comes from Repository Standard: No PR-template files. At final unmerged MSXOrg/docs#209 source bc03a5992615f65d1d5346dc48e7506e80b8b6ca, it prohibits storing, inheriting, distributing, or generating GitHub PR-template files across repository types, central .github sources, and multiple-template directories, without a file exception. PR Format owns the actual record procedure and description example, not GitHub template-file policy. This is pinned policy/format correspondence, not a claim that the older published scaffold/fallback contract remains applicable or that the central rollout has merged.

Technical details

Exact scoped correction. Candidate 699879f18d9226fde8917ff2217eeb7d1a9adb4f has parent 8587eef6a12d9423f7a603a8183cf8037615bfb8. The new commit deletes one file and 36 lines. AGENTS.md, README.md, and CONTRIBUTING.md are unchanged from the prior candidate. Against scoped PR merge base aa0d124c51a2b664614f27b7cc15280d5801abe3, the complete branch diff remains those three original link-correction files plus the template deletion: 4 files, 10 insertions, 46 deletions.

Verification and plan progress. The native Task's test-first audit, deletion, existing Markdown validation, and ordinary commit/push steps are complete. The actual checkout, index, and committed tree contain zero single-file or multiple-template variants under root, .github, or docs, including case variants. No directly dependent local reference required an edit; CONTRIBUTING.md retains its canonical PR Format pointer. npx --no-install markdownlint-cli2 --config .github\linters\.markdown-lint.yml AGENTS.md README.md CONTRIBUTING.md passed for 3 files with zero issues. git diff --check passed, and the staged diff was exactly the intended deletion. No new checker, dependency, build, test, manifest, or metadata design was added.

Policy and record evidence are separate. The file-absence audit verifies the Repository Standard file policy only; an inherited scaffold, file-presence result, or similarity to a central copy is not evidence of PR-format adherence. The actual plain reader-facing title and complete body were checked against the pinned description example: one summary marker, ordered Removed, Changed, Fixed, Fixed result groups, and section-scoped supporting evidence. This structural correspondence does not resolve the release-bound evidence or readiness blockers below. This final correspondence revision changes only this PR record and its Task record, not the candidate source.

Publication safety. The unchanged caller pins PSModule/Process-PSModule at fb1bdb8fefd243292f779d2a856a38db6fe6daf4 (v6.1.13). Its immutable settings implementation enables module publication only for a qualifying merged PR or an open PR with its supported prerelease label; site publication requires a qualifying merged PR. This PR is unmerged, remains draft, and has no labels. The normal synchronize push therefore enables neither publication job. No workflow was dispatched and no trigger, live rule, label, release, tag, or auto-merge setting was changed. The new-head Actions run inventory returned no runs at readback; old-head checks are not represented as new-head validation.

Current-main correspondence blocker. Live main was verified at ff935a5745db222c5f28e59df45931b617c2c50b. Read-only git merge-tree --write-tree --messages ff935a5745db222c5f28e59df45931b617c2c50b 699879f18d9226fde8917ff2217eeb7d1a9adb4f reports content conflicts in AGENTS.md and README.md, and a modify/delete conflict in root CONTRIBUTING.md, which main has relocated to .github/CONTRIBUTING.md. GitHub reports the candidate as unmergeable. No merge, rebase, amendment, or force-push was performed; reconciling these other authors' changes is outside this bounded correction.

Release-bound correspondence remains unresolved. The identities above describe the scoped PR correction, not a published-artifact-to-candidate coverage range. The retained caller uses legacy release-label defaults, including NoRelease and prerelease, rather than the canonical release:* mapping. This Task does not upgrade or adapt that producer, invent a publication baseline or version, or finalize release decisions. Such correspondence and the live-documentation prerequisites must be resolved before readiness or a release-bound record is asserted.

Changed surface Standards checked Framework docs checked Result
.github/pull_request_template.md removal Markdown; user-directed no-file decision; pinned Repository Standard file policy and PR Format actual description example above PSModule repository standard URL returns 404; obsolete framework template requirements are separately owned by PSModule/Process-PSModule#525 Exception - PSModule/Process-PSModule#525; bounded local removal complete

Issue convergence sweep. Scope: this repository's open documentation/PR-template issues and the existing candidate's linked work. #61 owns this one reconciliation delivery. #40 still requires rewriting and preserving a template file, so deletion does not satisfy its current acceptance criteria; it is not closed or reformatted here. #56 and #57 are broader work and remain untouched. Central removals and framework guidance stay with their existing owners.

Related references

Changed: PSModule documentation pointers use the canonical host

The retained link corrections use psmodule.io directly instead of psmodule.github.io. They preserve the original canonical-host decision without changing module code, workflow inputs, or invocation. No additional source edit is required to retain these pointers; live URL availability remains a prerequisite, not a successful result claimed by this correction.

Fixed: Repository standard pointers name the renamed page

The retained correction changes the "repository defaults" references in README.md, AGENTS.md, and CONTRIBUTING.md to Repository standard and uses the page's renamed title. This prevents new copies from retaining the old Repository-Defaults pointer, while preserving the original link-fix work.

The candidate must remain draft: the current URL check does not establish that these PSModule routes resolve. The original prerequisite on PSModule/docs#107 is retained below, but its pull endpoint now returns 404, so its merge/publication state cannot be confirmed. This bounded correction does not introduce another route, redirect, or publishing redesign.

Technical details

Current live-documentation blockers, checked 2026-10-31. All 12 distinct external documentation URLs retained in the three guidance files were requested with redirects followed. Six return 200 and the following six return 404. Markdown success is not evidence of successful URL resolution.

Retained URL Current result
https://psmodule.io/docs/Modules/Process-PSModule/template-quickstart/ HTTP 404
https://psmodule.io/docs/Modules/Repository-Standard/ HTTP 404
https://psmodule.io/docs/Modules/Process-PSModule/module-anatomy/ HTTP 404
https://psmodule.io/docs/Modules/Process-PSModule/build-test-pack-publish/ HTTP 404
https://psmodule.io/docs/Modules/Standards/ HTTP 404
https://msxorg.github.io/docs/Ways-of-Working/Agentic-Development/ HTTP 404 after redirect to msx.no

Original link-fix evidence, retained from the prior candidate

The following evidence is preserved from candidate 8587eef6a12d9423f7a603a8183cf8037615bfb8 and its original description. It records the earlier rationale, prerequisites, and reported observations; it is not a fresh verification of those claims. The current results above supersede its historical URL-status claims. In particular, the historical PSModule/docs#107 prerequisite remains unresolved rather than being described as merged or published.

How the broken links were found. PSModule/Process-PSModule#486 established that the documentation site had not been republished since 2026-07-18, which is why the renamed page still appeared to work: the old URL kept serving a stale build. Once PSModule/docs#107 restores publishing, the rename goes live and the old path starts returning 404. The referrer set was enumerated with gh search code "Repository-Defaults" --owner PSModule, which found eight files across four repositories; this pull request covers the three in this repository, and the rest are tracked on PSModule/Process-PSModule#487.

Why the links were fixed rather than a redirect added. Recorded on PSModule/Process-PSModule#487. In short: Zensical has no redirect support — zensical/backlog#23 is open — so a redirect would have to be a hand-written stub page that is built, search-indexed, excluded from navigation, and maintained indefinitely. The referrers are enumerable and in-organization, so correcting them is the smaller change.

Host handling, and why only the PSModule links changed. psmodule.github.io returns 301 to psmodule.io, and PSModule/docs declares site_url = "https://psmodule.io/docs/", so psmodule.io is unambiguously canonical and the links now say so. The MSX links were deliberately left on msxorg.github.io: that host also redirects, to msx.no, but MSXOrg/docs still declares site_url = "https://msxorg.github.io/...", so which host is canonical there is not settled and this pull request is not the place to decide it. Only the genuinely broken MSX path was corrected.

Verification. Every documentation URL in the changed files was requested; all return 200.

URL Status
https://psmodule.io/docs/Modules/Process-PSModule/template-quickstart/ 200
https://psmodule.io/docs/Modules/Process-PSModule/module-anatomy/ 200
https://psmodule.io/docs/Modules/Process-PSModule/build-test-pack-publish/ 200
https://psmodule.io/docs/Modules/Standards/ 200
https://msxorg.github.io/docs/Ways-of-Working/Issues/Process/Format/ 200
https://psmodule.io/docs/Modules/Repository-Standard/ 404 until PSModule/docs#107 merges, 200 after

The last row is the one dependency: this pull request should merge after PSModule/docs#107 restores publishing, or the link it introduces is briefly the broken one.

Standards and framework alignment.

Changed surface Standards checked Framework docs checked Result
README.md, AGENTS.md, CONTRIBUTING.md Markdown, Documentation — link-only changes, structure untouched Repository standard — the three files remain present and unchanged in purpose Aligned

Issue convergence sweep. Scope: open issues in this repository and in PSModule/docs concerning the template's community files or documentation links. Nothing in this repository is fully satisfied by this diff. PSModule/Process-PSModule#487 is only partially satisfied — the already-propagated copies in PSSemVer and Lovdata remain — so it is linked without a closing keyword. PSModule/Process-PSModule#478, on distributing these files, is untouched and remains the durable answer to this class of drift.

Related references

Fixed: The issue format pointer reaches its replacement page

The "issue format" link pointed at Ways-of-Working/Issue-Format/, which no longer exists. It now points at Issues / Process / Format, the page that replaced it. The retained replacement URL returns HTTP 200 after redirects in the current check. No additional local edit is made by the template-removal commit.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@github-actions

github-actions Bot commented Aug 2, 2026

Copy link
Copy Markdown

Super-linter summary

Language Validation result
CHECKOV Pass ✅
GITHUB_ACTIONS Pass ✅
GITLEAKS Pass ✅
GIT_MERGE_CONFLICT_MARKERS Pass ✅
MARKDOWN Pass ✅
NATURAL_LANGUAGE Pass ✅
POWERSHELL Pass ✅
PRE_COMMIT Pass ✅
SPELL_CODESPELL Pass ✅
TRIVY Pass ✅
YAML Pass ✅

All files and directories linted successfully

For more information, see the GitHub Actions workflow run

Powered by Super-linter

Marius Storhaug (MariusStorhaug) added a commit to PSModule/CasingStyle that referenced this pull request Aug 2, 2026
…amed pages

Mirrors PSModule/Template-PSModule#42 so this repository's copies stay
identical to the managed source.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates documentation hyperlinks in the template’s community and guidance files so they resolve to the current PSModule/MSXOrg documentation URLs, preventing new module repositories created from this template from inheriting broken links.

Changes:

  • Updated PSModule documentation links to use the canonical https://psmodule.io/docs/... host.
  • Replaced the renamed PSModule page link (Repository-Defaults → Repository-Standard) and adjusted link text accordingly.
  • Updated the MSXOrg “issue format” link to the new path under Ways-of-Working/Issues/Process/Format/.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
README.md Updates the quickstart and repository checklist documentation links to the current PSModule docs URLs.
CONTRIBUTING.md Updates repository standard, issue format, and PSModule standards links to their current destinations.
AGENTS.md Updates the PSModule guidance chain links to the current PSModule docs host and page names.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Marius Storhaug (MariusStorhaug) added a commit that referenced this pull request Sep 5, 2026
New modules created from this template start with the current
Process-PSModule v8 test and documentation contract, a repository-local
contribution guide, and centrally managed PSModule community policies.
The template's scheduled framework run returns to green.

## Fixed: Current Process-PSModule compatibility

The starter test requires Pester 6.1.0 while retaining the supported 6.x
range. The starter public function links first to its generated online
reference, as required by the framework source test.

## Changed: Generated documentation design

Generated module sites now share the portable typography, icons,
palettes, navigation, search, content, plugin, and Markdown-extension
settings from MSXOrg/docs. Explicit navigation remains absent, so
Zensical derives index-first, alphabetical navigation from the generated
folder tree. Cookie consent is not part of the generated-module
template.

## Changed: Repository and organization guidance have explicit owners

The repository owns `.github/CONTRIBUTING.md`. Code of Conduct,
security, and support policies remain centrally managed by
`PSModule/.github` and are linked rather than copied. Process-PSModule
owns module releases, so the template no longer carries unused GitHub
generated-release-notes configuration.

---
<details>
<summary>Technical details</summary>

- Raises the starter test's minimum Pester version from 6.0.0 to 6.1.0.
- Adds the canonical generated documentation URL to the starter
function's comment-based help.
- Aligns `.github/zensical.toml` with `MSXOrg/docs` at
`bc6c212b1da6872424543cc6c4d249b1b1f8a845`, with MSX settings taking
precedence over Process-PSModule differences.
- Enables `navigation.indexes` while keeping manual `nav` absent.
- Keeps generated-site exceptions explicit: no source edit/view actions,
`custom_dir`, JavaScript/CSS assets, `watch`, snippets, or
`[project.extra.consent]`. Cookie consent is intentionally not part of
generated module sites.
- Restricts placeholders to repository identity and content-specific
values.
- Moves `CONTRIBUTING.md` to `.github/CONTRIBUTING.md`, updates
repository links, and aligns its workflow references with current MSX
guidance.
- Links the Code of Conduct, security policy, and support guidance from
the centrally managed `PSModule/.github` source; no local policy
overrides are included.
- Removes `.github/release.yml` because Process-PSModule owns release
generation and does not use GitHub generated release notes.
`.github/PSModule.yml` remains the repository-local workflow settings
surface.
- GitHub's branch contents API resolves `.github/CONTRIBUTING.md` and
`.github/PSModule.yml` and confirms the local policy files, root
contribution duplicate, and `.github/release.yml` are absent.
- Preserves the exact v8 caller workflow, with no `TestData` payload
required.
- Migration inventory: one module-local test file, no external fixtures,
no mocks, no data-driven cases, and no setup or teardown scripts.
- Local validation: Pester 6.1.0 passed; PSScriptAnalyzer 1.25.0
reported no findings; the pinned MSX TOML contract comparison,
codespell, relative-link checks, central-policy link checks, and
file-ownership checks passed; a staged Zensical 0.0.50 build completed
with only the pre-existing README-link warnings tracked by
PSModule/Process-PSModule#523.
- Hosted validation: the full Process-PSModule build, site, source,
module, module-local, lint, result, coverage, and CodeQL checks passed
on Linux, macOS, and Windows at `d92cdc6`.
- Final Copilot review at `d92cdc6` covered all eight changed files and
generated no new comments. Its suppressed quickstart-link note is
already owned by #42 and is not added to this
scope.
- Copilot's earlier scaffold-link concern cannot use the suggested
placeholder without failing the framework's exact-link test; the
initialization gap is recorded separately in
#56, and the review thread is resolved.
- Overlap review: #42 edits the deleted root
contributing guide and needs reconciliation.
#49 also removes `.github/release.yml`, but
its proposed CODEOWNERS and pull-request-template deletions are not
adopted. #50 and #51
remain independent, although #51 touches the same AGENTS link line.
- Issue convergence sweep: the finished diff fully satisfies
#52, #54, and
#55; no other open template issue is completed
by this scope.

| Changed surface | Standards checked | Framework docs checked | Result
|
| --- | --- | --- | --- |
| `tests/**` | MSX PowerShell testing | Process-PSModule Pester 6.1
migration | Fixed in this PR |
| `src/functions/public/**` | MSX PowerShell functions and comment-based
help | Process-PSModule source test contract | Fixed in this PR |
| `.github/zensical.toml` | MSX documentation design | Process-PSModule
Zensical design and staging contract | Fixed in this PR |
| `.github/CONTRIBUTING.md`, `README.md`, `AGENTS.md` | MSX repository
and community guidance | PSModule central policy ownership | Fixed in
this PR |
| `.github/release.yml` | MSX repository configuration |
Process-PSModule release ownership | Fixed in this PR |

</details>

<details>
<summary>Relevant issues (or links)</summary>

- Resolves #52
- Resolves #54
- Resolves #55

### Related work

- References PSModule/Process-PSModule#519
- References PSModule/Process-PSModule#438
- Followed by PSModule/Process-PSModule#523
- Followed by #56
- References MSXOrg/docs#190
- References #42
- References #49
- References #50
- References #51

</details>

---------

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@MariusStorhaug Marius Storhaug (MariusStorhaug) changed the title 📖 [Docs]: Documentation links in the template resolve again Template guidance uses canonical pointers without a PR template Oct 31, 2026
@MariusStorhaug
Marius Storhaug (MariusStorhaug) marked this pull request as ready for review October 31, 2026 22:38
Copilot AI balanced review requested due to automatic review settings October 31, 2026 22:38

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Three reported conflicts with current main remain unresolved, and unavailable documentation targets prevent verification of the separate publication prerequisites from this scoped diff.

No open issues 🎉

Review effort: Balanced

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Reconcile the template guidance candidate without a PR-template file

2 participants