- Remove Python-based test framework, Dockerfiles, and runner scripts
- Add bare subcommand for standalone pipeline stage execution
- Implement unified worker mode and error module
- Refactor NotificationConfig to support YAML string keys
- Add dummy internal plugin and clean up mail template
Adds the `user.rust` UPM to workshop-engine for managing Rust
toolchains,
components, cross-compilation targets, and cargo operations:
- `rustup default <toolchain>` / `rustup component add` / `rustup target
add`
- `cargo fetch` for dependency pre-fetch with optional `--locked`
- `cargo install` for global crate tools with registry support
Includes 275-line test suite (`tests/upm/test_rust.py`) covering the
full
lifecycle with optional network tests.
Adds a complete pytest system test suite for the HoneyBiscuitWorkshop
CI/CD system:
- runner.sh: orchestrates build, Docker image creation, and test
execution
- Dockerfile: Arch Linux-based test image with Python venv
- conftest.py: shared fixtures (baker_bin, run_baker, work_dir, llm_env)
- probes/: environment probes for checking users, files, packages,
processes
- llm/: LLM-based log judgment system with caching for semantic test
evaluation
- fixtures/: test configs and scripts for prebake, bake, and finalize
stages
- test_prebake.py, test_bake.py, test_finalize.py: test suites for each
pipeline stage
Also refactors finalize.yml.tmpl notification config to use a templates
system.
and template
Implements the finalize stage infrastructure for HoneyBiscuitWorkshop:
- New finalize module with config, error, event, plugin, stage, and
template submodules
- Plugin system supporting internal (webhook, mail, satori, in-site) and
external plugins
- FinalizeConfig schema with version validation for finalize.yml
- Add glob, duration-str, lettre dependencies to workshop-baker
- Expand project documentation (clarification.md, description.md)
- Update .gitignore and fix bake.rs pipeline_functions access
BREAKING CHANGE: Not a buildable version!
handling
- Add new bake module with parser, scheduler, decorator, and builder
- Implement topological sorting for functions with @after dependencies
- Add error handling for circular dependencies and unknown dependencies
- Introduce constants module for shared path definitions
- Add BakeError type (renamed from BuilderError) with new variants
- Add PrebakeStage::Never variant for "never drop privileges"
- Simplify decorator parsing and clean up comments
- Remove RustyVault and rust-tongsuo submodules as they are unused
(temporarily)
- Update .gitignore to include .ruff_cache