Project: ti-client · Branch: main · Mode: · Model: claude-haiku-4-5-20251001 Stats: 1 user messages, 47 tool calls, tools used: Bash, Glob, Grep, Read. Conversation Turn 1 — User Search the GitHub Actions repository at /Users/USER/workspace/doctolib/actions for any actions or workflows that send data to Datadog. Look for: 1. Any action that sends metrics to Datadog (statsd, DogStatsD, Datadog API) 2. The "setup-datadog-test-visibility" action - read its contents thoroughly 3. The "telemetry" action - read its contents thoroughly 4. The "frontend-metrics" action - read its contents thoroughly 5. Any references to DD_API_KEY, datadog-ci, or dd-trace 6. Any pnpm-related actions or workflows 7. Any workflow timing/performance metrics being collected Please report exact file paths and relevant code snippets for all findings. Turn 1 — Assistant I'll search through the GitHub Actions repository systematically for all Datadog-related actions and workflows. Tools used: - Bash: find /Users/USER/workspace/doctolib/actions -type f -name ".yaml" -o -name ".yml" -o -name ".ts" -o -name ".js" | head -50 Tools used: - Glob: //datadog in /Users/USER/workspace/doctolib/actions Tools used: - Glob: //telemetry in /Users/USER/workspace/doctolib/actions Tools used: - Glob: //metrics in /Users/USER/workspace/doctolib/actions Tool results: → result (ok): /Users/USER/workspace/doctolib/actions/setup-yak/action.yml /Users/USER/workspace/doctolib/actions/create-tag/action.yml /Users/USER/workspace/doctolib/actions/create-tag/catalog-info.yaml /Users/USER/workspace/doctolib/actions/cancel-test-suites/action.yml /Users/USER/workspace/doctolib/actions/generate-trunkver/action.yml /Users/USER/workspace/doctolib/actions/generate-trunkver/catalog-info.yaml /Users/USER/workspace/doctolib/actions/terraform-lint/action.yml /Users/USER/workspace/doctolib/act …(truncated, 3093 more chars) Tool results: → result (ERROR): Ripgrep search timed out after 20 seconds. The search may have matched files but did not complete in time. Try searching a more specific path or pattern. Tool results: → result (ERROR): Cancelled: parallel tool call Glob(//datadog) errored Tool results: → result (ERROR): Cancelled: parallel tool call Glob(//datadog) errored Good! I found the setup-datadog-test-visibility action. Let me search more specifically for Datadog-related content and the other actions you mentioned. Tools used: - Grep: datadog|DD_API_KEY|DogStatsD|statsd|dd-trace in /Users/USER/workspace/doctolib/actions Tool results: → result (ok): Found 24 files /Users/USER/workspace/doctolib/actions/release-please-config.json /Users/USER/workspace/doctolib/actions/claude/action.yml /Users/USER/workspace/doctolib/actions/billeo-tests/billeo-tests-api/action.yml /Users/USER/workspace/doctolib/actions/.release-please-manifest.json /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-datadog-test-visibility.yml /Users/USER/workspace/doctolib/actions/.github/workflows/rw-claude.yml /Users/USER/workspace/doctolib/actions/claude- …(truncated, 1211 more chars) Tools used: - Bash: find /Users/USER/workspace/doctolib/actions -type d -name "datadog" -o -type d -name "telemetry" -o -type d -name "metrics" -o -type d -name "pnpm" Tool results: → result (ok): /Users/USER/workspace/doctolib/actions/setup-datadog-test-visibility /Users/USER/workspace/doctolib/actions/setup-node/fixtures-pnpm /Users/USER/workspace/doctolib/actions/frontend-metrics /Users/USER/workspace/doctolib/actions/telemetry /Users/USER/workspace/doctolib/actions/.git/logs/refs/remotes/origin/renovate/frontend-metrics /Users/USER/workspace/doctolib/actions/.git/refs/remotes/origin/renovate/frontend-metrics Tools used: - Bash: ls -la /Users/USER/workspace/doctolib/actions/ | grep -E "datadog|telemetry|metrics|pnpm|frontend" Tool results: → result (ok): drwxr-xr-x clertonra staff 192 B Mon Sep 1 15:17:42 2025 frontend-metrics drwxr-xr-x clertonra staff 160 B Mon Jan 19 17:13:28 2026 setup-datadog-test-visibility drwxr-xr-x clertonra staff 192 B Mon Jan 19 17:13:28 2026 telemetry Perfect! I found the three key actions. Now let me read them thoroughly: Tools used: - Read: /Users/USER/workspace/doctolib/actions/setup-datadog-test-visibility/action.yaml Tools used: - Read: /Users/USER/workspace/doctolib/actions/setup-datadog-test-visibility/README.md Tools used: - Read: /Users/USER/workspace/doctolib/actions/telemetry/action.yml Tool results: → result (ok): 1→name: 'Setup Datadog Test Visibility' 2→description: 'Setup Datadog Test Visibility' 3→inputs: 4→ api-key: 5→ description: 'Datadog API Key' 6→ required: true 7→ languages: 8→ description: 'Languages to instrument' 9→ required: true 10→ service: 11→ description: 'Service name' 12→ default: ${{ github.repository }} 13→ required: false 14→runs: 15→ using: 'composite' 16→ steps: 17→ - name: Config …(truncated, 638 more chars) Tool results: → result (ok): 1→# Setup Datadog Test Visibility 2→ 3→Setup Datadog Test Visibility for your CI/CD workflows to gain insights into test performance, track test execution trends, identify flaky tests or even leverage tests selection. 4→ 5→## Quick Start 6→ 7→ 8→- name: Setup Datadog Test Visibility 9→ uses: doctolib/actions/setup-datadog-test-visibility@6de1f2f2ddc6185268ea41559c6d1c644b945913 # setup-datadog-test-visibility-v0.1.0 10→ with: 11→ api-ke …(truncated, 4230 more chars) Tool results: → result (ok): 1→name: "Telemetry" 2→description: "Github Actions Telemetry via Datadog CI Visibility" 3→author: "Doctolib" 4→branding: 5→ icon: "bar-chart-2" 6→ color: "purple" 7→inputs: 8→ install: 9→ description: "Install Datadog CI" 10→ default: "false" 11→ dd_api_key: 12→ description: "Datadog API Key" 13→ required: true 14→ dd_tags: 15→ description: "Datadog Tags" 16→ required: true 17→runs: 18→ using: "co …(truncated, 945 more chars) Tools used: - Read: /Users/USER/workspace/doctolib/actions/telemetry/README.md Tool results: → result (ok): 1→# actions/telemetry 2→ 3→## About 4→ 5→Only use this action on self-hosted runners, or set install to "true" 6→ 7→Tag pipelines ans jobs on Datadog CI. 8→ 9→## Usage 10→ 11→This action sends telemetry data to Datadog CI. 12→You will need to make sure your env contains the following variables: 13→ 14→- DD_API_KEY: Your Datadog API key 15→- DD_TAGS: A comma separated list of tags to attach to the telemetry data 16→- D …(truncated, 2364 more chars) Tools used: - Read: /Users/USER/workspace/doctolib/actions/frontend-metrics Tool results: → result (ERROR): EISDIR: illegal operation on a directory, read '/Users/USER/workspace/doctolib/actions/frontend-metrics' Let me check the frontend-metrics directory: Tools used: - Bash: ls -la /Users/USER/workspace/doctolib/actions/frontend-metrics/ Tools used: - Bash: find /Users/USER/workspace/doctolib/actions/frontend-metrics -type f Tool results: → result (ok): /Users/USER/workspace/doctolib/actions/frontend-metrics/save-baseline/catalog-info.yml /Users/USER/workspace/doctolib/actions/frontend-metrics/save-baseline/README.md /Users/USER/workspace/doctolib/actions/frontend-metrics/save-baseline/action.yml /Users/USER/workspace/doctolib/actions/frontend-metrics/README.md /Users/USER/workspace/doctolib/actions/frontend-metrics/run/catalog-info.yml /Users/USER/workspace/doctolib/actions/frontend-metrics/run/CHANGELOG.md /Users/USER/workspace/doctolib/actio …(truncated, 423 more chars) Tool results: → result (ok): drwxr-xr-x clertonra staff 192 B Mon Sep 1 15:17:42 2025 . drwxr-xr-x clertonra staff 3.7 KB Mon Mar 9 14:45:51 2026 .. drwxr-xr-x clertonra staff 192 B Mon Jan 19 17:13:28 2026 pr-comment .rw-r--r-- clertonra staff 2.3 KB Mon Sep 1 15:17:42 2025 README.md drwxr-xr-x clertonra staff 192 B Wed Jan 28 11:51:55 2026 run drwxr-xr-x clertonra staff 160 B Mon Jan 19 17:13:28 2026 save-baseline Now let me read the frontend-metrics files: Tools used: - Read: /Users/USER/workspace/doctolib/actions/frontend-metrics/README.md Tool results: → result (ok): 1→# frontend-metrics 2→ 3→This is a set of actions that makes it easy to setup frontend-metrics checks on your CI. 4→This includes: 5→- run 6→- pr-comment 7→- save-baseline 8→ 9→ 10→## Reusable Workflow 11→ 12→These actions can be used separately depending on your workflow needs, but the recommended way is to use this reusable workflow Tools used: - Read: /Users/USER/workspace/doctolib/actions/frontend-metrics/run/action.yml Tool results: → result (ok): 1→name: "Run frontend-metrics" 2→description: "Run the frontend-metrics engine against a project" 3→author: "Doctolib" 4→ 5→inputs: 6→ working-directory: 7→ description: "The current working directory to run the frontend-metrics engine in" 8→ required: false 9→ default: "." 10→ 11→runs: 12→ using: "composite" 13→ steps: 14→ - name: Setup Node 15→ uses: doctolib/actions/setup-node@4f01ed3ee207115cd1dffee63da5a1b7f …(truncated, 2972 more chars) Tools used: - Read: /Users/USER/workspace/doctolib/actions/frontend-metrics/run/README.md Tool results: → result (ok): 1→# actions/frontend-metrics/run 2→ 3→## Description 4→ 5→ 6→ 7→Run the frontend-metrics engine against a project 8→ 9→ 10→ 11→## Usage 12→ 13→ yaml 14→uses: doctolib/actions/frontend-metrics/run@main 15→with: 16→ working-directory: "." 17→ 18→ 19→## Inputs 20→ 21→ 6→ 7→Setup Node.JS environment and install dependencies, with cache (stored in S3) 8→ 9→ 10→ 11→## Breaking Changes in v1.0.0 12→ 13→If specified, all path-based inputs (node-version-file, lock-file, node-modules-paths, ...) must now be relative to working-directory. …(truncated, 10423 more chars) Tools used: - Read: /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-datadog-test-visibility.yml Tools used: - Read: /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-node.yml Tool results: → result (ok): 1→name: 'Test Action: setup-datadog-test-visibility' 2→on: 3→ pull_request: 4→ branches: 5→ - main 6→ paths: 7→ - 'setup-datadog-test-visibility/' 8→ - '.github/workflows/test_setup-datadog-test-visibility.yml' 9→ 10→permissions: 11→ id-token: write 12→ contents: read 13→ 14→jobs: 15→ test: 16→ concurrency: 17→ group: ${{ github.workflow }}-${{ github.ref }} 18→ cancel-in-progress: …(truncated, 1172 more chars) Tool results: → result (ok): 1→name: "(Test) setup-node" 2→on: 3→ pull_request: 4→ branches: 5→ - main 6→ paths: 7→ - "setup-node/" 8→ - ".github/workflows/test_setup-node.yml" 9→ 10→permissions: 11→ id-token: write 12→ contents: read 13→ 14→env: 15→ DD_GIT_COMMIT_SHA: ${{ github.event.pull_request.head.sha || github.event.after || github.sha }} 16→ DD_GIT_BRANCH: ${{ github.event.pull_request.head.ref || github.ref_name }} 1 …(truncated, 5691 more chars) Now let me search for any other workflows using these actions or sending metrics to Datadog: Tools used: - Bash: find /Users/USER/workspace/doctolib/actions/.github/workflows -type f -name ".yml" -o -name ".yaml" | head -20 Tool results: → result (ok): /Users/USER/workspace/doctolib/actions/.github/workflows/cd_release_reusable_workflows.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_checkout.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_cache.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_telemetry.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-java.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-datadog-test-visibility.yml /Users/USER/w …(truncated, 1127 more chars) Tools used: - Grep: DD_|datadog|telemetry|setup-datadog in /Users/USER/workspace/doctolib/actions/.github/workflows Tool results: → result (ok): Found 21 files /Users/USER/workspace/doctolib/actions/.github/workflows/tfe-modules-validate.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_telemetry.yml /Users/USER/workspace/doctolib/actions/.github/workflows/tfe-modules-publish-snapshot.yml /Users/USER/workspace/doctolib/actions/.github/workflows/tfe-modules-publish.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-python.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-ruby.yml …(truncated, 1183 more chars) Let me read the telemetry test workflow and check some of the setup test workflows: Tools used: - Read: /Users/USER/workspace/doctolib/actions/.github/workflows/test_telemetry.yml Tool results: → result (ok): 1→name: "(Test) telemetry" 2→on: 3→ pull_request: 4→ branches: 5→ - main 6→ paths: 7→ - "telemetry/" 8→ - ".github/workflows/test_telemetry.yml" 9→ 10→permissions: 11→ id-token: write 12→ contents: read 13→ 14→env: 15→ DD_GIT_COMMIT_SHA: ${{ github.event.pull_request.head.sha || github.event.after || github.sha }} 16→ DD_GIT_BRANCH: ${{ github.event.pull_request.head.ref || github.ref_name }} 17→ …(truncated, 1086 more chars) Tools used: - Read: /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-java.yml Tool results: → result (ok): 1→name: "(Test) setup-java" 2→on: 3→ pull_request: 4→ branches: 5→ - main 6→ paths: 7→ - "setup-java/" 8→ - ".github/workflows/test_setup-java.yml" 9→ 10→permissions: 11→ id-token: write 12→ contents: read 13→ 14→env: 15→ DD_GIT_COMMIT_SHA: ${{ github.event.pull_request.head.sha || github.event.after || github.sha }} 16→ DD_GIT_BRANCH: ${{ github.event.pull_request.head.ref || github.ref_name }} 1 …(truncated, 1037 more chars) Tools used: - Read: /Users/USER/workspace/doctolib/actions/.github/workflows/tfe-modules-validate.yml Tool results: → result (ok): 1→name: Validate 2→ 3→on: 4→ workflow_call: 5→ 6→permissions: 7→ id-token: write 8→ contents: read 9→ 10→env: 11→ TERRAFORM_VERSION: ${{ vars.TERRAFORM_VERSION }} 12→ TFLINT_VERSION: "0.47.0" 13→ TFLINT_CHECKSUM: "0866123ba33b1d73dab720ca73a6976e5fb5f1c595bdf18a684d5060eca09a96" # pragma: allowlist secret 14→ TFDOCS_VERSION: "0.16.0" 15→ TFDOCS_CHECKSUM: "328c16cd6552b3b5c4686b8d945a2e2e18d2b8145b6b66129cd5491840010182" # pr …(truncated, 11397 more chars) Tools used: - Bash: grep -l "DD_\|datadog" /Users/USER/workspace/doctolib/actions/.github/workflows/.yml 2>/dev/null Tool results: → result (ok): /Users/USER/workspace/doctolib/actions/.github/workflows/org_ci_actionlint.yml /Users/USER/workspace/doctolib/actions/.github/workflows/rw-claude.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_cache-restore.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_cache-save.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_cache.yml /Users/USER/workspace/doctolib/actions/.github/workflows/test_checkout.yml /Users/USER/workspace/doctolib/actions/.github …(truncated, 1095 more chars) Let me check a few more workflows for Datadog references: Tools used: - Read: /Users/USER/workspace/doctolib/actions/.github/workflows/rw-claude.yml Tool results: → result (ok): 1→name: (RW) Claude 2→on: 3→ workflow_call: 4→ 5→permissions: 6→ contents: read 7→ pull-requests: write 8→ id-token: write 9→ 10→jobs: 11→ claude: 12→ runs-on: prod-linux-xs 13→ name: 'Claude' 14→ steps: 15→ - name: Get PR head SHA 16→ id: pr-ref 17→ if: github.event_name == 'issue_comment' && github.event.issue.pull_request 18→ uses: actions/github-script@60a0d83039c74a4aee543508d …(truncated, 6006 more chars) Tools used: - Read: /Users/USER/workspace/doctolib/actions/.github/workflows/org_ci_actionlint.yml Tool results: → result (ok): 1→# DON'T MODIFY THIS WORKFLOW FILE DIRECTLY 2→# 3→# This workflow is enforced as-code, and should not be modified manually. 4→# 5→# It permits to lint Github Actions workflows. 6→# 7→# See https://doctolib.atlassian.net/wiki/x/KICVeQ for more details. 8→# 9→ 10→name: '(Org) (CI) Run actionlint' 11→run-name: '${{ github.event.pull_request.title }}' 12→ 13→on: 14→ pull_request: 15→ branches: [master, main, staging] 16→ typ …(truncated, 2904 more chars) Tools used: - Bash: ls -la /Users/USER/workspace/doctolib/actions/setup-datadog-test-visibility/ Tool results: → result (ok): drwxr-xr-x clertonra staff 160 B Mon Jan 19 17:13:28 2026 . drwxr-xr-x clertonra staff 3.7 KB Mon Mar 9 14:45:51 2026 .. .rw-r--r-- clertonra staff 643 B Tue Oct 7 10:52:30 2025 action.yaml .rw-r--r-- clertonra staff 911 B Mon Jan 19 17:13:28 2026 CHANGELOG.md .rw-r--r-- clertonra staff 3.5 KB Mon Jan 19 17:13:28 2026 README.md Now let me check the setup-datadog-test-visibility CHANGELOG: Tools used: - Read: /Users/USER/workspace/doctolib/actions/setup-datadog-test-visibility/CHANGELOG.md Tool results: → result (ok): 1→# Changelog 2→ 3→## 0.1.1 (2025-12-22) 4→ 5→ 6→### Features 7→ 8→ FINOS-363: Trigger release for #1483 (#1484) (649d17c) 9→ 10→## 0.1.0 ( …(truncated, 864 more chars) Tools used: - Bash: find /Users/USER/workspace/doctolib/actions -name ".md" -type f | xargs grep -l "datadog\|DD_\|pnpm\|metrics" | head -20 Tool results: → result (ok): /Users/USER/workspace/doctolib/actions/cache/README.md /Users/USER/workspace/doctolib/actions/cache/save/README.md /Users/USER/workspace/doctolib/actions/cache/restore/README.md /Users/USER/workspace/doctolib/actions/setup-datadog-test-visibility/CHANGELOG.md /Users/USER/workspace/doctolib/actions/setup-datadog-test-visibility/README.md /Users/USER/workspace/doctolib/actions/setup-node/CHANGELOG.md /Users/USER/workspace/doctolib/actions/setup-node/README.md /Users/USER/workspace/doctolib/actions …(truncated, 887 more chars) Let me check the telemetry README and CHANGELOG more carefully: Tools used: - Read: /Users/USER/workspace/doctolib/actions/telemetry/CHANGELOG.md Tool results: → result (ok): 1→# Changelog 2→ 3→## 0.0.5 (2025-12-22) 4→ 5→ 6→### Features 7→ 8→ FINOS-363: Trigger release for #1483 (#1484) (649d17c) 9→ 10→## 0.0.4 Tools used: - Bash: ls -la /Users/USER/workspace/doctolib/actions/telemetry/ Tool results: → result (ok): drwxr-xr-x clertonra staff 192 B Mon Jan 19 17:13:28 2026 . drwxr-xr-x clertonra staff 3.7 KB Mon Mar 9 14:45:51 2026 .. .rw-r--r-- clertonra staff 887 B Mon Sep 1 15:17:42 2025 action.yml .rw-r--r-- clertonra staff 362 B Mon Sep 1 15:17:42 2025 catalog-info.yaml .rw-r--r-- clertonra staff 1.3 KB Mon Jan 19 17:13:28 2026 CHANGELOG.md .rw-r--r-- clertonra staff 2.0 KB Mon Sep 1 15:17:42 2025 README.md Now let me check if there's a reusable workflow for frontend-metrics: Tools used: - Bash: find /Users/USER/workspace/doctolib/actions/.github/workflows -name "frontend" -o -name "metrics" Tool results: → result (ok): /Users/USER/workspace/doctolib/actions/.github/workflows/rw-frontend-metrics.yml Tools used: - Read: /Users/USER/workspace/doctolib/actions/frontend-metrics/run/CHANGELOG.md Tool results: → result (ok): 1→# Changelog 2→ 3→## 0.1.2 (2026-01-12) 4→ 5→ 6→### Bug Fixes 7→ 8→ COREFRONT-494: define safe max-old-space-size (#1777) (79b2567) 9→ COREFRONT-494: use fixed version (#1779 Let me check the reusable workflow for frontend-metrics: Tools used: - Read: /Users/USER/workspace/doctolib/actions/.github/workflows/rw-frontend-metrics.yml Tool results: → result (ok): 1→name: Frontend Quality Metrics 2→ 3→on: 4→ workflow_call: 5→ inputs: 6→ working-directory: 7→ type: string 8→ default: "." 9→ baseline-path: 10→ type: string 11→ default: ".fqm/report.score.baseline.json" 12→ current-path: 13→ type: string 14→ default: ".fqm/report.score.json" 15→ artifact-name: 16→ type: string 17→ default: "frontend-quality-m …(truncated, 3300 more chars) Tools used: - Bash: grep -r "datadog-ci\|DogStatsD\|dd-trace" /Users/USER/workspace/doctolib/actions --include=".yml" --include=".yaml" --include=".md" 2>/dev/null | head -30 Tool results: → result (ok): /Users/USER/workspace/doctolib/actions/cache/restore/action.yml: run: datadog-ci tag --level job /Users/USER/workspace/doctolib/actions/cache/action.yml: run: datadog-ci tag --level job /Users/USER/workspace/doctolib/actions/telemetry/README.md:For more information, see the Datadog CI documentation and the CLI source code. /Users/USER/workspace/doctolib/actions/telemetry/action.yml: - r …(truncated, 997 more chars) Excellent! Let me check the cache actions and billeo tests more thoroughly: Tools used: - Read: /Users/USER/workspace/doctolib/actions/cache/action.yml Tool results: → result (ok): 1→name: "Cache" 2→description: "Github Actions Cache" 3→author: "Doctolib" 4→branding: 5→ icon: "package" 6→ color: "blue" 7→inputs: 8→ path: 9→ description: "A list of files, directories, and wildcard patterns to cache and restore" 10→ required: true 11→ key: 12→ description: "An explicit key for restoring and saving the cache" 13→ required: true 14→ restore-keys: 15→ description: "An ordered list of keys to use …(truncated, 5691 more chars) Tools used: - Read: /Users/USER/workspace/doctolib/actions/cache/restore/action.yml Tool results: → result (ok): 1→name: "Cache" 2→description: "Github Actions Cache - Restore" 3→author: "Doctolib" 4→branding: 5→ icon: "package" 6→ color: "blue" 7→inputs: 8→ path: 9→ description: "A list of files, directories, and wildcard patterns to restore" 10→ required: true 11→ key: 12→ description: "An explicit key for restoring the cache" 13→ required: true 14→ restore-keys: 15→ description: "An ordered list of keys to use for restor …(truncated, 5601 more chars) Tools used: - Read: /Users/USER/workspace/doctolib/actions/billeo-tests/billeo-tests-emulated/action.yml Tools used: - Read: /Users/USER/workspace/doctolib/actions/billeo-tests/billeo-tests-api/action.yml Tool results: → result (ok): 1→name: Billeo tests emulated 2→description: Launch Billeo tests in card emulated mode 3→ 4→inputs: 5→ token: 6→ description: "Personal access token (PAT) used to fetch the repository." 7→ required: true 8→ default: ${{ github.token }} 9→ datadog-api-key: 10→ description: "Datadog API key" 11→ required: true 12→ billeo-tests-version: 13→ description: "The version of billeo-tests to run test on" 14→ required: fals …(truncated, 11427 more chars) Tool results: → result (ok): 1→name: Billeo tests API 2→description: Launch Billeo tests API 3→ 4→inputs: 5→ token: 6→ description: "Personal access token (PAT) used to fetch the repository." 7→ required: true 8→ datadog-api-key: 9→ description: "Datadog API key" 10→ required: true 11→ billeo-version: 12→ description: "The version of the billeo-engine to test" 13→ required: true 14→ type: string 15→ billeo-tests-version: 16→ desc …(truncated, 4026 more chars) Perfect! Now let me compile a comprehensive summary report of all findings: Comprehensive Report: Datadog Integration in GitHub Actions Repository I've completed a thorough search of the GitHub Actions repository. Here are all the Datadog-related actions and workflows: 1. setup-datadog-test-visibility Action File: /Users/USER/workspace/doctolib/actions/setup-datadog-test-visibility/action.yaml Wraps the official Datadog GitHub Action for test visibility instrumentation. Key details: - Input: api-key (Datadog API Key, required) - Input: languages (Languages to instrument - java, js, etc.) - Input: service (Service name, defaults to ${{ github.repository }}) - Action: Delegates to datadog/test-visibility-github-action@fa5d4c02a5f2329cf2c62a70fd8ec532317af1c9 # v2 - Environment Variables Set: DD_TRACE_PACKAGE, DD_TRACE_ESM_IMPORT (used for Node.js) Usage Example in Tests: /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-datadog-test-visibility.yml - Uses VAULT_SECRET_DATADOG_API_KEY loaded from secrets - Tests with languages: 'js' and service: 'test-actions' --- 2. telemetry Action File: /Users/USER/workspace/doctolib/actions/telemetry/action.yml Sends CI pipeline and job-level metrics to Datadog CI using the Datadog CI CLI. Inputs: - install (default: "false") - Install datadog-ci binary - dd_api_key (required) - Datadog API Key - dd_tags (required) - Comma-separated tags Key Operations: yaml - Downloads datadog-ci binary from: https://github.com/DataDog/datadog-ci/releases/latest/download/datadog-ci_linux-x64 - Runs: datadog-ci tag --level pipeline - Runs: datadog-ci tag --level job Environment Variables Used: - DATADOG_API_KEY or DD_API_KEY - DD_TAGS - DD_ENV: ci Test Workflow: /Users/USER/workspace/doctolib/actions/.github/workflows/test_telemetry.yml - Sets DD_GIT_COMMIT_SHA, DD_GIT_BRANCH, DD_SERVICE: actions, DD_TAGS: "team:ee-foo" --- 3. frontend-metrics Actions (Suite of 3 sub-actions) Directory: /Users/USER/workspace/doctolib/actions/frontend-metrics/ 3a. frontend-metrics/run File: /Users/USER/workspace/doctolib/actions/frontend-metrics/run/action.yml - Runs the @doctolib/frontend-metrics engine - Sets up Node environment with memory optimization - Computes safe Node max-old-space-size based on system memory 3b. frontend-metrics/pr-comment File: /Users/USER/workspace/doctolib/actions/frontend-metrics/pr-comment/action.yml - Downloads baseline report from previous main branch run - Generates PR comment with metrics comparison - Uses @doctolib/frontend-metrics report command 3c. frontend-metrics/save-baseline File: /Users/USER/workspace/doctolib/actions/frontend-metrics/save-baseline/action.yml - Saves baseline report as GitHub artifact for later comparison Reusable Workflow: /Users/USER/workspace/doctolib/actions/.github/workflows/rw-frontend-metrics.yml - Orchestrates run, pr-comment, and save-baseline actions --- 4. Cache Actions with Datadog Integration cache/action.yml File: /Users/USER/workspace/doctolib/actions/cache/action.yml Lines 103-108: Sends cache hit metrics to Datadog yaml - name: Send tags to Datadog CI if: env.DATADOG_API_KEY || env.DD_API_KEY run: datadog-ci tag --level job env: DD_TAGS: "${DD_TAGS},doctolib.cache.${{ inputs.id || inputs.path }}.hit:${{ steps.cache.outputs.cache-hit }}" cache/restore/action.yml File: /Users/USER/workspace/doctolib/actions/cache/restore/action.yml Lines 99-104: Same Datadog integration pattern yaml - name: Send tags to Datadog CI if: env.DATADOG_API_KEY || env.DD_API_KEY run: datadog-ci tag --level job env: DD_TAGS: "${DD_TAGS},doctolib.cache.${{ inputs.id || inputs.path }}.hit:${{ steps.cache.outputs.cache-hit }}" --- 5. Billeo Tests Actions with Datadog Integration billeo-tests-emulated/action.yml File: /Users/USER/workspace/doctolib/actions/billeo-tests/billeo-tests-emulated/action.yml Lines 93: Installs datadog-ci bash npm install @datadog/datadog-ci Lines 195-203: Uploads test results to Datadog yaml - name: Upload test results to Datadog env: DATADOG_API_KEY: ${{ inputs.datadog-api-key }} SEND_REPORT_TO_DD: true run: | npx datadog-ci junit upload --service billeo-tests build/test-results/test/.xml \ --tags os.platform:"${{ inputs.device }}" \ --tags test.type:"$TEST_COMMAND" \ --tags reader.battery_loss:"${{ steps.batt-level-end.outputs.batt_level_diff }}" billeo-tests-api/action.yml File: /Users/USER/workspace/doctolib/actions/billeo-tests/billeo-tests-api/action.yml Lines 92-99: Uploads test results to Datadog yaml - name: Upload test results to Datadog if: ${{ !cancelled() }} env: DATADOG_API_KEY: ${{ inputs.datadog-api-key }} SEND_REPORT_TO_DD: true JUNIT_REPORT_DIRECTORY: build/test-results/test run: datadog-ci junit upload --service billeo-tests build/test-results/test/*.xml --- 6. setup-node Action with pnpm Support File: /Users/USER/workspace/doctolib/actions/setup-node/action.yml pnpm Support Details: - Input: package-manager (npm or pnpm, default: "npm") - Input: pnpm-version - Version to install - Lines 202-207: Installs pnpm using pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4 - Lines 209-212: Configures pnpm store path at ~/.pnpm-store - Lines 108-112: Auto-resolves pnpm-lock.yaml when package-manager is pnpm - Lines 117-118: Resolves pnpm install command: pnpm install --frozen-lockfile Test Fixtures: /Users/USER/workspace/doctolib/actions/setup-node/fixtures-pnpm/ Test Workflow: /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-node.yml - Lines 61-97: Comprehensive pnpm test scenarios including: - Basic setup - Cache hit testing - Disable-cache scenarios - Project root configuration --- 7. Other Workflows with DD Environment Variables test_setup-java.yml File: /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup-java.yml yaml env: DD_GIT_COMMIT_SHA: ${{ github.event.pull_request.head.sha || github.event.after || github.sha }} DD_GIT_BRANCH: ${{ github.event.pull_request.head.ref || github.ref_name }} DD_SERVICE: actions DD_ENV: ci tfe-modules-validate.yml File: /Users/USER/workspace/doctolib/actions/.github/workflows/tfe-modules-validate.yml - Lines 26-27, 33, 79, 107, 145: Sets DATADOG_API_KEY: ci, DD_GITHUB_JOB_NAME for different job stages org_ci_actionlint.yml File: /Users/USER/workspace/doctolib/actions/.github/workflows/org_ci_actionlint.yml - Lines 26, 43: Sets DD_GITHUB_JOB_NAME for workflow linting jobs rw-claude.yml File: /Users/USER/workspace/doctolib/actions/.github/workflows/rw-claude.yml - Line 121: Passes Datadog API key to Claude action yaml datadog_api_key: ${{ env.VAULT_SECRET_DATADOG_API_KEY }} --- Summary Statistics Total Datadog-Enabled Actions: 8 - setup-datadog-test-visibility - telemetry - frontend-metrics (3 sub-actions) - cache - cache/restore - billeo-tests-emulated - billeo-tests-api - setup-node (with pnpm support) Total Workflows with DD Variables: 6+ Key Metrics Being Collected: 1. Test execution metrics (via Datadog Test Visibility) 2. CI pipeline and job-level telemetry (via datadog-ci) 3. Frontend quality metrics (via @doctolib/frontend-metrics) 4. Cache hit rates (custom DD_TAGS) 5. Test results (JUnit upload) 6. Device battery consumption (billeo tests) pnpm Integration: - Full support in setup-node action with v4 of pnpm/action-setup - Automatic lock file detection (pnpm-lock.yaml) - Dedicated fixture directory with test coverage