Skip to content

Align Yaml module source layout to PSModule domain-grouping standards #50

Description

Summary

PSModule/Yaml currently keeps src/functions/public/*.ps1 and src/functions/private/*.ps1 in flat directories. PSModule standards recommend domain-grouped public/private function folders and group documentation pages.

Why

During PR #47 release-prep audits, we confirmed:

  • public commands are not grouped by domain folder,
  • private helpers are not organized to mirror public domains,
  • group markdown docs beside public groups are missing.

This is structural drift against PSModule/docs module layout guidance. The refactor is broad (touches many files) and is intentionally deferred out of PR #47 to keep the release merge reviewable.

Canon references

  • PSModule/docs src/docs/Modules/Standards.md
    • "Group by domain"
    • "Mirror public and private domains"
    • "Group documentation pages with source"

Proposed scope

  1. Reorganize src/functions/public/ into domain folders.
  2. Reorganize src/functions/private/ to mirror those domains.
  3. Add <Group>.md files beside each public domain group.
  4. Update any build/discovery assumptions and tests impacted by path changes.

Acceptance criteria

  • Public and private function paths follow domain grouping conventions.
  • Group docs exist for each public function domain.
  • Existing command behavior remains unchanged.
  • Full test suite passes after reorganization.

Out of scope

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions