Description
gopkg.in/yaml.v3 is archived upstream but still a direct requirement (cmd/tailscale2otel/effectiveconfig.go, internal/config/duration.go, internal/config/envref.go and tests). go.yaml.in/yaml/v3 is already in the graph. Tidy every module per AGENTS.md; do not run a casual go get.
Acceptance Criteria
- #1 No module requires gopkg.in/yaml.v3 directly; go mod tidy leaves no diff in all five modules
- #2 Effective-config output and config decode are byte-identical against a golden covering durations, env refs and nested maps
Definition of Done
- #1 just check passes (the full gate; it is what CI enforces)
- #2 just gen leaves no diff (only if a generated artifact’s inputs changed)
- #3 just –fmt –check passes and every new recipe has a # doc comment and a [group(…)]
Implementation Plan
Loop33 YAML migration lane: golden effective-config equivalence, maintained imports and direct dependency, tidy every module, gate.
Implementation Notes
loop33 landed0dac3592c2fd90a149d63f237f5f51f954e53791 in tip9f2abc6efa1283270cbc7b1774d04aa46e9cc85d. Five modules tidy idempotently, archived-library effective-config golden byte-identical, composed remote run20261101T211921Z-tailscale2otel-8f1b2d1c exit0 with full regeneration/no-diff. Mechanical dependency review exception.
Final Summary
Moved direct YAML use to maintained go.yaml.in/yaml/v3, preserving decoded config and complete redacted CLI output.