@@ -95,6 +95,9 @@ packers adopt the same shape — per-Dag source resolution, de-duplication by pa
9595always-embedded entrypoint fallback — so a bundle reader treats every language the same way and the
9696Code tab behaves identically regardless of which SDK produced the artifact.
9797
98+ Go has no module evaluation, so the Go SDK records the file that calls ` airflow.Dag ` . A Dag built in
99+ a factory function maps to the factory's file, not to the file that calls the factory.
100+
98101## What a reader returns
99102
100103| the Task is… | reader returns |
@@ -113,11 +116,11 @@ Code tab behaves identically regardless of which SDK produced the artifact.
113116 ` DagCode ` → the Code tab, deferred to [ ADR-0010] ( 0010-native-dag-processing.md ) 's open question and
114117 future work) sees one contract.
115118- Generated Dags (built in a loop or a factory during module evaluation) are resolved to their
116- generator file like any other Dag — they are fully supported, not a fallback case. Best-effort
117- resolution only bites a Dag built in a detached callback after its module finished, which then
118- shows the entrypoint — a real file in the bundle rather than a wrong one. This mirrors the source
119- view already being best effort for Python factory-function Dags
120- ([ ADR-0006] ( 0006-no-lang-sdk-source-display.md ) , "Why Not" #3 ).
119+ generator file (for Go, the file that calls ` airflow.Dag ` ) like any other Dag — they are fully
120+ supported, not a fallback case. Best-effort resolution only bites a Dag built in a detached
121+ callback after its module finished, which then shows the entrypoint — a real file in the bundle
122+ rather than a wrong one. This mirrors the source view already being best effort for Python
123+ factory-function Dags ([ ADR-0006] ( 0006-no-lang-sdk-source-display.md ) , "Why Not" #3 ).
121124
122125## References
123126
0 commit comments