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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions