Repository navigation
deps: refresh the dev lockfile within its constraints; cap parallel and simplecov for the 3.2 floor - #75
Open
minerva-sky wants to merge 2 commits into
Open
deps: refresh the dev lockfile within its constraints; cap parallel and simplecov for the 3.2 floor#75minerva-sky wants to merge 2 commits into
minerva-sky wants to merge 2 commits into
Conversation
`bundle update` honouring every cap already in the Gemfile moves 51 gems: json 2.7 -> 3.1, zeitwerk 2.6 -> 2.8, dry-schema 1.13 -> 1.16 (dry-core 1.0 -> 1.2, dry-types 1.7 -> 1.9), async 2.24 -> 2.37 (the Gemfile cap the lock never reached), thor 1.3 -> 1.5, standard 1.32 -> 1.57 (rubocop 1.91), rspec 3.13.0 -> 3.13.2, webmock 3.23 -> 3.34. These are the versions a fresh `gem install agentic` already resolves to; CI was testing the old numbers. The refresh drops the orphan base64 entry that vcr 6.3 pulled in, which is the only thing that let authentication_system.rb's dead `require "base64"` load on Ruby >= 3.4 (base64 is a bundled gem there). The require goes; the file never calls Base64. Suite on the refreshed lock (Ruby 4.0.2): 1391 examples, the two pre-existing flakes only (plan_orchestrator_spec:243 UUID redaction, codenamev#54; event_dispatcher_integration_spec:291 wall clock, codenamev#36). standardrb 1.57 reports no offences. Closes codenamev#64. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The refresh resolved on Ruby 4.0.2 and let parallel 2.3.0 (via rubocop 1.91) and simplecov 1.3.2 into the lock; both declare required_ruby_version >= 3.3, so CI's frozen install on 3.2.4 would fail before a spec ran. Same cap pattern as async/console/dry-configurable/ io-event: parallel < 2 (1.28.0, floor 2.7), simplecov < 1.3 (1.2.0, floor 3.2). Every locked spec now satisfies 3.2.4. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
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
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.
Closes #64.
bundle updateonmain, honouring every cap already in the Gemfile, moves 51 gems. The runtime ones are the versions every freshgem install agenticalready resolves to while CI tested the old numbers: json 2.7 → 3.1, zeitwerk 2.6 → 2.8, dry-schema 1.13 → 1.16 (dry-core 1.0 → 1.2, dry-types 1.7 → 1.9, dry-logic 1.5 → 1.6), async 2.24 → 2.37 (the Gemfile's own cap, which the lock never reached), thor 1.3 → 1.5, net-http 0.4 → 0.10, faraday 2.14 → 2.15. Dev side: standard 1.32 → 1.57 (rubocop 1.91, so Ruby 3.4 syntax lints), rspec 3.13.2, webmock 3.34, simplecov 1.2, rake 13.4.What changes
Gemfile.lock: the refresh. Not shipped in the gem, so consumer resolution is byte-for-byte unchanged; this only changes what CI exercises.Gemfile: two more caps in the existing Ruby 3.2.4 floor block,parallel < 2andsimplecov < 1.3, because the panel caught that both had crossed to a 3.3 floor in the refresh (resolved locally on 4.0.2, where the floor is invisible). Every locked spec now satisfiesrequired_ruby_versionon 3.2.4. These caps go with the four existing ones when deps: raise Ruby floor to >= 3.2 and test a real CI matrix (#15) #27 / CI tests async 2.24 while consumers on maintained Rubies resolve 2.46: the 3.2 caps in Gemfile freeze every matrix leg #42 land.authentication_system.rb: the deadrequire "base64"is deleted. The refresh drops the orphanbase64 (0.2.0)entry that vcr 6.3 pulled in, which was the only thing letting that line load on Ruby >= 3.4, and the file never callsBase64. Identical hunk to fix: ArtifactGraph on stdlib TSort; declare every runtime dependency lib/ requires #74, so either merge order is clean (the lock will need a re-resolve after whichever merges second; both are mechanical).Tests (Ruby 4.0.2, refreshed lock): 1391 examples, only the pre-existing
event_dispatcher_integration_spec.rb:291wall-clock flake (#36); earlier run also hit theplan_orchestrator_spec.rb:243UUID-redaction flake (#54).standardrb1.57: no offences. CI's 3.2.4 leg is the gate that matters here; the floor check is the local proxy for it.Worth a follow-up, not in this PR: json 3.x raises on duplicate keys and comments where 2.x took last-wins. Consumers already get 3.x (the gemspec never pinned json), and every LLM-facing
JSON.parsein lib/ is rescued, but nobody has decided whetherallow_duplicate_key: trueis the intended policy for model output. Two seats raised it independently.Intended labels:
loop:drain,loop:deps.Panel
rake. Fixed in 787feda (caps + re-lock, floor check clean). Round 2: cleared 3/3, having re-run the floor check and probed async 2.37's Barrier/Queue/Semaphore against the orchestrator and json 3.1's stricter parse against everyJSON.parsein lib/.ruby+ arm64-darwin-23) and BUNDLED WITH unchanged, prism 1.9 is the only new native build and is cache-keyed, lint ruleset pinned by.standard.ymlso local and CI agree.Base64referenced nowhere in lib/spec/exe; nothing serialised changes shape.🤖 Generated with Claude Code