fix: make incomplete-download planning help successful and bounded - #218
fix: make incomplete-download planning help successful and bounded#218seonghobae wants to merge 41 commits into
Conversation
|
Warning Review limit reachedNext included review available in 34 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (8)
📝 WalkthroughWalkthrough세 불완전 다운로드 CLI가 단독 Changes불완전 다운로드 CLI 계약
Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: 🟡 Moderate · up to The three updated CLIs can still panic instead of returning a bounded error when given a non-UTF-8 argument. This is a localized but concrete runtime correctness issue that should be fixed before merge. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Pull request overview
OpenCode cannot approve yet because required coverage evidence did not pass.
Review outcome
1. HIGH .github/workflows/opencode-review.yml:1 - Coverage evidence did not prove required test/docstring evidence
-
Problem: The required coverage-evidence job result was
failure, so OpenCode cannot establish approval sufficiency for this head. -
Root cause: Automated approval is only valid when the same-head coverage-evidence job proves supported repository test suites passed and configured docstring gates passed or were advisory, or reports not applicable because no supported source files or package manifests exist. Missing, failed, skipped, unavailable, or unsupported-tooling test evidence is a blocker.
-
Fix: Install or configure the repository test/docstring evidence tooling when source files or package manifests exist, rerun the current-head coverage-evidence job, and approve only after it reports
successwith required evidence or explicit no-source not-applicable evidence. -
Regression test: Keep the approval branch checking
needs.coverage-evidence.result == successbefore posting APPROVE, and publish REQUEST_CHANGES when coverage-evidence blocker states such as cancelled, skipped, failed, unsupported-tooling, or below-100 evidence are present. -
Result: REQUEST_CHANGES
-
Reason: coverage-evidence result was
failure, so required test/docstring evidence was not proven for current headf7b405ba4bb80ac3bda8785807f87ad491dd8660. -
Head SHA:
f7b405ba4bb80ac3bda8785807f87ad491dd8660 -
Workflow run: 32167364984
-
Workflow attempt: 1
Coverage evidence
Coverage Decision
- Result: FAIL
- Test evidence: not proven passing
- Docstring evidence: not proven passing when configured
- Failure count: 1
Changed-File Evidence Map
flowchart LR
PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
Evidence --> S1["Changed file (4 files)"]
S1 --> I1["repository behavior"]
I1 --> R1["Review risk: Changed file (4 files)"]
R1 --> V1["required checks"]
OpenCode Review Overview
Pull request overviewOpenCode cannot approve yet because required coverage evidence did not pass. Review outcome1. HIGH .github/workflows/opencode-review.yml:1 - Coverage evidence did not prove required test/docstring evidence
Coverage evidenceCoverage Decision
Changed-File Evidence Mapflowchart LR
PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
Evidence --> S1["Changed file (4 files)"]
S1 --> I1["repository behavior"]
I1 --> R1["Review risk: Changed file (4 files)"]
R1 --> V1["required checks"]
|
There was a problem hiding this comment.
Pull request overview
OpenCode cannot approve yet because required coverage evidence did not pass.
Review outcome
1. HIGH .github/workflows/opencode-review.yml:1 - Coverage evidence did not prove required test/docstring evidence
-
Problem: The required coverage-evidence job result was
failure, so OpenCode cannot establish approval sufficiency for this head. -
Root cause: Automated approval is only valid when the same-head coverage-evidence job proves supported repository test suites passed and configured docstring gates passed or were advisory, or reports not applicable because no supported source files or package manifests exist. Missing, failed, skipped, unavailable, or unsupported-tooling test evidence is a blocker.
-
Fix: Install or configure the repository test/docstring evidence tooling when source files or package manifests exist, rerun the current-head coverage-evidence job, and approve only after it reports
successwith required evidence or explicit no-source not-applicable evidence. -
Regression test: Keep the approval branch checking
needs.coverage-evidence.result == successbefore posting APPROVE, and publish REQUEST_CHANGES when coverage-evidence blocker states such as cancelled, skipped, failed, unsupported-tooling, or below-100 evidence are present. -
Result: REQUEST_CHANGES
-
Reason: coverage-evidence result was
failure, so required test/docstring evidence was not proven for current headf7b405ba4bb80ac3bda8785807f87ad491dd8660. -
Head SHA:
f7b405ba4bb80ac3bda8785807f87ad491dd8660 -
Workflow run: 32174716369
-
Workflow attempt: 1
Coverage evidence
Coverage Decision
- Result: FAIL
- Test evidence: not proven passing
- Docstring evidence: not proven passing when configured
- Failure count: 1
Changed-File Evidence Map
flowchart LR
PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
Evidence --> S1["Changed file (4 files)"]
S1 --> I1["repository behavior"]
I1 --> R1["Review risk: Changed file (4 files)"]
R1 --> V1["required checks"]
This REQUEST_CHANGES review is anchored to predecessor head f7b405b and its failed predecessor coverage-evidence run. The PR has since been non-destructively converged onto current main and repaired on exact head 6a4b186. Predecessor review evidence cannot remain current-head blocking evidence. This dismissal does not assert approval or passing current-head checks; all current exact-head gates and repository-wide coverage remain required.
…espace-v1' into HEAD
Purpose
Make three incomplete-download operational CLIs treat a sole
--help/-has a successful terminal action while preserving fail-closed invalid and execution semantics, and ensure opaque or non-UTF-8 arguments cannot escape through reflected diagnostics or a Rust panic.Covered binaries:
disksage-incomplete-download-materialization;disksage-incomplete-download-recovery;disksage-incomplete-download-materialize.Exact current state
f7b405ba4bb80ac3bda8785807f87ad491dd8660.main:be418bac9bfbdc8aa41b1a698713833e3dbccfdc.main -> headcomparison isahead,ahead_by = 17,behind_by = 0, with merge base exactly protected main.src-tauri/src/bin/disksage-incomplete-download-materialization.rs;src-tauri/src/bin/disksage-incomplete-download-recovery.rs;src-tauri/src/bin/disksage-incomplete-download-materialize.rs;src-tauri/tests/cli_help_incomplete_plans_exit.rs.Test-first evidence and root cause
ed26ae2e1ac93f54f1188b8daea756c427a35dfcadded the real-binary process contracts before production changes.31763912086passed setup, dependency/toolchain installation, and the independentllm-engine-build, then failed in the Rust-test boundary. Cancelled Release/Security runs on that superseded head are not treated as evidence.std::env::args(), and the regression did not yet pin complete usage/error contracts. Both are addressed on the current exact head; the sole inline thread is resolved and outdated.Narrow implementation
Each binary now:
std::env::args_os();OsStringexplicitly and maps conversion failure to that binary's stable unknown-argument token;The process regression builds the actual feature-gated binaries with
--locked --features cloud-cliin an isolated target directory and verifies sole help, short help, unknown argument, mixed help/invalid, and Unix non-UTF-8 input.Incomplete-download audit/recovery validation, materialization planning, destination-plan and fingerprint admission, explicit
--execute, human attribution/rationale, capacity admission, private create-new evidence/receipts, cloud-root/path safety, JSON stdout purity, filesystem authority, and existing limits remain unchanged.Exact-head validation
On unchanged head
f7b405ba4bb80ac3bda8785807f87ad491dd8660:31868643605— success; the ordinary test job andllm-engine-buildboth completed successfully;31868643606— success;31868643610— success;31868643618— success.Formal CodeRabbit review evidence is anchored to predecessor head
c1b436dc3cd2e28f576ae2ba48d911822025d50a, not the current head. Its valid findings are addressed, but predecessor review evidence is not approval and does not transfer.Scope / non-duplication
A temporary Draft #219 was converged into this domain batch and closed without losing its unique test delta. #217 owns local-eviction/destination-plan help, #156 owns repository-wide exact coverage, and #149 owns canonical acquisition documentation. This PR races none of those owners.
Remaining integration blocker
Feature-local/current-head evidence is green, but repository-wide exact 100% owned-production region/statement-equivalent, branch, function, and line coverage remains materially unsatisfied on canonical coverage owner #156. Ready-for-review status is not merge authorization.
Required before merge
Do not merge unless the unchanged exact head satisfies every applicable live required workflow and current finding, every review thread is resolved, fresh live-base ancestry remains current, the live review ruleset is satisfied, and repository-wide exact coverage is satisfied without exclusions or threshold weakening. Pending, queued, skipped-required, neutral-required, failed, stale, predecessor, synthetic, diagnostic-only, status-only, model-only, rate-limited, or infrastructure-only evidence is not passing.