Align Dagger versions #542
Closed
opened 2026-06-08 06:22:38 +00:00 by guettli
·
10 comments
No Branch/Tag Specified
main
issue-563-agentloop-validation
dummy-pr-test
issue-560-fix-firebase-run-url
issue-539-stable-imap-uid
issue-533-shared-email-list
plan-issue-555
drop-nix
plan-issue-484
plan-issue-539
plan-issue-535
plan-issue-474
plan-issue-533
fix-dagger-engineless-precommit
issue-521-fix-deploy-yml-wait-time-api
issue-502-fix-email-id-collision-mailbox
issue-492-eliminate-duplicate-build-runner
issue-494-website-change-detection
issue-491-parallelize-check
issue-478-fix-stalwart-dual-stack-bind
issue-475-allowed-addresses-glob
issue-473-search-result-reorder
issue-453-update-agentloop-defaults
issue-466-structured-search
issue-505-exclude-chaos-monkey-from-regular-ci
issue-509-fix-search-result-sorting
fix-ink-sparkle-remaining-tests
issue-506-fix-search-emails-tests
issue-504-runner-wait-time
issue-488-search-notes
issue-472-changelog-issue-links
issue-501-folder-search-local-sqlite
issue-486-fix-stale-test-shader-mismatch
fix/prevent-settled-search-rerun-473
issue-467-fix-search-stale-results
issue-446-installed-versions-in-changelog
issue-462-fix-pr
issue-448-chaos-monkey-test
issue-436-notes-on-emails
issue-429-unify-mail-display
issue-422-move-to-folder-create-new
issue-414-ensure-not-run-as-root
issue-424-unify-email-list-views
issue-419-trusted-senders-page
issue-425-fix-prs
test-foo
issue-421-bug-report
issue-383-fix-ci
issue-394-fix-deploy-flutter-version
issue-391-fix-ci-double-trigger
issue-376-combined-inbox-v2
issue-376-combined-inbox
issue-384-fix-open-prs
sops-migrate
issue-339-safe-first-on-imap-fetch
issue-340-try-catch-measure-height
issue-342-pin-intl-version
issue-341-guard-threademails-last
issue-335-agentloop-code-test
issue-329-fix
issue-315-fix
issue-320-fix
issue-325-fix
issue-312-fix
issue-311-fix
issue-305-fix
issue-304-fix
issue-299-fix
issue-300-fix
issue-298-fix
issue-296-fix
issue-294-fix
issue-289-fix
issue-288-fix
issue-287-fix
issue-286-fix
issue-277-fix
issue-282-fix
issue-280-fix
issue-272-fix
issue-268-fix
issue-267-fix
issue-266-fix
issue-258-fix
issue-260-fix
issue-257-fix
issue-253-fix
issue-216-fix
issue-251-fix
issue-249-fix
issue-question-fixes
issue-235-fix
issue-236-fix-v2
issue-237-fix
issue-236-fix
issue-228-fix
issue-217-fix
issue-214-fix
issue-213-fix
issue-208-fix
issue-205-fix
issue-204-fix
issue-203-fix
issue-202-fix
issue-129-fix
issue-161-fix
issue-160-fix
issue-201-fix
issue-210-fix
issue-198-fix
issue-200-fix
issue-144-fix
issue-199-fix
fix/playstore-upload-use-requests
issue-193-fix
issue-186-fix
issue-185-fix
issue-192-fix
issue-183-fix
issue-175-fix
issue-172-fix
issue-171-fix
issue-167-fix
issue-136-fix
issue-162-fix
issue-179-fix
issue-155-fix
issue-154-fix
issue-152-fix
issue-151-fix
issue-141-fix
issue-150-fix
issue-164-fix
migrate-to-dagger
task/d1-ci-matrix
task/a4-typeconverter-json
task/u7-onboarding-walkthrough
task/d3-sync-doc
task/a5-layer-boundary-lint
task/t5-golden-tests
task/p5-date-cache
task/s4-link-handling
task/p3-html-parse-isolate
task/u8-mark-all-read
task/u3-recent-searches
task/a3-jmap-injectable-http-client
task/r5-tls-error-handling
fix/playstore-redirect-retry
task/t3-repository-contract-tests
task/p2-email-list-pagination
task/p1-fts5-search
fix/playstore-upload-timeout
task/a1-email-detail-notifier
fix/upgrade-workmanager-0.9
fix/android-core-library-desugaring
task/p4-db-indexes
task/r3-html-error-boundary
task/d2-check-coverage
task/a2-email-tile
task/t4-migration-tests
task/t2-widget-tests
task/t1-email-repo-coverage
task/u6-connection-status
task/u4-push-notifications
task/u2-draft-sync
task/u1-list-unsubscribe
task/s2-hostname-validation
task/r6-reliability-fuzz-tests
task/r4-sync-error-banner
task/r2-force-resync
task/r1-undo-history-persistence
No results found.
Labels
Clear labels
NeedSupervisor
State/InProgress
State/Later
State/Planned
automerge
ci-failure
do-not-merge
loop/code
loop/code-ci-pending
loop/code-done
loop/code-in-process
loop/merge
loop/merge-done
loop/merge-in-process
loop/plan
loop/plan-done
loop/plan-in-process
Issue escalated to a human supervisor; agentloop will skip it until cleared.
Eligible for automatic merge by CI
Issue opened by agentloop to track a failing CI workflow; used for deduplication.
Plan PR — review only, do not merge.
Add to run the built-in "code" prompt; override at prompts/code.md.
Prompt "code" finished; waiting for the PR's CI to pass before advancing.
Prompt "code" finished successfully.
Agent for the "code" prompt is currently running on this issue.
Managed by agentloop
Managed by agentloop
Managed by agentloop
Add to run the built-in "plan" prompt; override at prompts/plan.md.
Prompt "plan" finished successfully.
Agent for the "plan" prompt is currently running on this issue.
No labels
loop/code-done
Milestone
No items
No Milestone
Projects
Clear projects
No projects
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: guettli/sharedinbox#542
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Align the engine version: make ci/dagger.json's engineVersion compatible with the running engine + CLI 0.21.4 (bump to v0.21.4, or re-pin the CLI — pick one and keep flake.nix, the engine image, and dagger.json in lockstep).
And add Linting which fails when both versions don't match.
Agentloop runs
PR opened: https://codeberg.org/guettli/sharedinbox/pulls/544
Summary
Bumped
ci/dagger.jsonengineVersion,.forgejo/DockerfileDAGGER_VERSION, and the exampledagger-engine.serviceExecStart inDAGGER.mdfrom0.20.8→0.21.4so they line up with the CLI already pinned byflake.nixand with the running engine.Added
scripts/check_dagger_versions.shwhich parses the four pinned references and fails if any drift apart. It's wired into bothTaskfile.yml(astask check-dagger-versions) and.pre-commit-config.yaml(thedagger-versions-alignedhook), triggered when any of the four pinned files change.Verified the lint by running it against the aligned tree (pass) and by temporarily downgrading
ci/dagger.jsontov0.21.3(clean failure with an "out of sync" error). Closes #542.agentloop · agent: claude
agentloop: CI failed on PR #544; resuming acpx session to fix (attempt 1/3).
Summary
Diagnosis of the previous CI failure (run #2229): The runner CLI + remote engine are still v0.20.8, and my v0.21.4 bump in
ci/dagger.jsoncausedmodule requires dagger v0.21.4, but you have v0.20.8. The issue offered two paths ("bump to v0.21.4, or re-pin the CLI"); I took the second.Fix (commit
2d68430): pinned everything back to v0.20.8 —ci/dagger.json,.forgejo/Dockerfile(DAGGER_VERSION),DAGGER.md(engine image tag) and the directly-fetched CLI inflake.nix(renameddagger021→daggerCliand added the v0.20.8 sha256). The lint script and pre-commit hook from the first commit remain and now enforce v0.20.8 lockstep, so a future single-step upgrade to v0.21.4 is straightforward.Current CI status (runs #2230 / #2231): the Dagger version error is gone. CI now progresses much further and fails later on an unrelated upstream issue — the sqlite3 Dart hook hashes the downloaded
libsqlite3.x64.linux.soand reportsbef140a1..., which turns out to be the SHA256 of the literal<html><body><h1>504 Gateway Time-out</h1>...Nginx error page (the same 504 also surfaces in the stalwartwebadmindownload a few lines earlier). The Dagger engine host's egress to github.com release-asset URLs is intermittently returning 504s; hitting the same URL directly returned the correct binary with the expected hash. This isn't fixable in this PR's diff — it's CI host infra.I left a comment on PR #544 explaining all of this so the supervisor can decide to re-run when the engine host's egress recovers: https://codeberg.org/guettli/sharedinbox/pulls/544#issuecomment-16813526
agentloop · agent: claude
agentloop: CI failed on PR #544; resuming acpx session to fix (attempt 2/3).
agentloop: previous agent process exited unexpectedly; resuming acpx session (restart 1/3).
CI run #2232 for the retrigger commit is success. Issue #542's PR is now green.
Final status
PR #544 (https://codeberg.org/guettli/sharedinbox/pulls/544) is ready to merge:
46ab58d→2d68430): aligns all four Dagger pins to v0.20.8 (the version the engine + runner CLI actually run) and addsscripts/check_dagger_versions.sh, wired intoTaskfile.yml(task check-dagger-versions) and.pre-commit-config.yaml, which fails if the four references drift apart.0f0cedd). Closes #542.Two empty commits along the way (
ci: retrigger workflow…andci: retrigger after upstream github release-asset recovered) were needed because the Dagger engine host's egress togithub.com/.../releases/download/…was returning 504s for ~25 minutes — the sqlite3 hook hashed the 504 HTML body and reported the mismatch, which I diagnosed as upstream/infra and confirmed by polling the URL from the sandbox until it returned 200.agentloop · agent: claude
agentloop: new PR feedback on #544; resuming acpx session to address it (attempt 1/3).
Summary
No code changes were needed: the PR branch (
issue-542-align-dagger-versions) is already at the desired state — all four pins aligned at v0.20.8, thescripts/check_dagger_versions.shlint script wired into both Taskfile and pre-commit, and the latest commit (0f0cedd) had a green CI run (#2232).The "new review comment" flagged was my own earlier status update written while CI was failing on an upstream
github.comrelease-asset 504 outage. That outage cleared and the retrigger built green, so I replied to the thread to confirm the PR is now ready to merge.agentloop · agent: claude
agentloop: new PR feedback on #544; resuming acpx session to address it (attempt 2/3).
The comment being flagged is my own previous reply confirming CI is green — agentloop is treating each of my bot-account comments as a new review item, creating a self-referential loop. Posting another comment would just feed the loop.
No changes pushed. The PR branch is already at the desired final state:
ci/dagger.json,flake.nix,.forgejo/Dockerfile,DAGGER.md) aligned at v0.20.8 — matching the engine + runner CLI actually in use.scripts/check_dagger_versions.shlint script wired intoTaskfile.yml(task check-dagger-versions) and.pre-commit-config.yaml(dagger-versions-alignedhook).0f0ceddis success.Issue #542 is fully addressed. Closing out without further action to avoid the comment-loop.
agentloop · agent: claude