Conversation
…tion Agent-Logs-Url: https://github.com/github/gh-aw/sessions/0f2e4ba4-ac97-4ddb-88e5-912dcd192f30 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
…up.sh verbosity Agent-Logs-Url: https://github.com/github/gh-aw/sessions/0f2e4ba4-ac97-4ddb-88e5-912dcd192f30 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
…NNER_DEBUG=true Agent-Logs-Url: https://github.com/github/gh-aw/sessions/0f2e4ba4-ac97-4ddb-88e5-912dcd192f30 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
|
📰 BREAKING: Smoke Copilot is now investigating this pull request. Sources say the story is developing... |
|
🎬 THE END — Smoke Claude MISSION: ACCOMPLISHED! The hero saves the day! ✨ |
|
✅ All tools validated successfully! Agent Container Smoke Test confirms agent container is ready. |
|
🌑 The shadows whisper... Smoke Codex failed. The oracle requires further meditation... |
This comment has been minimized.
This comment has been minimized.
|
Smoke test §23989260425 — PR #24604 by
Overall:
|
There was a problem hiding this comment.
Smoke test review: OTLP trace-ID propagation from pre_activation → activation → agent looks correct. The conditional in compiler_activation_job.go cleanly handles both cases (with/without pre-activation job). All 181 lock files recompiled consistently.
📰 BREAKING: Report filed by Smoke Copilot · ● 844.3K
| // empty string instructs the setup action to generate a new root trace ID. | ||
| activationSetupTraceID := "" | ||
| if preActivationJobCreated { | ||
| activationSetupTraceID = fmt.Sprintf("${{ needs.%s.outputs.setup-trace-id }}", constants.PreActivationJobName) |
There was a problem hiding this comment.
Nice clean conditional: when preActivationJobCreated is true, the trace ID flows from pre-activation → activation → agent. The empty string default correctly signals the setup action to mint a new root trace. 👍
| outputs := map[string]string{ | ||
| "activated": activatedExpression, | ||
| "activated": activatedExpression, | ||
| "setup-trace-id": "${{ steps.setup.outputs.trace-id }}", |
There was a problem hiding this comment.
Exposing setup-trace-id here is the key link — this is what makes the full pre_activation → activation → agent trace chain possible. Clean implementation!
|
📰 VERDICT: Smoke Copilot has concluded. All systems operational. This is a developing story. 🎤 |
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
💥 Automated smoke test review - all systems nominal!
💥 [THE END] — Illustrated by Smoke Claude · ● 201.1K
| with: | ||
| destination: ${{ runner.temp }}/gh-aw/actions | ||
| job-name: ${{ github.job }} | ||
| trace-id: ${{ needs.pre_activation.outputs.setup-trace-id }} |
There was a problem hiding this comment.
✅ Good addition: propagating the trace-id from the pre-activation job ensures end-to-end traceability across jobs. This is consistent with the OTLP trace threading pattern.
| activated: ${{ steps.check_membership.outputs.is_team_member == 'true' }} | ||
| matched_command: '' | ||
| setup-trace-id: ${{ steps.setup.outputs.trace-id }} | ||
| steps: |
There was a problem hiding this comment.
✅ The setup-trace-id output is correctly added to the pre_activation job outputs, enabling downstream jobs to reference the trace ID for OTLP correlation.
There was a problem hiding this comment.
Agreed! The setup-trace-id output is the missing link that completes the end-to-end OTLP chain. 🔗
📰 BREAKING: Report filed by Smoke Copilot · ● 1.2M
|
@copilot the traceid is not properly passed from pre activation to activation job. Investigate and fix. Remember that this is dev mode and there is a special code path in setup.sh to run the otlp setup .cjs file https://github.com/github/gh-aw/actions/runs/23989260425/job/69966186924#step:3:1 |
…nderscore runner forms Agent-Logs-Url: https://github.com/github/gh-aw/sessions/b76f2da5-801e-400b-8870-6917d0743fb7 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Agent-Logs-Url: https://github.com/github/gh-aw/sessions/b76f2da5-801e-400b-8870-6917d0743fb7 Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Fixed in commit Root cause: The fix normalizes
|
|
✅ All tools validated successfully! Agent Container Smoke Test confirms agent container is ready. |
|
🎬 THE END — Smoke Claude MISSION: ACCOMPLISHED! The hero saves the day! ✨ |
|
📰 BREAKING: Smoke Copilot is now investigating this pull request. Sources say the story is developing... |
|
🌑 The shadows whisper... Smoke Codex failed. The oracle requires further meditation... |
Agent Container Tool Check
Result: 12/12 tools available ✅ Overall Status: PASS
|
There was a problem hiding this comment.
Pull request overview
This PR improves OTLP trace correlation across pre_activation → activation → downstream jobs by propagating a single root trace ID, and reduces actions/setup/setup.sh log verbosity by moving noisy output behind GitHub Actions debug mode.
Changes:
- Add
setup-trace-idoutput to the pre-activation job and wire activation setup to reuse it when pre-activation exists. - Reduce
setup.shoutput by introducingdebug_logand making per-file copy / directory listing logs debug-only. - Normalize
trace-id/safe-output-custom-tokensinputs across runner env-var naming variations and update golden + workflow lock artifacts accordingly.
Show a summary per file
| File | Description |
|---|---|
| pkg/workflow/compiler_pre_activation_job.go | Exposes pre-activation setup trace ID as a job output for downstream reuse. |
| pkg/workflow/compiler_activation_job.go | Reuses pre-activation trace ID for activation setup when pre-activation job exists. |
| actions/setup/setup.sh | Introduces debug_log and makes verbose setup diagnostics debug-only. |
| actions/setup/index.js | Normalizes hyphenated inputs (including trace-id) before invoking setup.sh / OTLP sender. |
| actions/setup/js/send_otlp_span.cjs | Adds fallback to read INPUT_TRACE-ID when INPUT_TRACE_ID isn’t set. |
| actions/setup/js/action_setup_otlp.cjs | Adds fallback to read INPUT_TRACE-ID when INPUT_TRACE_ID isn’t set. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/basic-copilot.golden | Updates expected YAML to include pre-activation trace propagation and output. |
| pkg/workflow/testdata/TestWasmGolden_CompileFixtures/with-imports.golden | Updates expected YAML to include pre-activation trace propagation and output. |
| .github/workflows/workflow-health-manager.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/workflow-generator.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/update-astro.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/unbloat-docs.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/ubuntu-image-analyzer.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/tidy.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-workflow-call.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-workflow-call-with-inputs.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-update-cross-repo-pr.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-test-tools.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-temporary-id.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-service-ports.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-project.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-multi-pr.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-gemini.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-create-cross-repo-pr.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-copilot.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-copilot-arm.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-codex.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-claude.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-call-workflow.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-agent-scoped-approved.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-agent-public-none.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-agent-public-approved.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-agent-all-none.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/smoke-agent-all-merged.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/slide-deck-maintainer.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/security-review.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/scout.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/release.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/refiner.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/q.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/pr-nitpick-reviewer.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/poem-bot.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/plan.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/pdf-summary.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/metrics-collector.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/mergefest.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/issue-monster.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/grumpy-reviewer.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/firewall-escape.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/dev.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/dev-hawk.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/dependabot-burner.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/dead-code-remover.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/daily-testify-uber-super-expert.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/daily-team-status.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/daily-safe-output-optimizer.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/daily-rendering-scripts-verifier.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/daily-observability-report.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/daily-issues-report.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/daily-file-diet.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/daily-cli-performance.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/craft.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/copilot-token-optimizer.lock.yml | Updates lockfile setup steps to expose setup trace output and pass trace-id to downstream setup steps. |
| .github/workflows/copilot-token-audit.lock.yml | Updates lockfile setup steps to expose setup trace output and pass trace-id to downstream setup steps. |
| .github/workflows/code-simplifier.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/code-scanning-fixer.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/cloclo.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/ci-doctor.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/changeset.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/breaking-change-checker.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/brave.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/auto-triage-issues.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/archie.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/ai-moderator.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/agent-persona-explorer.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/agent-performance-analyzer.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
| .github/workflows/ace-editor.lock.yml | Recompiled lockfile to include trace-id chaining and pre-activation setup trace output. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comments suppressed due to low confidence (1)
actions/setup/setup.sh:112
- This debug-only block checks
RUNNER_DEBUGfor the literal value1, but elsewhere (debug_log) debug mode is considered enabled for bothRUNNER_DEBUG=1andRUNNER_DEBUG=true. IfRUNNER_DEBUG=true, this block won't run even though other debug output will, which can make debugging harder. Update the guard to matchdebug_log(or calldebug_log/a shared helper) so all debug diagnostics are consistently enabled.
- Files reviewed: 77/77 changed files
- Comments generated: 1
| # In debug mode, list the contents of the script directory to understand the file layout | ||
| if [[ "${RUNNER_DEBUG:-0}" == "1" ]]; then | ||
| echo "Contents of ${SCRIPT_DIR}:" | ||
| ls -la "${SCRIPT_DIR}" || echo "::warning::Failed to list ${SCRIPT_DIR}" | ||
| fi |
There was a problem hiding this comment.
The debug-only directory listings are guarded by if [[ "${RUNNER_DEBUG:-0}" == "1" ]], but debug_log (and the comment above it) treats both RUNNER_DEBUG=1 and RUNNER_DEBUG=true as debug mode. This means RUNNER_DEBUG=true will enable debug_log output but not the ls diagnostics, which is inconsistent with the stated behavior. Consider reusing debug_log for these sections or updating the condition to also accept true so debug mode behaves consistently across all debug output.
This issue also appears on line 108 of the same file.
|
🎉 Smoke test PASS for run §23990079128
Overall: PASS ✅ —
|
There was a problem hiding this comment.
Smoke test review 🤖 — Trace ID propagation across pre_activation → activation → agent looks clean. The conditional logic correctly threads trace context when a pre-activation job exists, and defaults to a new root trace otherwise. Golden file updates confirm the compiled output is correct.
📰 BREAKING: Report filed by Smoke Copilot · ● 1.2M
|
|
||
| outputs := map[string]string{ | ||
| "activated": activatedExpression, | ||
| "activated": activatedExpression, |
There was a problem hiding this comment.
Alignment fix on "activated" key is a nice touch — keeps the map visually consistent with the newly added "setup-trace-id" key below it.
| activationSetupTraceID := "" | ||
| if preActivationJobCreated { | ||
| activationSetupTraceID = fmt.Sprintf("${{ needs.%s.outputs.setup-trace-id }}", constants.PreActivationJobName) | ||
| } |
There was a problem hiding this comment.
Using constants.PreActivationJobName here ensures the job name stays in sync across compilation — no magic strings. 🎯
|
📰 VERDICT: Smoke Copilot has concluded. All systems operational. This is a developing story. 🎤 |
|
Smoke Test Run #23990079132 — PARTIAL ✅ Core tests: ✅✅✅✅✅✅✅✅✅✅✅✅
|
There was a problem hiding this comment.
💥 Automated smoke test review - all systems nominal!
💥 [THE END] — Illustrated by Smoke Claude · ● 352.6K
| with: | ||
| destination: ${{ runner.temp }}/gh-aw/actions | ||
| job-name: ${{ github.job }} | ||
| trace-id: ${{ needs.pre_activation.outputs.setup-trace-id }} |
There was a problem hiding this comment.
Good addition: propagating trace-id from the pre-activation job enables end-to-end trace correlation across jobs. Make sure all downstream jobs consuming this output have needs.pre_activation in their needs list.
| with: | ||
| destination: ${{ runner.temp }}/gh-aw/actions | ||
| job-name: ${{ github.job }} | ||
| trace-id: ${{ needs.pre_activation.outputs.setup-trace-id }} |
There was a problem hiding this comment.
Consistent trace-id threading here as well. This ensures the agent performance analyzer spans are properly correlated with the pre-activation trace context.
Summary
Fixes OTLP trace correlation across pre-activation, activation, and agent jobs, and reduces the verbosity of
setup.shoutput.Changes
Trace-ID Propagation
Previously, when a
pre_activationjob existed, each job generated its own independent OTLP trace ID, making cross-job span correlation impossible. Now:compiler_pre_activation_job.go: The pre-activation job exposessetup-trace-id: ${{ steps.setup.outputs.trace-id }}as an outputcompiler_activation_job.go: WhenpreActivationJobCreated=true, the activation job's setup step receivestrace-id: ${{ needs.pre_activation.outputs.setup-trace-id }}, reusing the pre-activation trace. When no pre-activation job exists, the setup action generates a new root trace ID (empty string = new trace)This ensures pre_activation → activation → agent jobs all share a single OTLP trace.
Reduced
setup.shVerbositydebug_loghelper function that only outputs whenRUNNER_DEBUG=1orRUNNER_DEBUG=true(GitHub Actions debug mode)Copied: filename.cjs× 80+ lines), directory listings (ls -la/ls -1), and internal progress messages are now debug-onlySuccessfully copied N files to ...) and error/warning messages remain always visibleUpdated Artifacts
basic-copilot.golden,with-imports.golden)Testing
TestBuildPreActivationJob*,TestBuildActivationJob*,TestWasmGolden_*)smoke-copilot.lock.ymlnow has correct trace-id chaining: pre_activation → activation → agent✨ PR Review Safe Output Test - Run 23989260414
✨ PR Review Safe Output Test - Run 23990079132