Skip to content

Define PowerShell default display UX standard (single-object list vs collection table) #55

Description

Problem

Current standards define where to place formatting/type metadata (src/formats/*.Format.ps1xml, src/types/*.Types.ps1xml) but do not define output UX heuristics for default display behavior.

Teams can make inconsistent choices for:

  • single object default view (list vs table),
  • collection default view (table vs list),
  • which properties are safe/appropriate for default display,
  • handling sensitive fields in typed output objects.

Proposal

Add a normative section to MSXOrg/docs for output display policy:

  1. Default display goals
    • Single object: optimized for inspection.
    • Collections: optimized for scan/comparison.
  2. Recommended defaults
    • Prefer list-oriented detail view for single object.
    • Prefer concise table summary for collections.
  3. Safety rules
    • Never include secrets/private key material in default views.
    • Require explicit opt-in command/property for sensitive detail.
  4. Required artifacts
    • When introducing public classes, provide matching .Types.ps1xml and .Format.ps1xml.
  5. Test guidance
    • Add tests validating default view shape and that sensitive properties are excluded.

Why now

This reduces UX drift across modules and prevents accidental sensitive-data display in terminal output/logs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions