Skip to content

audit: close CLI parity gaps vs go-tfe v1.101.0 #9

@thrashr888

Description

@thrashr888

Summary

Audit request: compare go-tfe v1.101.0 API surface (client methods + options structs) to hcptf CLI commands/flags and close missing parity.

Current status: coverage is partial. High-value operations are missing from CLI command surface or flags; many lower-value query/include flags are also missing.

Priority 1 (High)

  • Workspace lock/unlock lifecycle: Workspaces.Lock, Workspaces.Unlock, Workspaces.ForceUnlock are not exposed.
  • Run operations:
    • missing Runs.ListForOrganization command
    • missing Runs.ForceExecute command
    • run create lacks key create options (allow-empty-apply, plan-only, refresh, save-plan, target, replace, policy-paths, vars, include[])
    • run list/run show lack filter/include options
  • Variable sets: no commands for workspace/project/stack exclusion updates and partial method coverage:
    • missing workspace/project/stack apply/remove/update variants, tag/list helpers.
  • Policy sets: policyset is missing high-value association commands:
    • add/remove workspaces
    • add/remove workspace exclusions
    • add/remove projects
    • read/list include options and VCS-related create/update fields

Priority 2 (Medium)

  • Policy methods: Policies.Upload, Policies.Download, Policy.ReadWithOptions-style include/read filters on read/list.
  • Workspace read/list methods: ReadWithOptions, ReadByID, ReadByIDWithOptions and workspace list/search/filter flags (search[name], tags, exclude-tags, wildcard-name, project-id, status, sort, include).
  • Organization: ReadWithOptions, ReadCapacity, ReadEntitlements, ReadRunQueue are not covered; organization create/show/update miss many create/update fields and list queries.
  • Project: ReadWithOptions, create/update include/set binding/tag binding options are partial.
  • Run task/triggers: include flags in list/read are not exposed.

Priority 3 (Low / Niche)

  • Backing-data lifecycle APIs for ConfigurationVersion and StateVersion are unexposed.
  • StateVersion.ReadCurrent + StateVersion.ReadCurrentWithOptions missing for current-state workflow.
  • Plans.ReadJSONOutput missing.

Notes

  • Full scan artifact in repo: gap_audit_progress.md (generated during this audit)
  • This was run against $(go env GOMODCACHE)/github.com/hashicorp/[email protected].

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions