Jwt is already published to the PowerShell Gallery as version 1.9.1. Consumers rely on the current exported commands and behavior, but the repository has only recently been split into individual function files and still reflects gallery-era conventions rather than the structure expected by Process-PSModule. As a result, the repository is not yet a trustworthy source of truth for the published module and routine maintenance risks introducing silent API drift.
Request
User impact
Maintainers need the repository source to represent the currently published module accurately so that fixes, documentation, linting, and future features can be built on top of a stable baseline. Without that alignment, small refactors can change command signatures, omit compatibility aliases, or diverge from gallery behavior without being caught early.
Current experience
The current source layout and function implementations are only partially aligned with PSModule design principles. The repository may preserve the rough feature set of the published module, but conventions around function structure, comment help, parameter declarations, alias preservation, pipeline handling, and validation are inconsistent, which makes automated Process-PSModule quality checks less reliable.
Desired experience
The repository should be the authoritative source for the published Jwt module. Public behavior from Jwt 1.9.1 should remain intact unless an intentional follow-up issue explicitly changes it, while the implementation, tests, and documentation align with PSModule design principles.
Acceptance criteria
Technical decisions
Compatibility baseline: Use the currently published PowerShell Gallery package as the behavioral baseline for this alignment work. This issue is about making the repository match the published module, not redefining the module surface.
Scope boundary: Preserve existing public command names, aliases, and default behaviors while aligning implementation details to PSModule conventions. Intentional new functionality or breaking cleanup belongs in separate issues such as #13.
Source layout: Keep the split source model in src/functions/public/ as the public entry point. Add private helpers only where duplication can be reduced without changing observable behavior.
Validation strategy: Treat Pester tests and configured linter rules in .github/PSModule.yml as the enforcement mechanism for parity and style. Tests should assert exported commands, compatibility aliases, and representative create, parse, and verify scenarios.
Documentation source of truth: Drive module documentation from in-source comment help and the repository README.md so the generated docs from Process-PSModule stay consistent with the shipped module.
Related work: This issue is not a duplicate of #13. #13 expands Jwt capabilities, while this issue establishes a PSModule-aligned baseline for the already published module.
Implementation plan
Baseline capture
Source alignment
Validation
Documentation and follow-up
Jwtis already published to the PowerShell Gallery as version 1.9.1. Consumers rely on the current exported commands and behavior, but the repository has only recently been split into individual function files and still reflects gallery-era conventions rather than the structure expected by Process-PSModule. As a result, the repository is not yet a trustworthy source of truth for the published module and routine maintenance risks introducing silent API drift.Request
User impact
Maintainers need the repository source to represent the currently published module accurately so that fixes, documentation, linting, and future features can be built on top of a stable baseline. Without that alignment, small refactors can change command signatures, omit compatibility aliases, or diverge from gallery behavior without being caught early.
Current experience
The current source layout and function implementations are only partially aligned with PSModule design principles. The repository may preserve the rough feature set of the published module, but conventions around function structure, comment help, parameter declarations, alias preservation, pipeline handling, and validation are inconsistent, which makes automated Process-PSModule quality checks less reliable.
Desired experience
The repository should be the authoritative source for the published Jwt module. Public behavior from Jwt 1.9.1 should remain intact unless an intentional follow-up issue explicitly changes it, while the implementation, tests, and documentation align with PSModule design principles.
Acceptance criteria
src/functions/public/follow PSModule conventions for function structure, parameter declarations, help, output types, and pipeline support.README.mdusage and generated help content reflect the aligned source layout and supported command surface.Technical decisions
Compatibility baseline: Use the currently published PowerShell Gallery package as the behavioral baseline for this alignment work. This issue is about making the repository match the published module, not redefining the module surface.
Scope boundary: Preserve existing public command names, aliases, and default behaviors while aligning implementation details to PSModule conventions. Intentional new functionality or breaking cleanup belongs in separate issues such as #13.
Source layout: Keep the split source model in
src/functions/public/as the public entry point. Add private helpers only where duplication can be reduced without changing observable behavior.Validation strategy: Treat Pester tests and configured linter rules in
.github/PSModule.ymlas the enforcement mechanism for parity and style. Tests should assert exported commands, compatibility aliases, and representative create, parse, and verify scenarios.Documentation source of truth: Drive module documentation from in-source comment help and the repository
README.mdso the generated docs from Process-PSModule stay consistent with the shipped module.Related work: This issue is not a duplicate of #13. #13 expands Jwt capabilities, while this issue establishes a PSModule-aligned baseline for the already published module.
Implementation plan
Baseline capture
src/functions/public/and record any compatibility gaps that must be preserved or restored.Source alignment
CmdletBinding, parameter declarations, validation, help, output metadata, and pipeline blocks.Validation
tests/Jwt.Tests.ps1to lock the exported command surface and representative encode, decode, create, and verify behaviors.Documentation and follow-up
README.mdexamples and function references to match the aligned source and preserved public API.