🚀 Enhancements
fix: improve describe affected detection for YAML functions and source/provision sections @aknysh (#2061)
## what- Fix YAML functions (
!terraform.state,!terraform.output) failing when processing BASE stacks that reference components not present in HEAD - Fix
describe affectednot detecting changes tosourceandprovisionsections
why
Fix 1: YAML functions ignore BASE paths
When running describe affected, YAML functions like !terraform.state would fail with "Could not find component" errors when:
- BASE (main branch) has a component that doesn't exist in HEAD (PR branch)
- A stack in BASE references that component via
!terraform.stateor!terraform.output
Root cause: YAML functions created a new AtmosConfiguration from the current working directory (HEAD) instead of using the modified configuration pointing to BASE.
Fix: Pass AtmosConfig through the YAML function resolution chain instead of nil.
Fix 2: Source and provision sections not detected
Changes to source and provision sections were silently ignored:
source.versionchanges (e.g., upgrading vendored module versions) were not detectedprovision.workdir.enabledchanges were not detected
Root cause: Only metadata, vars, env, settings, and component folder files were checked.
Fix: Add source and provision section checks with affected reasons stack.source and stack.provision.
references
- Test fixtures added for both scenarios
- Documentation:
docs/fixes/2026-02-07-describe-affected-yaml-functions-ignore-base-paths.md - Documentation:
docs/fixes/2026-02-07-describe-affected-source-provision-sections.md
Summary by CodeRabbit
Release Notes
-
Bug Fixes
- Fixed describe-affected to detect changes in source versioning and workdir configurations for components
- Resolved YAML function resolution to properly handle base path lookups in describe-affected
-
Chores
- Updated Atmos CLI version to 1.206.0
- Updated Go module dependencies