Repository Analysis

argoproj/argo-workflows

Workflow Engine for Kubernetes

0.4 Likely human-written View on GitHub
0.4
Adjusted Score
0.4
Raw Score
100%
Time Factor
2026-05-29
Last Push
16,726
Stars
Go
Language
410,024
Lines of Code
2728
Files
128
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 1HIGH 0MEDIUM 12LOW 115

Pattern Findings

128 matches across 8 categories. Click a row to expand file-level details.

Over-Commented Block78 hits · 78 pts
SeverityFileLineSnippet
LOW.golangci.yml121 # Check //go:build and // +build directives.
LOWcmd/argoexec/commands/emissary.go281 }
LOWtest/e2e/manifests/kubelet-configuration.yaml1# The E2E CI workflow passes this file to k3s using "--kubelet-arg=config=".
LOWtest/e2e/functional/secrets.yaml1# This example demonstrates how to reference kubernetes secrets in a workflow.
LOWtest/e2e/functional/dag-targets.yaml1# This workflow illustrates the use of DAG "targets". Targets can be thought of similarly to make
LOWtest/e2e/functional/dag-diamond-steps.yaml1# The following workflow executes a diamond workflow, with each
LOWtest/e2e/functional/output-parameter.yaml1# Output parameters provide a way to use the contents of a file,
LOWutil/grpc/mux.go41// From: https://pkg.go.dev/golang.org/x/net@v0.41.0/http2/h2c#NewHandler
LOWconfig/config.go41 // KubeConfig specifies a kube config file for the wait & init containers
LOWconfig/config.go121 // Synchronization via databases config
LOWhack/manifests/crds.go41 }
LOWhack/manifests/crds.go101 // steps:
LOWhack/embeddoc/main.go1// embeddoc is a tool that extracts code snippets from source files and embeds them into documentation.
LOWserver/artifacts/artifact_server.go61//nolint:contextcheck
LOWserver/auth/sso/sso.go361 if !isValidFinalRedirectURL(cookie.Value) {
LOWdocs/workflow-controller-configmap.yaml1# This file describes the config settings available in the workflow controller configmap
LOWdocs/workflow-controller-configmap.yaml21 parallelism: "10"
LOWdocs/workflow-controller-configmap.yaml41 nodeEvents: |
LOWdocs/workflow-controller-configmap.yaml101
LOWdocs/workflow-controller-configmap.yaml121 # AWS: s3.amazonaws.com
LOWdocs/workflow-controller-configmap.yaml161 # unless kmsKeyId or serverSideCustomerKeySecret is set
LOWdocs/workflow-controller-configmap.yaml301 name: argo-postgres-config
LOWdocs/workflow-controller-configmap.yaml321 # tableName: argo_workflows
LOWdocs/workflow-controller-configmap.yaml381 # enabled: true
LOWdocs/workflow-controller-configmap.yaml401 # podSpecLogStrategy: |
LOWdocs/workflow-controller-configmap.yaml441 # SSO Configuration for the Argo server.
LOWdocs/workflow-controller-configmap.yaml481 # Current options:
LOWdocs/argo-server-sso.md81 # * `iss` - the issuer ("argo-server")
LOWexamples/secrets.yaml1# This example demonstrates how to reference kubernetes secrets in a workflow.
LOWexamples/dag-targets.yaml1# This workflow illustrates the use of DAG "targets". Targets can be thought of similarly to make
LOWexamples/dag-diamond-steps.yaml1# The following workflow executes a diamond workflow, with each
LOWexamples/synchronization-wf-level.yaml1# This example demonstrates the use of a Synchronization lock on workflow execution. Synchronization lock limits
LOWexamples/hdfs-artifact.yaml41 hdfsUser: root
LOWexamples/hdfs-artifact.yaml61 path: /tmp/message
LOWexamples/input-artifact-git.yaml21 # reference the secret keys in the secret selectors: usernameSecret, passwordSecret,
LOWexamples/input-artifact-git.yaml41 #
LOWexamples/buildkit-template.yaml1# SUMMARY:
LOWexamples/template-on-exit.yaml1# Example showing a Step with an onExit template. The onExit template ("exitContainer")
LOWexamples/output-artifact-azure.yaml21 path: /tmp
LOWexamples/input-artifact-s3.yaml21 path: /my-artifact
LOWexamples/output-artifact-gcs.yaml21 - name: message
LOWexamples/memoize-simple.yaml1# This example demonstrates the ability to memoize a template.
LOWexamples/output-artifact-s3.yaml21 path: /tmp
LOWexamples/dag-custom-metrics.yaml1# The following workflow executes the tasks in parallel and emit the data for each task
LOWexamples/output-parameter.yaml1# Output parameters provide a way to use the contents of a file,
LOWworkflow/util/util_test.go4661 assert.Equal(t, wfv1.NodeSucceeded, siblingNode.Phase,
LOWworkflow/controller/operator.go81 controller *WorkflowController
LOWworkflow/controller/operator.go2501 node = retryNode
LOWworkflow/controller/exit_handler_test.go961# displayName: step-1.onExit
LOWworkflow/controller/dag.go41
LOWworkflow/controller/workflowpod.go1161// It is the responsibility of the init container to load all artifacts to the mounted emptydir location.
LOWworkflow/common/common.go81 LabelKeyCreatorPreferredUsername = workflow.WorkflowFullName + "/creator-preferred-username"
LOWworkflow/executor/osspecific/signal_windows.go81 return fmt.Errorf("failed to open remote thread in target process %d: %w", pid, err)
LOWworkflow/sync/sync_manager.go161// and template level keys. So upgrading is a bit tricky here.
LOW.github/workflows/release.yaml21
LOWerrors/errors.go81}
LOWpkg/apis/workflow/v1alpha1/workflow_types.go301 // +patchMergeKey=name
LOWpkg/apis/workflow/v1alpha1/workflow_types.go361 // in pods that reference this ServiceAccount. ImagePullSecrets are distinct from Secrets because Secrets
LOWpkg/apis/workflow/v1alpha1/workflow_types.go381 DNSConfig *apiv1.PodDNSConfig `json:"dnsConfig,omitempty" protobuf:"bytes,16,opt,name=dnsConfig"`
LOWpkg/apis/workflow/v1alpha1/workflow_types.go401
18 more matches not shown…
Hyper-Verbose Identifiers21 hits · 21 pts
SeverityFileLineSnippet
LOWui/src/cron-workflows/cron-workflow-status-viewer.tsx42function getCronWorkflowActiveWorkflowList(active: kubernetes.ObjectReference[]) {
LOW…nts/workflow-dag/workflow-dag-render-options-panel.tsx5export function WorkflowDagRenderOptionsPanel(props: WorkflowDagRenderOptions & {onChange: (changed: WorkflowDagRenderOp
LOW…lows-summary-container/workflows-summary-container.tsx11export function WorkflowsSummaryContainer(props: {workflows: Workflow[]}) {
LOW…rkflows/components/workflow-details/suspend-inputs.tsx68 function renderInputContentIfApplicable() {
LOW…flows/components/workflow-details/workflow-details.tsx137 function getInputParametersForNode(selectedWorkflowNodeId: string): Parameter[] {
LOW…flows/components/workflow-details/workflow-details.tsx456 function getParametersAsJsonString() {
LOW…flows/components/workflow-details/workflow-details.tsx464 function updateOutputParametersForNodeIfRequired() {
LOW…ows/components/workflows-toolbar/workflows-toolbar.tsx69 async function performActionOnSelectedWorkflows(title: string, action: WorkflowOperationAction, deleteArchived: bool
LOWui/src/shared/pod-name.ts40export function ensurePodNamePrefixLength(prefix: string): string {
LOWui/src/shared/get_workflow_params.ts18export function getWorkflowParametersFromQuery(history: History): {[key: string]: string} {
LOWui/src/shared/components/parameters-input.tsx29 function displaySelectFieldForEnumValues(parameter: Parameter) {
LOWui/src/shared/components/parameters-input.tsx43 function displayInputFieldForSingleValue(parameter: Parameter) {
LOWui/src/shared/components/links.tsx26function splitWithMetadataKnowledge(replaceable: string) {
LOWui/src/shared/components/editors/graph-viewer.tsx114 function populateGraphFromWorkflow(workflow: Workflow, name: string): Graph {
LOW…d/components/editors/labels-and-annotations-editor.tsx6export function LabelsAndAnnotationsEditor({value, onChange}: {value: kubernetes.ObjectMeta; onChange: (value: kubernete
LOWui/src/shared/components/graph/graph-panel.tsx104 function getNodeMapWithAllNodesSetToValue(nodeSelectionMap: INodeSelectionMap, value: boolean) {
LOW…rkflow-templates/cluster-workflow-template-creator.tsx14export function ClusterWorkflowTemplateCreator({onCreate}: {onCreate: (workflow: ClusterWorkflowTemplate) => void}) {
LOW…rkflow-templates/cluster-workflow-template-details.tsx27export function ClusterWorkflowTemplateDetails({history, location, match}: RouteComponentProps<any>) {
LOW…kflow-templates/cluster-workflow-template-markdown.tsx14export function ClusterWorkflowTemplateMarkdown(props: ClusterWorkflowTemplateMarkdownProps) {
LOW…-workflow-templates/cluster-workflow-template-list.tsx26export function ClusterWorkflowTemplateList({history, location}: RouteComponentProps<any>) {
LOW…-workflow-templates/cluster-workflow-template-list.tsx33 async function fetchClusterWorkflowTemplates() {
Self-Referential Comments5 hits · 18 pts
SeverityFileLineSnippet
MEDIUMcmd/argo/commands/clustertemplate/create.go24 Example: `# Create a Cluster Workflow Template:
MEDIUMcmd/argo/commands/clustertemplate/create.go27# Create a Cluster Workflow Template and print it as YAML:
MEDIUMcmd/argo/commands/clustertemplate/create.go30# Create a Cluster Workflow Template with relaxed validation:
MEDIUMcmd/argo/commands/sync/create.go29# Create a database sync limit:
MEDIUMcmd/argo/commands/sync/create.go32# Create a configmap sync limit:
AI Slop Vocabulary6 hits · 18 pts
SeverityFileLineSnippet
MEDIUMtest/e2e/functional/testvolume.yaml1# This PVC manifest is to be used in conjunction with the
MEDIUMutil/grpc/mux.go45// any HTTP server that does not handle h2c. Therefore we leverage the HTTP/1
MEDIUMhack/proto-export/main.go84 // Sequence for robust shallow fetch of a specific ref (branch, tag, or SHA)
MEDIUMexamples/testvolume.yaml1# This PVC manifest is to be used in conjunction with the
MEDIUMexamples/cron-backfill.yaml81 # making this more robust
MEDIUMpkg/apis/workflow/v1alpha1/workflow_types.go2519 // For every invocation of a template, there are nodes which we considered as "outbound". Essentially,
Verbosity Indicators10 hits · 15 pts
SeverityFileLineSnippet
LOWsdks/go/workflow-template/main.go44 // Step 1: Create a WorkflowTemplate
LOWsdks/go/workflow-template/main.go102 // Step 2: Submit workflow from template with default parameters
LOWsdks/go/workflow-template/main.go125 // Step 3: Submit workflow with custom parameters
LOWsdks/go/workflow-template/main.go154 // Step 4: List workflows created from this template
LOWsdks/go/workflow-template/main.go174 // Step 5: Get template details
LOWworkflow/controller/steps.go441 // Step 0: replace all parameter scope references for volumes
LOWworkflow/controller/steps.go449 // Step 1: replace all parameter scope references in the step
LOWworkflow/controller/steps.go515 // Step 2: replace all artifact references
LOWworkflow/controller/operator.go1409 // if the pod is succeeded, we need to check if it is a daemoned step or not
LOWworkflow/controller/exit_handler.go83 // Step 2: replace all artifact references
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippet
CRITICALworkflow/controller/operator.go4393 return woc.wf.Status.FinishedAt.Time.Sub(woc.wf.Status.StartedAt.Time).Seconds()
Redundant / Tautological Comments6 hits · 8 pts
SeverityFileLineSnippet
LOWui/test/ui/ui-wacky-workflow.yaml29 # Iterate over the list of numbers generated by the generate step above
LOWcmd/argo/commands/node.go29 Example: `# Set outputs to a node within a workflow:
LOWhack/test-go-sdk.sh27 # Check if this example should be skipped
LOWhack/test-go-sdk.sh33 # Check if this example has custom configurations
LOWhack/docs/clean_swagger_md.py147 # Check if this is a table row
LOW.github/workflows/cherry-pick-single.yml64 # Check if target branch exists
Slop Phrases1 hit · 3 pts
SeverityFileLineSnippet
MEDIUMexamples/k8s-resource-log-selector.yaml44 # For example, you can use `argo logs -c tensorflow -l replica-index=0` to see the first worker pod's