Skip to content

tests: pin the kept edge build and dependency byte for byte - #37

Merged
andrebrait merged 1 commit into
mainfrom
issue/3390-edge-byte-identity
Oct 2, 2026
Merged

andrebrait merged 1 commit into
mainfrom
issue/3390-edge-byte-identity

Conversation

@andrebrait

@andrebrait andrebrait commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

Follow-up to #36, addressing CodeRabbit's nitpick there, which was missed before landing.

test_stable_build_prunes_a_stale_version_from_a_newer_family_edge checked that edge still lists 4.0.0.a1 and carries its dependency. A publish that swapped either file for a different but valid archive under the same name still passed. The test now captures both files before the leftover 3.3.10 is seeded and requires identical bytes after the stable 3.3.11 publish.

Verified by mutation: recompressing either kept file at a different zstd level inside the stale-destination branch of publish() (valid archive, same contents, different bytes) passes every earlier assertion and fails the new byte check.

Refs pfBlockerNG/pfBlockerNG#3390

Summary by CodeRabbit

  • Tests
    • Added checks that publishing a stable build leaves the existing canonical package and dependency files unchanged.

The stale-edge prune test checked that 4.0.0.a1 and its dependency are
still listed, but a publish that replaced either file with a different
valid archive under the same name still passed. Capture both before the
leftover is seeded and require identical bytes after the stable publish.

Addresses CodeRabbit feedback on #36.
Refs pfBlockerNG/pfBlockerNG#3390
@coderabbitai

coderabbitai Bot commented Oct 2, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 5c59e96f-a029-4c90-b3e8-48fdfbe24ffb

📥 Commits

Reviewing files that changed from the base of the PR and between 90b9b96 and 8cafb81.

📒 Files selected for processing (1)
  • tests/test_publish_release.py

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

The release test now records the existing edge package and dependency bytes before publishing and checks that both files remain byte-identical afterward.

Changes

Edge package preservation

Layer / File(s) Summary
Record and verify package bytes
tests/test_publish_release.py
The test captures the edge package and dependency bytes before publishing. It asserts that both files retain identical bytes afterward.

Priority: ⬇️ Low

Estimated code review effort: 1 (Trivial) | ~4 minutes

Change: Other

Merge Risk: ⚪ Minimal · up to 8cafb

No actionable merge risk remains; the new test checks byte preservation through the regeneration path.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the test change and the byte-for-byte preservation of the kept edge build and dependency.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


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.

❤️ Share

A rabbit checks each byte in place
The edge build keeps its case
The deps stay just the same
No bytes have left the frame
Then hops away with carrots to claim

Comment @coderabbitai help to get the list of available commands.

@andrebrait
andrebrait merged commit 8cafb81 into main Oct 2, 2026
3 checks passed
@andrebrait
andrebrait deleted the issue/3390-edge-byte-identity branch October 2, 2026 07:06

This branch was successfully deployed

1 active deployment
github-pages — 8cafb817 Deployed Oct 2, 2026 by andrebrait via deploy #171
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