Skip to content

[lint-monster] function-length refactoring backlog #51498

Description

@github-actions

Overview

Daily make golint-custom found 681 function-length findings grouped into the shared tracking topic function-length refactoring.

Key metrics

  • Current authoritative count: 681 findings
  • Primary areas: pkg/cli (387) and pkg/workflow (293)
  • Representative hotspots:
    • pkg/workflow/awf_command_builder.goBuildAWFCommand (377 lines), BuildAWFArgs (168 lines)
    • pkg/workflow/awf_config.goBuildAWFConfigJSON (296 lines)
    • pkg/workflow/safe_outputs_config_extraction.goextractSafeOutputsConfig (370 lines)
    • pkg/cli/add_interactive_workflow.gocheckStatusAndOfferRun (146 lines)

Representative diagnostics

  • pkg/workflow/awf_command_builder.go:24: BuildAWFCommand is 377 lines long (limit: 60)
  • pkg/workflow/compiler_safe_outputs_job.go:760: buildJobLevelSafeOutputEnvVars is 137 lines long (limit: 60)
  • pkg/cli/add_wizard_command.go:15: NewAddWizardCommand is 123 lines long (limit: 60)

Expected outcome

Reduce the backlog by slicing long functions into smaller helpers while preserving behavior and test coverage.

Remediation checklist

  • Pick a small slice from this backlog; keep the PR narrowly scoped to the selected functions only.
  • Prefer minimal, targeted helper extraction instead of broad rewrites.
  • Preserve public behavior, error messages, and call ordering.
  • Run make golint-custom after the changes and ensure the assigned slice is clean.
  • If Go files change, run make fmt.

Suggested next slices

  • pkg/workflow/awf_command_builder.go
  • pkg/workflow/safe_outputs_config_extraction.go
  • pkg/workflow/compiler_yaml_step_lifecycle.go
  • pkg/cli/add_interactive_workflow.go
  • pkg/cli/update_actions.go

Duplicate / prior tracking

Generated by 🧌 LintMonster · gpt54 · 25.8 AIC · ⌖ 6.08 AIC · ⊞ 5.8K ·

  • expires on Aug 15, 2026, 7:12 PM UTC-08:00

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions