fix(opencode): execute repository asyncio tests in coverage sandbox - #819
fix(opencode): execute repository asyncio tests in coverage sandbox#819seonghobae wants to merge 1 commit into
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
|
@opencode-agent Please implement the failing test-first contract on this branch: add |
|
@opencode-agent address Complete the test-first asyncio coverage-toolchain repair on the current protected base. Exact PR head is First normally merge exact protected main into the existing branch without rewriting history. Then implement only the permanent toolchain requirement already captured by the RED contract:
Preserve the digest-pinned trusted image, exact base-owned lock materialization, hash verification, networkless/non-root PR execution, source/archive bounds, credential isolation, reviewer identities, model routing, and branch protection. Do not add mutable installers, consumer-selected dependency resolution, COPILOT_GITHUB_TOKEN, temporary/self-modifying/write-capable workflows, or bypasses. Run the fail-first asyncio toolchain contract, lock-compiler/hash-lock consistency contracts, offline import smoke, complete central suite and Strix quick gate, Python 3.10/3.14 compatibility, exact 100% production statement/branch/public-docstring gates, then all exact-head security/supply-chain checks. Keep Draft until current-head automated and qualifying independent review are clean; do not merge or synthesize approval. |
|
/oc Refetch the live PR and abort without writing unless exact head is still First reconcile the latest protected
Verify test-first after reconciliation: the permanent plugin contract, Python 3.10 and 3.14 compatibility, the complete central suite, 100% owned production statement/branch coverage and public docstrings, compileall, lock reproducibility, Strix quick gate, and |
Root cause
The trusted OpenCode coverage image installs the repository's production lock plus the central review toolchain, but the central toolchain omits
pytest-asyncio. Repositories that correctly configureasyncio_modeand mark coroutine tests therefore collect normally and then fail every async test withasync def functions are not natively supported, while pytest also reportsUnknown config option: asyncio_mode.This is infrastructure evidence, not a product-code regression. It currently blocks exact-head review evidence in downstream repositories including
ContextualWisdomLab/pg-erd-cloud.Test-first state
Commit
fc43514b2ac9bfb15d7a85aaeb2fbfd5c77f7166adds a failing contract that requires:pytest-asyncio==1.4.0in the trusted review requirements;pytest_asyncioimport in the offline toolchain smoke check.Minimal implementation contract
pytest-asynciorelease;requirements-opencode-review-ci-hashes.txtonly throughscripts/ci/compile_opencode_review_lock.sh;Authoritative evidence
PyPI identifies
pytest-asyncio1.4.0 as the current stable release (May 26, 2026), supports Python 3.10–3.14, and publishes Trusted Publishing provenance. The tagged project metadata requirespytest>=8.4,<10, which is compatible with the pinned centralpytest==9.1.1.No downstream branch-protection gate should be bypassed while this infrastructure correction is pending.