Repository navigation
Conversation
chrono's DateTime::parse_from_str needs an offset in the format, so %Y-%m-%dT%H:%M:%SZ returns NotEnough for every input.
The second chrono pattern had a literal Z and no offset, so it could never produce a DateTime; RFC 3339 already accepts those strings.
rust/tests/providers/test_infini.rs was never compiled (no rust/tests/providers.rs entry). Its eight cases still hold; they now run as async mockito tests, with the four single-assert identity checks folded into one test.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
Lane G3 of the provider simplification: groups 6 and 7 (cursor, alibabatokenplan, zai, qwencloud, codebuddy, doubao, sub2api, zoommate, factory, bedrock, gemini, kiro, infini). Behavior-preserving: no persisted formats, serde names, CLI output, bridge DTOs, user-facing strings or error text change.
Lands after #795. This branch is stacked on
simplify/provider-registry(now at 27f9ad9, after its merge ofmain). Base this PR's review on that branch; retarget tomainonce #795 merges.Levers done
mcp_detailsmodule (and its 5 own tests)MissingToken; one endpoint-override parser; limit-unit table; test helpers and tablesversion.rstocli_path.rs(path helpers kept)%SZdate fallback that can never parse, infallible result builder, shared on-demand helpers, WAL sidecar helper, testevent()deep_findfetch_viaroutingdeep_find; console posts through one closure (replacespost_api_optional)cornerstoneParambuilt withjson!, after a characterization test pinned the fullparamsstring. One lever over the two copies of the same builder: -7 combined (alibaba -5, qwencloud -2)providers::resolve_api_key(identical); dropped the product scan that discarded its messagerenames equal to the field name (norename_allon these structs)&RequestContext; bearer-cache invalidation without re-matching; preferred host moved to front; failover through the testedshould_failoversigned_postand one canonical-header templatejson_strhelper, shared missing-credentials error, infallible AWS CLI path lookup%SZbranch could never yield a DateTime);UsageSnapshotreturn instead of a 4-tuplemock_usageandprobe_withtest helpers; removed the duplicate Factory sources testrust/tests/providers/test_infini.rswas never compiled (norust/teststarget wiring). Its 8 cases moved intoinfini.rstests; the 4 single-assert identity cases fold into one test. File moved to the Recycle BinDead-module deletions (lead-approved)
PBG-01 to PBG-05 are approved by the lane lead in the LANE-G rulings: one module per commit, named here so each can be reverted alone.
zai/mcp_details.rs(no callers)kiro/version.rsversion API (KiroVersion,detect_version,get_version,is_installed,is_compatible,CLI_VERSION,reset_cache);KiroProvidernever overridesProvider::detect_versioncli_path.rsin 331eaeaSkipped, with reasons
deserialize_opt_f64swap: not identical (no trim; errors on bool/array/object).dashboard_post:team_budget.rsalready sends every dashboard POST through onefetch_team_dashboard; nothing left to merge.format::numberswaps: ties-to-even differs from the JS-style rounding; no characterization proved identical output.Defaultderive: lane A spec block.Parsed*/Responsecollapse: per-field leniency differs.jwt_payloadfor zoommate/gemini: base64 alphabet handling differs.send_json, factory mirrored branches, doubao coding-plan lane table (2 lines), alibaba typedPercentWindow(+4 after rustfmt).Splits (moves only)
tests.rsfiles (same module path, so test names are unchanged): qwencloud, codebuddy, doubao, alibabatokenplan, sub2api, zoommate, factory, bedrock,gemini/api/tests.rs,cursor/api/tests.rs.qwencloud/fields.rs(375 lines, JSON field lookups),alibabatokenplan/fields.rs(341),doubao/arkcli.rs(239,arkcli usage planfallback). Helpers not named outside their module are private.cursor/token_cost.rs799,codebuddy/mod.rs780).apps/desktop-tauri/srcreferences none of the moved or removedrust/paths.LOC
Measured with the program's
loc.py(raw lines; prod vs test).simplify/provider-registry(27f9ad9)origin/main(includes #795's own savings)The +1,382 against 733d69a is the base branch's own merge of
main(+2,810); none of those files overlap this branch.loc.pycounts all ofinfini.rsas prod because its test module carries an#[allow]between#[cfg(test)]andmod tests {. Corrected, infini is prod 0 / test -19, so the delta is prod -1,193, test -235.Test inventory
cargo test -p codexbar -- --list | grep ': test' | wc -l: 3,763 at 733d69a, 3,808 at HEAD. Of the +45, +49/-1 come from the base'smainmerge (amp, groq, kilo, settings); the owned directories net -3.mcp_detailsmodule's own testswindows_rejects_gui_kiro_binary_as_climoved tocli_pathnested_gateway_errors_surface_without_auth_eviction,success_envelope_is_transient_only_without_windows), every input and expected row kept; +1 params characterizationavailable_sources_include_auto_api_and_webrepeated the no-CLI sources testrust/tests/providers/test_infini.rs; 4 single-assert identity tests fold intoprovider_identity_and_sourcesInventories:
W:\pstack-logs\Win-CodexBar\simplify\inv-G3-before.txt,inv-G3-after.txt.Commands run
All through the lane's private cargo wrapper (Rust 1.98.0, isolated target dir), one at a time, on HEAD after the rebase:
cargo fmt --all --checkcargo clippy --workspace --all-targets -- -D warningscargo test -p codexbarcargo test -p codexbar-desktop-tauricargo test -p codexbar -- --listapps/desktop-tauri/srcfor movedrust/pathsscripts/local-check.ps1was not run (blocked on this machine by the no-permanent-delete hook). No UI surface changed, so no CUA proof applies.Cross-lane requests
providers::json_walk/ fields module.qwencloud/fields.rsandalibabatokenplan/fields.rsare near-identical, and the same walkers exist in deepgram, deepseek, elevenlabs, llmproxy, minimax and xkiro.cornerstoneParambuilder (qwencloud, alibabatokenplan, alibaba).codex_accounts::credentials).Follow-up bugs (not fixed here)
format_countprints-,123for negative values.api.rsandteam_budget.rseach defineBASE_URL = "https://cursor.com", andmod.rsrepeats theCOOKIE_DOMAINSliteral. A small dedupe left for a follow-up..or(...await)always sends the app-host auth request, even when the first host succeeds. Pre-existing at the base (factory/mod.rs:505onsimplify/provider-registry); the refactor kept it as is.