Skip to content

Go SDK: Refresh Go SDK execution API tokens#70168

Open
viiccwen wants to merge 1 commit into
apache:mainfrom
viiccwen:go-sdk-refresh-execution-token
Open

Go SDK: Refresh Go SDK execution API tokens#70168
viiccwen wants to merge 1 commit into
apache:mainfrom
viiccwen:go-sdk-refresh-execution-token

Conversation

@viiccwen

Copy link
Copy Markdown
Contributor

Go Edge Worker tasks start with a workload-scoped token that is only authorized to call the task /run endpoint. That response provides an execution-scoped token in the Refreshed-API-Token header, but the Go Execution API client continued using the original workload token. As a result, heartbeats, runtime API calls, and final-state reporting failed with 403 Forbidden after the task started.


Was generative AI tooling used to co-author this PR?
  • Yes - GPT-5.6 Sol

  • Read the Pull Request Guidelines for more information. Note: commit author/co-author name and email in commits become permanently public when merged.
  • For fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
  • When adding dependency, check compliance with the ASF 3rd Party License Policy.
  • For significant user-facing changes create newsfragment: {pr_number}.significant.rst, in airflow-core/newsfragments. You can add this file in a follow-up commit after the PR is created so you know the PR number.

Go Edge Worker tasks begin with workload-scoped credentials, while subsequent task API calls require execution scope. Without adopting server reissues, heartbeats and final state reports fail with 403.

Signed-off-by: viiccwen <vicwen@apache.org>
@viiccwen

Copy link
Copy Markdown
Contributor Author

cc @jason810496, @henry3260. 🙌

@viiccwen viiccwen changed the title Refresh Go SDK execution API tokens Go SDK: Refresh Go SDK execution API tokens Jul 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant