✨ Generic resource review clarity
Generic resources now show a useful object name beside the exact Terraform instance
key or index, making similar resources easier to distinguish in a plan review.
Fallback identities use name, display_name, displayName, body.displayName,
body.properties.displayName, then body.name. Missing, empty, non-scalar,
unknown, and masked values are skipped. Existing resource-specific summary mappings
and the invocation’s sensitive-value policy continue to apply.
- Import and move entries in the Refactoring Summary show the full Terraform address,
with a generic display name when available. - Bare
each.key,each.value,count.index, andselfhints now show plain
(known after apply). Specific attribute, resource, variable, and local references
retain their useful hints. - Imports with no substantive prior state include a note explaining that the report
shows the full desired state. Housekeeping-only state counts as empty. - Unchanged Microsoft Graph
api_version,url, andignore_missing_property
values are available in a collapsed Provider settings area. Changed settings
remain in the primary diff and changed-attribute count.
▶️ Getting started
Override the ordered generic fallback paths for one invocation:
tfplan2md --summary-name-attributes body.title,body.properties.title plan.jsonTo omit unchanged root and module outputs while retaining created, updated, and
deleted outputs:
tfplan2md --hide-unchanged-outputs plan.jsonBoth options are optional; unchanged outputs remain visible by default.
📸 Screenshots
Exact Terraform instance identity with a safe generic display name:
Empty imported prior state is explained before the desired values, with repetitive
provider metadata available in the collapsed Provider settings area:

