Skip to content

Ship fix/codex-sweep-wave-6-installer-coverage - #622

Merged
danielraffel merged 1 commit into
mainfrom
fix/codex-sweep-wave-6-installer-coverage
Apr 22, 2026
Merged

Ship fix/codex-sweep-wave-6-installer-coverage#622
danielraffel merged 1 commit into
mainfrom
fix/codex-sweep-wave-6-installer-coverage

Conversation

@danielraffel

Copy link
Copy Markdown
Collaborator

No description provided.

Four Codex findings on merged PRs #616 and #617. All addressed here.

pulp#617 P1 — pin the upstream installer URL to an immutable tag.
The wrapper downloaded `install.sh` from `main`, so the same Pulp
commit could run different installer code over time — weakens the
pinning model and is a supply-chain smell. Now fetches
`refs/tags/<VERSION>/install.sh` where VERSION comes from
`tools/shipyard.toml`. Verified the tag-pinned URL resolves (200)
for v0.22.8 and a full end-to-end install still succeeds.

pulp#617 P1 — restore queue-file repair. My original rewrite
dropped `repair_truncated_queue_file()`, which handled the #528
failure mode (JSONDecodeError on a zero-byte queue.json after a
crash between `open(O_TRUNC)` and `write()`). Re-running the
wrapper is the documented recovery path; without the repair step
it stopped fixing the thing it's meant to fix. The regression
test `test_install_shipyard.py` still exercises this path.

pulp#617 P2 — move legacy `~/.pulp/bin/shipyard` cleanup to AFTER
the upstream installer succeeds. Previously cleanup ran first, so a
curl failure deleted the user's only working shipyard symlink. The
wrapper is idempotent; cleanup on the next successful run is fine.

pulp#616 P2 — also pick up `pulp-*.lib` archives on Windows.
`scripts/run_coverage.sh` switches to `clang-cl` on Windows and
CMake emits `.lib` archives there (MSVC-style), not `.a`. The
full-surface expansion was silently skipped on the Windows matrix
leg — the very thing the expansion was supposed to close. The
`pulp-*.lib` prefix is narrow enough to skip third-party `.lib`
files under _deps/.

Verified locally (macOS):
  bash -n tools/install-shipyard.sh scripts/run_coverage.sh  # syntax
  ./tools/install-shipyard.sh --status   # reads pin OK
  ./tools/install-shipyard.sh            # tag-pinned URL, clean install
  shipyard --version                     # → 0.22.8

Skill-Update: skip skill=ci reason="installer + coverage-script polish, no skill content change"
@codecov

codecov Bot commented Apr 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@github-actions

Copy link
Copy Markdown

Diff coverage (required)

Diff coverage threshold: 75% (required).

diff-cover report

Diff: origin/main...HEAD, staged and unstaged changes

No lines with coverage information in this diff.

See coverage.md for how to interpret this number and the full Phase 1 → Phase 3 roadmap.

Per-tier diff coverage (#566 Phase 2)

Tier Target Diff coverage Touched lines Result
audio-critical 80% — (no touched lines) 0
user-facing 70% — (no touched lines) 0
infrastructure 50% — (no touched lines) 0

All touched tiers meet their per-tier floors.

@danielraffel
danielraffel merged commit c5d22ae into main Apr 22, 2026
16 checks passed
@danielraffel
danielraffel deleted the fix/codex-sweep-wave-6-installer-coverage branch April 22, 2026 05:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant