Add randomizer operations evidence bundle#155
Conversation
There was a problem hiding this comment.
Claude Code Review
This repository is configured for manual code reviews. Comment @claude review to trigger a review and subscribe this PR to future pushes, or @claude review once for a one-time review.
Tip: disable this comment in your organization's Code Review settings.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (3)
✅ Files skipped from review due to trivial changes (1)
🚧 Files skipped from review as they are similar to previous changes (2)
📝 WalkthroughWalkthroughThis PR adds a randomizer operations evidence schema and a local Anvil evidence bundle, implements a Python validator with unit tests, integrates evidence into release manifest/checksum generation, wires tests and checks into CI and local Makefile/scripts, and updates documentation and release artifacts. ChangesRandomizer operations evidence
Sequence DiagramsequenceDiagram
participant CI as CI Workflow
participant Runner as CI Job Runner
participant Test as test_randomizer_operations.py
participant Check as check_randomizer_operations.py
participant Repo as Repository Files
CI->>Runner: start "Randomizer operations evidence" step
Runner->>Test: run tests (python scripts/test_randomizer_operations.py)
Test->>Repo: write/seed deterministic manifest/address-book/checksum files
Test->>Check: invoke checker.validate_evidence on seeded evidence
Runner->>Check: run checker (python scripts/check_randomizer_operations.py)
Check->>Repo: read evidence + manifest + address-book + checksum bundle
Check->>Runner: exit 0 or error with message
Runner->>CI: capture logs to ci-logs/*.log
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
|
@coderabbitai review |
✅ Action performedReview finished.
|
|
@coderabbitai review |
✅ Action performedReview finished.
|
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@scripts/check_randomizer_operations.py`:
- Line 218: Replace the current validation call that uses require_int for the
confirmation depth with require_nonnegative_int so negative values are rejected;
specifically change the call that passes network.get("confirmation_depth") and
the "network.confirmation_depth" key to use require_nonnegative_int instead of
require_int (update any references to confirmation_depth validation in the same
scope to use require_nonnegative_int).
In `@scripts/test_randomizer_operations.py`:
- Around line 247-258: The test test_production_requires_provider_funding_proof
currently fails early on missing retained categories; update the test to include
the required retained artifact categories so validate_evidence actually reaches
the evidence-count check: when building evidence via valid_evidence in
test_production_requires_provider_funding_proof, add the retained categories
list including "provider_configuration", "provider_funding", and
"provider_health" (where the code reads/uses
evidence["retained_artifact_categories"]) before writing the JSON, then keep the
assertRaisesRegex against checker.RandomizerOperationsError for the
provider_funding count check (adjust the regex only if the validator's error
text differs after adding the categories).
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 4ce111d3-b83d-4992-ae10-691be8401f6d
📒 Files selected for processing (22)
.github/workflows/ci.ymlCHANGELOG.mdMakefiledeployments/README.mddeployments/randomizer-operations/anvil-6529stream-v0.1.0-001-local.jsondeployments/schema/randomizer-operations-evidence.schema.jsondocs/deployment.mddocs/randomizer-operations.mddocs/release-policy.mddocs/status.mdops/AUTONOMOUS_RUN.mdops/ROADMAP.mdrelease-artifacts/latest/SHA256SUMSrelease-artifacts/latest/release-checksums.jsonrelease-artifacts/latest/release-manifest.jsonscripts/check.ps1scripts/check.shscripts/check_randomizer_operations.pyscripts/generate_release_checksums.pyscripts/generate_release_manifest.pyscripts/test_randomizer_operations.pyscripts/test_release_manifest.py
|
@coderabbitai review |
✅ Action performedReview finished.
|
Summary
Closes #154.
Adds a checkable, no-secret randomizer operations evidence bundle for deployment/release reviewers. This PR makes randomizer provider configuration, provider epochs, local funding status, request lifecycle controls, reserve policy, retained artifacts, and redaction rules part of the deterministic release surface.
Changes
deployments/schema/randomizer-operations-evidence.schema.json.deployments/randomizer-operations/anvil-6529stream-v0.1.0-001-local.json.scripts/check_randomizer_operations.pyandscripts/test_randomizer_operations.py.Makefile,scripts/check.sh,scripts/check.ps1, and CI.docs/randomizer-operations.mdand update deployment/release/status/roadmap/run-state docs.Local Validation
python scripts\test_randomizer_operations.pypython scripts\check_randomizer_operations.pypython scripts\test_release_manifest.pypython scripts\generate_release_manifest.py --checkpython scripts\test_release_checksums.pypython scripts\generate_release_checksums.py --checkpython scripts\test_changelog_check.pypython scripts\check_changelog.pypython -m py_compile scripts\check_randomizer_operations.py scripts\test_randomizer_operations.py scripts\generate_release_manifest.py scripts\test_release_manifest.py scripts\generate_release_checksums.py scripts\test_release_checksums.pybash -n scripts/check.shgit diff --checkmake checkpowershell -NoProfile -ExecutionPolicy Bypass -File scripts\check.ps1Notes
No Solidity behavior changes. The committed evidence is explicitly local Anvil evidence only. Fork/testnet/live provider funding, request health, and retained provider proof remain future release ceremony work.
Summary by CodeRabbit
New Features
Documentation
Tests
Chores