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): <tool_use_error>Cancelled: parallel tool call Glob(//datadog) errored</tool_use_error>
Tool results:
→ result (ERROR): <tool_use_error>Cancelled: parallel tool call Glob(//datadog) errored</tool_use_error>
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-tracein/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→```yaml 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](../.github/workflows/rw-frontend-metrics.ym …(truncated, 2682 more chars)
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→<!-- AUTO-DOC-INPUT:START - Do not
…(truncated, 1000 more chars)
Tools used:
Read:/Users/USER/workspace/doctolib/actions/frontend-metrics/pr-comment/action.yml
Tools used:
Read:/Users/USER/workspace/doctolib/actions/frontend-metrics/save-baseline/action.yml
Tool results:
→ result (ok): 1→name: "Frontend Metrics PR Comment" 2→description: | 3→ Generate a Pull Request comment containing the frontend-metrics report. 4→ This works by: 5→ - Downloading the last successful run of the workflow on the default branch (main or master) 6→ - Running the frontend-metrics on the current (PR) branch 7→ - Comparing the current report with the baseline report 8→ - Generating a markdown comment with the comparison results 9→ - Posting the comment t …(truncated, 4141 more chars)
Tool results:
→ result (ok): 1→name: "Save Frontend Metrics Baseline" 2→description: | 3→ Save baseline frontend-metrics report as GitHub artifact. 4→ This should be used in a workflow that runs on the default branch (main or master) to save the baseline report, 5→ so that it can be used to compare the Pull Requests against the baseline. 6→author: "Doctolib" 7→ 8→inputs: 9→ working-directory: 10→ description: "The current working directory to run the frontend-metrics engine …(truncated, 1518 more chars)
Now let me check for pnpm-related actions and any test workflows:
Tools used:
Bash:find /Users/USER/workspace/doctolib/actions -type d -name "*pnpm*"
Tool results:
→ result (ok): /Users/USER/workspace/doctolib/actions/setup-node/fixtures-pnpm
Tools used:
Bash:ls -la /Users/USER/workspace/doctolib/actions/setup-node/
Tool results:
→ result (ok): drwxr-xr-x clertonra staff 256 B Mon Mar 9 14:45:51 2026 . drwxr-xr-x clertonra staff 3.7 KB Mon Mar 9 14:45:51 2026 .. .rw-r--r-- clertonra staff 15 KB Mon Mar 9 14:45:51 2026 action.yml .rw-r--r-- clertonra staff 368 B Mon Sep 1 15:17:42 2025 catalog-info.yaml .rw-r--r-- clertonra staff 14 KB Mon Mar 9 14:45:51 2026 CHANGELOG.md drwxr-xr-x clertonra staff 192 B Mon Sep 1 15:17:42 2025 fixtures drwxr-xr-x clertonra staff 160 B Mon Mar 9 14:45:51 2026 fixtures-pnpm .rw-r--r-- clerto …(truncated, 51 more chars)
Tools used:
Grep:pnpmin/Users/USER/workspace/doctolib/actions
Tool results:
→ result (ok): Found 7 files /Users/USER/workspace/doctolib/actions/sync-i18n-files/package-lock.json /Users/USER/workspace/doctolib/actions/setup-node/action.yml /Users/USER/workspace/doctolib/actions/setup-node/fixtures-pnpm/package.json /Users/USER/workspace/doctolib/actions/setup-node/README.md /Users/USER/workspace/doctolib/actions/setup-node/CHANGELOG.md /Users/USER/workspace/doctolib/actions/module-federation-build/src/package-lock.json /Users/USER/workspace/doctolib/actions/.github/workflows/test_setup …(truncated, 9 more chars)
Let me read the setup-node action and the test workflow:
Tools used:
Read:/Users/USER/workspace/doctolib/actions/setup-node/action.yml
Tool results:
→ result (ok): 1→name: "Setup Node.JS" 2→description: "Setup Node.JS environment and install dependencies, with cache (stored in S3)" 3→author: "Doctolib" 4→branding: 5→ icon: "package" 6→ color: "blue" 7→inputs: 8→ node-version: 9→ description: "Version Spec of the version to use. Examples: 12.x, 10.15.1, >=10.15.0." 10→ node-version-file: 11→ description: "File containing the version Spec of the version to use. Examples: package.json, .nvmrc, .node-v …(truncated, 17163 more chars)
Tools used:
Read:/Users/USER/workspace/doctolib/actions/setup-node/README.md
Tool results:
→ result (ok): 1→# doctolib/actions/setup-node
2→
3→## Description
4→
5→
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-datadogin/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](https://github.com/doctolib/actions/com …(truncated, 1370 more chars)
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](https://github.com/doctolib/a …(truncated, 2136 more chars)
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:
- 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
- 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
- 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
npm install @datadog/datadog-ci
Lines 195-203: Uploads test results to Datadog
- 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
- 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
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
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