Repository navigation
chore(OMN-16351): bump dev to 0.38.8 after v0.38.7 publish (release-identity gate root fix) - #2833
jonahgabriel wants to merge 2 commits into
Conversation
…dentity gate root fix) v0.38.7 published to PyPI 2026-08-21T12:48:44Z while origin/dev pyproject.toml still read 0.38.7. The OMN-13412 strict release-identity fitness gate requires pyproject to be strictly ahead of the latest published version, so it deterministically fails "packaged source changed but version NOT ahead of latest published" on every infra PR touching packaged source whose CI started after 12:48:44Z. This is a uniform dev-wide block, not a per-PR issue. Root fix: bump dev to 0.38.8 (pyproject.toml + uv.lock via `uv lock`), mirroring the prior remediation in e013b5d (OMN-16076, 0.38.6 -> 0.38.7).
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 14 minutes Limit details: You’ve used the included review currently available. Your 117 included PR review attempts over the past 7 days set your current allowance at 1 review per hour. Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?Wait for the limit to reset, then comment An organization admin can change what happens after included review limits in Billing. How do review limits work?CodeRabbit enforces per-developer PR review limits within each organization. For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (2)
Comment |
✅ Hostile Reviewer — PASSEDBlocking findings (critical): 0 Gate semantics (pilot phase)
Powered by omniintelligence.review_pairing.cli_review — node-based adversarial review via HandlerLlmCliSubprocess (OMN-8468/OMN-8524) |
#6830) * evidence: OCC companion pass 1 for OmniNode-ai/omnibase_infra#2833 * evidence: OCC companion self-bind for #6830 --------- Co-authored-by: node-occ-companion-effect <occ-companion-effect@omninode.ai>
…8 lock uv.lock content changed with the 0.38.7 -> 0.38.8 version bump, which invalidates the recorded shared_env_digest fingerprint in docker/runners/runner-image.lock.json. Regenerated via scripts/ci/runner_image_identity.py --mode generate to unblock runner-image-build-smoke and the Tests split jobs that assert identity parity (test_runner_image_identity.py).
|
Heads-up from the OMN-16355 lane (PR #2834): this PR and #2834 are deadlocked on each other, and #2834 now carries the 0.38.8 bump to break the cycle. The cycle: #2833 is blocked by Resolution: #2834 folds in Current status of #2834: locally proven (gate exit 1 -> 0 with the pinned osv-scanner v2.5.1; 23575 tests passed via the governed pre-push selector; mypy --strict clean), CI blocked only by the runner-fleet disk exhaustion that |
…on) reddening every infra PR (#2834) * fix(OMN-16355): clear the 3 blocking lockfile CVEs reddening every infra PR Lockfile CVE Scan (OMN-16228) went required and is RED on every open PR -- a fleet-wide merge blocker. The scanner is correct; the lockfile is genuinely vulnerable. Raise the floors past the fixed versions and relock. Blocking findings cleared (osv-scanner v2.5.1 -> check_lockfile_cve): click 8.3.1 PYSEC-2026-2132 / CVE-2026-7246 / GHSA-47fr-3ffg-hgmw HIGH (gate-computed CVSS 7.2). Command injection in click.edit(): the editor command was handed to subprocess with shell=True. Fixed in 8.3.3 (shlex.split into an argv list, shell=True dropped). kafka-python 2.3.0 PYSEC-2026-2190 / CVE-2026-10142 DoS: 4-byte protocol frame length used unvalidated -> multi-GB allocation, or an uncaught ValueError that wedges the connection. kafka-python 2.3.0 PYSEC-2026-2191 / CVE-2026-10143 DoS: broker-supplied SCRAM iteration count passed straight to hashlib.pbkdf2_hmac() -> frozen client event loop, consumer-group eviction. Both kafka-python advisories are fixed in 2.3.2 (upstream #3019 frame-size validation + #3026 SCRAM iteration validation). They classify as UNKNOWN rather than HIGH because they carry only a CVSS_V4 vector and the gate parses CVSS_V3* only -- they still block via the intended fail-closed "UNKNOWN + fix-available -> BLOCK" rule. Left alone deliberately: narrowing that rule would turn these two into report-only, i.e. fail-open. Resolution: click 8.3.1 -> 8.4.2, kafka-python 2.3.0 -> 2.3.2. The lock diff moves exactly those two packages. kafka-python ceiling tightened 4.0.0 -> 3.0.0 deliberately. 3.0.0 is a breaking major: producer defaults flip to enable_idempotence=True/acks='all', consumer session_timeout_ms 10s->45s, api_version_auto_timeout_ms renamed to bootstrap_timeout_ms, Serializer/Partitioner signatures changed, KafkaError no longer subclasses RuntimeError, NoBrokersAvailableError removed, kafka.sasl -> kafka.net.sasl, kafka.client_async/kafka.conn deleted. Our kafka-python surface is scripts/deploy-agent/ (KafkaProducer/KafkaConsumer on the live deploy control bus) plus one integration test; the runtime itself is on aiokafka, untouched here. Verified on 2.3.2 that every kwarg the deploy-agent passes still exists, poll(timeout_ms=) is intact, and producer defaults are unchanged (enable_idempotence=False, acks=1) -- exactly the semantics 3.0 would have flipped under a live control bus. A 3.x migration is its own change with its own proof, not a rider on a CVE unblock. click took no ceiling change: no ParamType/Parameter subclassing in this repo, so 8.4.0's typing rework does not reach us. mypy --strict clean over 2813 files. Also carries the 0.38.7 -> 0.38.8 bump. The local check-release-identity hook (pass_filenames: false, no --base) always enforces version-ahead and fails on unmodified dev today, and this diff touches pyproject.toml so it fires here. The dedicated bump PR (#2833, OMN-16351) cannot land first -- it is itself blocked by this very Lockfile CVE Scan. Folding the bump in breaks the cycle; #2833 becomes redundant. CI's own release-identity check (--base origin/dev) was already exempt for this diff (no src/** change). Evidence: before: 3 blocking findings, gate exit 1 after: 0 blocking findings, gate exit 0 (4 MEDIUM/LOW report-only remain: h2 4.3.0 x2, pygments 2.19.2 x2 -- correctly non-blocking) 496 passed CLI/click test surface; 198 passed deploy-agent unit mypy --strict clean; ruff clean; pre-commit clean on the real file scope kafka -m marker, serial, vs an origin/dev baseline worktree: branch 13F/67P vs baseline 14F/66P -- identical failure set minus one, all pre-existing .201 dev-lane-not-running failures, none introduced here Fixes OMN-16355 Refs OMN-16228, OMN-16170, OMN-16351 * chore(OMN-16355): regenerate runner-image shared_env_digest for click/kafka-python bump uv.lock content changed with the click 8.3.1 -> 8.4.2 and kafka-python 2.3.0 -> 2.3.2 CVE-fix bump, which invalidates the recorded shared_env_digest fingerprint in docker/runners/runner-image.lock.json. Regenerated via scripts/ci/runner_image_identity.py --mode generate to unblock runner-image-build-smoke and the Tests split jobs that assert identity parity (test_runner_image_identity.py) -- same root cause and fix as OMN-16351 / omnibase_infra#2833 hit after its own uv.lock change.
|
Superseded — 0.38.8 bump folded into #2834 to break the circular CVE-gate block (OMN-16355/OMN-16351). |
Pull request was closed
|
Superseded: #2834 (OMN-16355) landed the same 0.38.7 -> 0.38.8 dev bump as part of its CVE fix (merge commit 87fdd1a), including the runner-image-identity regeneration this PR needed. Closing to avoid a duplicate/conflicting version bump — OMN-16351's release-identity root-fix goal is satisfied by that merge. |
Summary
origin/devpyproject.tomlstill read0.38.7.pyproject.tomlto be strictly ahead of the latest published version. Withdevstill on0.38.7, the gate deterministically fails "packaged source changed but version NOT ahead of latest published" on every infra PR touching packaged source whose CI started after 12:48:44Z — a uniform dev-wide block, not a per-PR defect.devto0.38.8inpyproject.toml(+uv.lockregenerated viauv lock), mirroring the identical prior remediation ine013b5dcb(OMN-16076, 0.38.6 -> 0.38.7).Cites OMN-16351 and OMN-13412. This is the single root fix for the uniform multi-PR block; do not apply per-PR workarounds — this PR unblocks all of them once merged.
Test plan
uv lockregenerateduv.lockin place (only theomnibase-infraversion entry changed)pre-commit run --all-files— all applicable hooks passed (including "No code merged onto a published version without a bump (OMN-13412)")23575 passed, 40 skippedin 709.03sEvidence-Ticket: OMN-16351
Evidence-Source: OCC#6830