Skip to content

Skip additional config files in workspace execution planner#3150

Merged
proksh merged 17 commits intomainfrom
fix/config_file_checks
Apr 9, 2026
Merged

Skip additional config files in workspace execution planner#3150
proksh merged 17 commits intomainfrom
fix/config_file_checks

Conversation

@proksh
Copy link
Copy Markdown
Contributor

@proksh proksh commented Apr 7, 2026

When running a workspace, Maestro needs to distinguish between flow files (test scripts) and config files (workspace settings like platform configuration, tag filters, etc.). Previously, config files were only detected by filename - checking for exact match config.yaml. This meant any config file other than "config" name (e.g. platform_settings.yaml) would be incorrectly treated as a flow file and fail to parse. Maestro docs

This PR replaces the filename-based heuristic with content-based detection. It reads the top-level YAML keys of each file and checks if any match known WorkspaceConfig properties (platform, includeTags, excludeTags, flows, etc.). The set of known keys is derived via reflection from the WorkspaceConfig data class, so it automatically stays in sync as new config fields are added - no hardcoded lists to maintain.

Test

  • 018 - Additional config files in workspace are not treated as flows

@linear
Copy link
Copy Markdown

linear bot commented Apr 7, 2026

@proksh proksh changed the title Fix workspace config files being incorrectly parsed as flow files Skip additional config files in workspace execution planner Apr 7, 2026
Comment thread maestro-orchestra/src/main/java/maestro/orchestra/workspace/Filters.kt Outdated
Comment thread maestro-orchestra/src/main/java/maestro/orchestra/workspace/Filters.kt Outdated
- Changed topLevelKeys check from `any` to `all` so only files where
  every top-level key is a WorkspaceConfig property are excluded
- Skip files containing `---` document separator since those are flow
  files, not config files
@proksh proksh merged commit ba849f3 into main Apr 9, 2026
9 checks passed
@proksh proksh deleted the fix/config_file_checks branch April 9, 2026 05:44
btrautmann added a commit to btrautmann/Maestro that referenced this pull request Apr 9, 2026
Upstream added 018_additional_config_files in mobile-dev-inc#3150, conflicting with our
018_negation_with_specific_positive fixture. Renumbered ours to 019.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.

3 participants