decrating: absorb shipper-execution-core into shipper::runtime::execution#69
Conversation
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
|
Warning Rate limit exceeded
Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 16 minutes and 34 seconds. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: ⛔ Files ignored due to path filters (33)
📒 Files selected for processing (19)
✨ Finishing Touches🧪 Generate unit tests (beta)
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 |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d40b4a3e83
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ) | ||
| })? | ||
| } else { | ||
| reg.fetch_sparse_index_file(reg.base_url(), crate_name)? |
There was a problem hiding this comment.
Use registry index base for sparse readiness checks
When ReadinessMethod::Index (or Both with index-first behavior) is used, this call fetches sparse index metadata from reg.base_url(), which is the API host (https://crates.io), not the sparse index host (https://index.crates.io for crates.io). That makes index readiness probes fail/timeout in parallel publish even after a successful upload, leading to ambiguous/failure outcomes under index-based readiness settings.
Useful? React with 👍 / 👎.
…tion Stacks on top of PR #64 (engine_parallel absorption) — engine-parallel no longer depends on shipper-execution-core externally. Move ~2100 LOC (92 LOC of impl + ~2000 LOC of tests/proptests/snapshots) into crates/shipper/src/runtime/execution/mod.rs as the sole submodule of the new runtime/ layer directory. No in-tree duplicate or _micro.rs shim existed — pure relocation. Update all `use shipper_execution_core::X` to `use crate::runtime::execution::X` across shipper (engine/mod.rs, engine/parallel/publish.rs, engine/parallel/mod.rs, engine/parallel/tests.rs). Fuzz target `fuzz/fuzz_targets/execution_core.rs` now imports from `shipper::runtime::execution::*` (fuzz crate already depends on shipper). Remove the `shipper-execution-core` entry from `fuzz/Cargo.toml`. Move the two BDD tests from `crates/shipper-execution-core/tests/execution_core_bdd.rs` into `crates/shipper/tests/execution_bdd.rs`. Rename snapshot files from `shipper_execution_core__tests__snapshots__*` to `shipper__runtime__execution__tests__snapshots__*` and update their `source:` metadata. Enable the `yaml` feature on shipper's insta dev-dep. Items are exposed as `pub` (rather than `pub(crate)`) because the external fuzz target exercises them directly; this exception is documented in `runtime/execution/CLAUDE.md` and will be tightened in a later pass. Delete crates/shipper-execution-core, drop it from the workspace members, remove the dep from shipper's Cargo.toml, and purge it from docs/architecture.md and RELEASE_CHECKLIST_v0.3.0.md. Per docs/decrating-plan.md §6 Phase 2.
d40b4a3 to
1beeb19
Compare
Summary
shipper-execution-coremicrocrate (~2100 LOC: 92 LOC of impl + ~2000 LOC of tests/proptests/snapshots) intocrates/shipper/src/runtime/execution/mod.rsas the first occupant of the newruntime/layer.use shipper_execution_core::Xtouse crate::runtime::execution::Xacross shipper (engine/mod.rs,engine/parallel/{mod,publish,tests}.rs).Stacking note
Stacks on top of PR #64 (engine-parallel absorption). Until #64 merges to
main, this PR's diff-against-main will include the engine-parallel commits as well — that's expected. Once #64 merges, the diff here will shrink to just the execution-core absorption (~52 files, 95 insertions / 178 deletions net for this commit alone).Notes
pubrather thanpub(crate)because the externalfuzz/fuzz_targets/execution_core.rstarget exercises them directly. Documented inruntime/execution/CLAUDE.md; can be tightened in a later pass once the fuzz surface is rationalized.shipper_execution_core__tests__snapshots__*toshipper__runtime__execution__tests__snapshots__*withsource:metadata updated to the new path.instadev-dep onshippernow enables theyamlfeature (previously relied on the microcrate's own dev-dep).crates/shipper/tests/execution_bdd.rs(external test crate, imports via the publicshipper::runtime::executionpath).Per
docs/decrating-plan.md§6 Phase 2.Validation
cargo check --workspace— cleancargo test -p shipper runtime::execution— 128 passed, 0 failedcargo test -p shipper— 1054 passed, 3 ignored, 0 failedcargo test -p shipper-cli— 450 passed, 0 failedcargo clippy -p shipper --all-targets --all-features -- -D warnings— cleancargo fmt --all -- --check— cleanTest plan