Skip to content

Docs: explain src/ vs the signed top-level copies in README#8

Merged
crutkas merged 2 commits into
microsoft:mainfrom
crutkas:docs/src-vs-signed
May 23, 2026
Merged

Docs: explain src/ vs the signed top-level copies in README#8
crutkas merged 2 commits into
microsoft:mainfrom
crutkas:docs/src-vs-signed

Conversation

@crutkas

@crutkas crutkas commented May 23, 2026

Copy link
Copy Markdown
Member

Summary

Adds a Repo layout: signed vs source section to the top-level
README.md. Pure documentation change; no code or file moves.

Why

The repo carries two parallel copies of every flow:

  • Windows Dev Config/, Workloads/, Wsl Comfort/ at the top level — Authenticode-signed release copies.
  • src/Windows Dev Config/, src/Workloads/, src/Wsl Comfort/ — the unsigned source contributors edit and CI runs from.

The README's winget configure -f ".\Windows Dev Config\dev-config.winget"-style commands all point at the top-level signed copies, while .github/workflows/ci.yml and src/docs/development.md point at src/. Today nothing in the top-level README mentions the split at all, so a first-time reader genuinely can't tell:

  • which directory is canonical,
  • which one to edit if they want to contribute,
  • why a src/Windows Dev Config/ even exists next to Windows Dev Config/,
  • or why the signed copies appeared in the repo (they were merged from the signed branch in Add signed files #6).

What the new section says

A small 4-column table covering every top-level and src/ path with what it is, edit it?, and run it?, followed by four short prose blocks aimed at distinct readers:

  • End users — the README's commands point at the top-level signed copies on purpose; you don't need to know src/ exists.
  • Contributors — edit src/; the top-level paths are regenerated by .pipelines/OneBranch.SignAndPackage.yml; the signed copies were merged from signed in Add signed files #6; a src/ edit only becomes a new signed top-level copy on the next sign cycle, not at PR merge.
  • CI — runs the unsigned src/ copies on purpose; signing is a release-time concern, not a build-time one.
  • Don't — three concrete anti-patterns (don't edit a top-level signed copy, don't expect byte-identity outside the signature block, don't add a third copy).

Placement

Inserted between the existing Command Palette extension and Troubleshooting sections. A reader who's already read the flow descriptions hits the layout section right when they start looking around the repo.

Diff

README.md | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)

29 lines added, 0 removed, no other files touched.

crutkas and others added 2 commits May 22, 2026 23:23
The repo carries two parallel copies of every flow - the top-level
'Windows Dev Config/', 'Workloads/', and 'Wsl Comfort/' directories are
Authenticode-signed release copies, while 'src/...' is the unsigned
source CI runs from. The README's run commands point at the top-level
signed copies; CI and src/docs/development.md point at src/. Nothing in
the top-level README explains the split, so a first-time reader can't
tell which copy is canonical, which to edit, or why a 'src/Windows Dev
Config/' even exists next to a 'Windows Dev Config/'.

Add a 'Repo layout: signed vs source' section to the top-level README
that:

- Lists every path with a one-line description, whether contributors
  should edit it, and whether end users run it.
- States explicitly that the README's run commands point at the signed
  top-level copies on purpose - end users don't need to know src/ exists.
- States explicitly that contributors edit src/, that the top-level
  copies are regenerated by .pipelines/OneBranch.SignAndPackage.yml,
  and that those signed copies were merged from the 'signed' branch in
  PR #6.
- Notes that CI runs the unsigned src/ copies intentionally (signing is
  a release-time, not build-time, concern).
- Calls out three 'don'ts': don't edit a top-level signed copy, don't
  expect the two trees to be byte-identical (signature block aside),
  and don't add a third copy.

Placed between 'Command Palette extension' and 'Troubleshooting' so a
reader who's followed the existing flow descriptions hits it once they
start looking around the repo. Pure documentation change; no code
movement.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@crutkas crutkas merged commit 89240fb into microsoft:main May 23, 2026
11 checks passed
@crutkas crutkas deleted the docs/src-vs-signed branch May 23, 2026 06:59
crutkas added a commit that referenced this pull request May 23, 2026
When PRs #8 and #9 landed in that order, PR #8's 'Repo layout: signed vs source' section was merged with the spaced paths (Windows Dev Config/, Wsl Comfort/) baked in, and PR #9's rename did not retroactively update that table. After both PRs the README points readers at four paths that no longer exist on disk.

Three small fixes, all inside the Repo layout section:

- Update the 4-column path table to kebab-case: windows-dev-config/, wsl-comfort/, src/windows-dev-config/, src/wsl-comfort/.
- Update the inline 'every winget configure -f ...-style invocation in this README is correct as written' example to drop the now-unnecessary surrounding quotes and use windows-dev-config.
- Remove the stray '- ' empty bullet that landed at the end of the 'Don't' list (likely a stray trailing dash in the PR #8 source).

No new content. No structural changes elsewhere.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.

2 participants