Skip to content

Conversation

@tmeckel
Copy link
Owner

@tmeckel tmeckel commented Oct 20, 2025

Closes: #81

GetDefaultOrganization now returns the lowered organization string explicitly instead of relying on bare named returns. This prevents callers from receiving an empty organization when the function signature changes and keeps scope parsing reliable for new security commands.
Introduces ParseScope and ResolveScopeDescriptor for reuse across security commands. Centralizing the helpers prevents duplicated logic and ensures future permission subcommands resolve organization and project scopes consistently.
NewFinder now returns the underlying IOStreams error instead of relying on naked returns. This guarantees command initialization fails fast when the CLI cannot establish terminal state.
Moves the create command to consume util.ParseScope and util.ResolveScopeDescriptor. This reduces duplication across security commands and makes future changes to scope resolution automatic.
Switches the list command to the new util-level scope helpers to avoid keeping a private copy. This keeps organization and project detection in sync across security group flows.
…ogic

The membership list command now reuses util.ResolveScopeDescriptor so project descriptors are computed once. This simplifies the command and aligns membership output with other group operations.
Drops the local scope parsing implementation in favor of the centralized helpers. This keeps the shared package focused on group targeting and guarantees consistent descriptor lookups.
Wires the new security permission hierarchy into the top-level security command. This exposes the namespace listing functionality to end users.
Creates the permission parent command with aliases and hooks in namespace subcommands. This provides a home for additional permission tooling.
Adds the namespace command layer and aliases so users can reach namespace operations under security permission. This keeps the CLI hierarchy consistent with other Azure DevOps tooling.
Implements azdo security permission namespace list with JSON and table output. The command supports optional local filtering and formats bitmasks as hexadecimal for parity with Azure tooling.
Removes the extra blank line gofmt flagged at the end of the file so diffs stay clean and formatting checks pass.
Regenerates gofmt spacing across test expectations which restores tabs and keeps future diffs minimal.
Reflows imports and indentation across the merge command tests so they adhere to Go formatting rules.
Gofmt now enforces tabbed alignment in the reopen command tests to keep assertions easy to read.
Applies gofmt so inline comments and expectations line up with Go's spacing rules.
Runs gofmt on the list printer tests which restores tab indentation and consistent structuring.
Adds the security permission command hierarchy to the generated help reference so the new namespace list command appears in CLI documentation.
Updates the security index to include the new permission documentation which keeps the navigation tree complete.
Introduces the top-level security permission documentation page generated from the CLI so users can discover available subcommands.
Adds the namespace overview page for security permission commands to mirror the CLI hierarchy.
…ommand

Provides the reference page for azdo security permission namespace list including flag descriptions.
@tmeckel tmeckel merged commit cb30dc1 into master Oct 20, 2025
1 check passed
@tmeckel tmeckel deleted the tmeckel/issue81 branch October 20, 2025 08:25
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.

feat: Implement azdo security permission namespace list command

1 participant