Skip to content

📖 [Docs]: Repository Type Property standard + memory-repo ruleset fix#76

Merged
Marius Storhaug (MariusStorhaug) merged 1 commit into
mainfrom
repo-type-governance
Jul 25, 2026
Merged

📖 [Docs]: Repository Type Property standard + memory-repo ruleset fix#76
Marius Storhaug (MariusStorhaug) merged 1 commit into
mainfrom
repo-type-governance

Conversation

@MariusStorhaug

Copy link
Copy Markdown
Member

Adds Repository Type Property documenting the Type custom-property pattern used to classify repositories and drive which org-wide rulesets/controls apply to them.

Why

Standing up MSXOrg/memory per the Memory Repository Template surfaced a real gap: the org-wide "GitHub Flow" ruleset requires PRs on every push to main, which conflicts with the memory repo's designed no-PR, direct-commit workflow. Tracked in #71.

This PR documents and implements the fix in both current MSX initiative organizations:

  • MSXOrg: introduced a new Type custom property (Docs, Memory, VSCodeExtension, Other), assigned it to all 7 repos, migrated the "GitHub Flow" ruleset from the old single-purpose BranchStrategy property to a Type-based exclude condition, verified 1:1 coverage parity across every repo, then retired BranchStrategy entirely.
  • PSModule: added Memory to the existing Type property's allowed values, set PSModule/memory's Type to Memory, migrated the ruleset from a name-based ~ALL condition to the same Type-based exclude pattern, and verified all 95 repos kept identical coverage except the intentionally-excluded memory repo (95/95 → 94/95).

Both migrations used an exclude-only condition (Type != Memory is covered, not an include allow-list) specifically so future Type values are covered by default and nothing falls out of branch protection silently — the verification playbook for this is written into the new page.

Also documents a real API quirk hit during implementation: PATCH on orgs/{org}/rulesets/{id} returned 404 for an otherwise fully-authorized token, including on a disposable ruleset created solely to isolate the bug. Ruleset edits were done via delete-old + create-new instead.

Related: #71 (this PR resolves it for both organizations)

📖 [Docs]

Documents the Type custom property as the concrete mechanism for
Organization Standard's repository-type and custom-property
requirements, including the exclude-only ruleset condition pattern,
a migration/verification playbook, and the ruleset PATCH quirk
discovered while implementing it.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@MariusStorhaug
Marius Storhaug (MariusStorhaug) marked this pull request as ready for review July 25, 2026 15:32
@MariusStorhaug
Marius Storhaug (MariusStorhaug) merged commit 1a9849a into main Jul 25, 2026
19 checks passed
@MariusStorhaug
Marius Storhaug (MariusStorhaug) deleted the repo-type-governance branch July 25, 2026 15:32
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.

1 participant