Skip to content

Add a godebug input so a caller can set GODEBUG for go test - #1

Merged
Fly-Playgroud merged 1 commit into
mainfrom
go-workflow-godebug-input
Sep 6, 2026
Merged

Fly-Playgroud merged 1 commit into
mainfrom
go-workflow-godebug-input

Conversation

@Fly-Playgroud

Copy link
Copy Markdown
Contributor

Why

Two of the four snapshot satellites of wand #38, leakcheck (upstream gotrace v0.6.0) and eventbus (goob v0.4.0, whose tests use leakcheck), refuse to run their suites without GODEBUG=tracebackancestors=N: IgnoreNonChildren panics otherwise, by upstream design. Upstream's CI set the variable in the workflow env.

  • //go:debug tracebackancestors=100 is rejected by the toolchain (unknown //go:debug setting); the same holds for the godebug directive in go.mod.
  • A called workflow does not inherit the caller's env.

What

  • New optional input godebug (string, default empty), applied as GODEBUG on the go test step of every test cell. Empty leaves the runtime's defaults.
  • README: input table row and a commented example line in the caller template.

No behaviour change for callers that do not pass the input. The smoke run exercises the unchanged path.

leakcheck's leak detection (upstream gotrace) panics unless
GODEBUG=tracebackancestors=N is set, //go:debug rejects runtime settings
such as this one, and upstream's own CI set the variable in the workflow
env. A called workflow does not inherit the caller's env, so the reusable
workflow takes the value as an input and applies it to the go test step
only. Found while writing the satellites' callers (wand #38).
@Fly-Playgroud
Fly-Playgroud merged commit 91b72ab into main Sep 6, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant