diff --git a/src/docs/Modules/Repository-Defaults.md b/src/docs/Modules/Repository-Defaults.md index 8921590..36dbf8e 100644 --- a/src/docs/Modules/Repository-Defaults.md +++ b/src/docs/Modules/Repository-Defaults.md @@ -141,30 +141,19 @@ These files are the agent equivalent of the README: pointers, not copies. Keep t ## Managed file distribution -Shared repository files are managed through [`PSModule/Distributor`](https://github.com/PSModule/Distributor). Distributor is the source of truth for managed file content and file-set membership. +**Policy ownership and distribution runtime are separate concerns.** This page — and this repository (`PSModule/docs`) — defines *what* files must exist in module repositories and *what standards they must meet*. The distribution runtime is handled by [`MSXOrg/Custo`](https://github.com/MSXOrg/Custo). -Managed-file distribution follows this contract: +For PSModule module repositories, the requirements are: -- `Type` maps a repository to its file-set root (for example `Module` or `Action`). -- `SubscribeTo` declares which optional managed file sets the repository receives. -- Organization-wide mandatory file sets define non-optional governance and supply-chain files for each applicable repository type. -- Distributor delivers changes through a `managed-files/update` branch and a `⚙️ [Maintenance]: Sync managed files` pull request. -- Receiving repositories treat managed files as generated artifacts from Distributor. Local edits in the receiving repository are replaced on the next sync and must be made in Distributor instead. -- Removing a file from a file set does not implicitly delete previously synced copies; deletion is an explicit managed change. - -This page defines what files must exist in repositories. Distributor defines how those files are distributed and kept aligned. +- Repositories must contain the required baseline files defined on this page. +- Managed copies of those files are treated as generated distribution artifacts, not repository-specific source. +- Standard changes to managed-file content are made in the distribution engine, not by patching generated copies in receiving repositories. ### Migration for existing repositories -Repositories that still reflect older distribution behavior should be aligned to this contract: - -1. Set or correct repository `Type` and `SubscribeTo` properties. -2. Ensure mandatory governance and supply-chain files from this standard exist in the repository. -3. Move any intended local edits in managed files into Distributor source file sets. -4. Sync from Distributor and merge the `managed-files/update` pull request. -5. Remove unmanaged duplicates or stale files explicitly when they are no longer part of an active file set. +Repositories still aligned to `PSModule/Distributor` (the previous distribution engine) should migrate to Custo as the runtime implementation. -After migration, the repository keeps the required files from this standard, and managed-file content changes are made through Distributor-first updates. +This page defines the required target state (the file requirements). Runtime migration mechanics and rollout design (repository targeting, update flow, overwrite behavior, and deletion behavior) are owned by Custo and should be documented and executed from the Custo repository. ## Supply-chain defaults