-
Notifications
You must be signed in to change notification settings - Fork 0
Initial #6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
cisaacstern
wants to merge
90
commits into
main
Choose a base branch
from
initial
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Initial #6
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Runs tests, mypy, and ruff checks for all 6 packages using matrix builds. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
These files are auto-generated by setuptools-scm at build time and should not be tracked in version control. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Configure pre-commit to run ruff linting (with auto-fix) and formatting checks on all wt-* packages before commits. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Auto-fixes applied by ruff --fix and ruff format, including: - Unnecessary list comprehensions (C416) converted to list() - Import sorting (I) - Code formatting standardization Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Implement the `wt-compiler compile` command to provide a user-facing interface for compiling workflow spec.yaml files into executable artifacts. The CLI uses argparse following the wt-registry pattern. - Add cli.py with compile subcommand (--spec, --clobber, --update) - Add __main__.py for `python -m wt_compiler` support - Add entry point in pyproject.toml - Add comprehensive unit tests (12 tests, 100% coverage on cli.py) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Mark P0.1 (wt-compiler CLI) as complete - Update P0.2 (Discovery) status: code exists but needs e2e verification - Update critical issues table and success criteria - Add new CLI files to key files reference Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Use base_url instead of channel name in MatchSpec strings to correctly identify packages on custom channels (e.g., repo.prefix.dev) - Collect and pass channels from spec requirements to populate_known_tasks() - Always include conda-forge for base dependencies (python, libffi, etc.) - Add virtual package detection for platform-specific requirements - Add unit test for channel propagation Fixes the issue where compilation failed with "No candidates found" errors for packages on custom channels because the discovery phase only searched conda-forge by default. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
When task discovery fails because wt-registry is not installed in the ephemeral environment, users now see a clear error message explaining: - Which packages were installed - Why wt-registry is missing (no dependency on it) - How to fix it (add wt-registry as a dependency) This is a common pitfall for workflows that haven't been migrated to depend on wt-registry. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add docs/solutions/ for documented problem solutions - Add docs/guides/error-handling/ with patterns and best practices - Document wt-registry not found issue and solution - Update CLAUDE.md to reference docs/ and guide /workflows:compound Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Enable simpler usage patterns like `@register()` or `@register(tags=["io"])` by making title and description parameters optional. Title is auto-generated from the function name using snake_case to Title Case conversion when not provided (e.g., "get_patrol_observations" -> "Get Patrol Observations"). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add pixi build configuration to all package pyproject.toml files - Add pixi.toml workspace configuration - Add build and test scripts for conda packages - Add conda_build tests Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Expose DagCompiler.pkg_name_prefix as a configurable CLI argument, allowing users to override the default "wf" prefix for generated package names (release_name and package_name). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Fixes template rendering by serializing importable_reference to a dict with anchor, function, statement, and params_notebook keys. Also renames SkipIf.known_tasks_list to known_tasks to match template expectations. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add @computed_field decorator to file_header property so it's included in model_dump() output used by DAG templates - Pass file_header to PixiToml constructor so header is written to pixi.toml Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The rattler 0.22 release renamed `channels` parameter to `sources` in the solve() function. Pin to <0.23.0 for API stability. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Three fixes for import path generation: 1. Use public_module_path (via __init__.py re-exports) instead of private module paths (e.g., 'tasks.config' not 'tasks.config._set_vars') 2. Always use 'as' clause in import statements for explicit re-export semantics (e.g., 'from x import y as y') 3. Fix disambiguation logic for duplicate function names from different modules - now correctly assigns registry_ref=1, 2, etc. to subsequent occurrences Changes: - wt-contracts: Add public_module_path field to RegistryEntry - wt-registry: Add discover_public_paths() to traverse --package modules and find public re-export paths - wt-compiler: Use public_module_path and fix disambiguation logic Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.