
Now that we've established a proper eval in tree, this PR is reboots of our agent loop back to a set of minimal tools and simpler prompts. We should aim to get this branch feeling subjectively competitive with what's on main and then merge it, and build from there. Let's invest in our eval and use it to drive better performance of the agent loop. How you can help: Pick an example, and then make the outcome faster or better. It's fine to even use your own subjective judgment, as our evaluation criteria likely need tuning as well at this point. Focus on making the agent work better in your own subjective experience first. Let's focus on simple/practical improvements to make this thing work better, then determine how we can craft our judgment criteria to lock those improvements in. Release Notes: - N/A --------- Co-authored-by: Max <max@zed.dev> Co-authored-by: Antonio <antonio@zed.dev> Co-authored-by: Agus <agus@zed.dev> Co-authored-by: Richard <richard@zed.dev> Co-authored-by: Max Brunsfeld <maxbrunsfeld@gmail.com> Co-authored-by: Antonio Scandurra <me@as-cii.com> Co-authored-by: Michael Sloan <mgsloan@gmail.com>
1.6 KiB
1.6 KiB
- The changes introduce a new
DependencyError
class inkamal/cli.rb
alongside other error classes likeBootError
andHookError
. This new error class will be used to handle dependency-related failures. - In
kamal/cli/base.rb
, a new methodensure_docker_installed
is added which checks for Docker and buildx plugin installation locally. It raises the newDependencyError
with appropriate messages if either Docker or buildx plugin are not found, replacing similar functionality that was previously scattered elsewhere. - The
kamal/cli/build.rb
file is modified to use the newensure_docker_installed
method instead of the removedverify_local_dependencies
method. The error handling is now consistent, usingDependencyError
instead ofBuildError
for dependency-related failures. - The
kamal/cli/registry.rb
file now includes a call toensure_docker_installed
at the start of the login method, ensuring Docker is available before attempting registry operations. - The
kamal/commands/base.rb
file adds a new public methodensure_docker_installed
that combines checks for both Docker and buildx plugin installation, moving this functionality from the Builder class. - The
kamal/commands/builder.rb
file is simplified by removing theensure_local_dependencies_installed
method and related private methods, as this functionality has been moved to the base commands class. - Test files are updated to reflect these changes, with
build_test.rb
now expectingDependencyError
instead ofBuildError
for dependency failures, andregistry_test.rb
adding a new test case for Docker dependency checking during login.