fix: bound Git worktree failure feedback - #199
Conversation
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 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 |
|
@coderabbitai review |
Rate Limit Exceeded
|
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 head9d578770a9b538867d06e5bbd8c27cd1b184226a. -
Head SHA:
9d578770a9b538867d06e5bbd8c27cd1b184226a -
Workflow run: 32132424129
-
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 (3 files)"]
S1 --> I1["repository behavior"]
I1 --> R1["Review risk: Changed file (3 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 (3 files)"]
S1 --> I1["repository behavior"]
I1 --> R1["Review risk: Changed file (3 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 head9d578770a9b538867d06e5bbd8c27cd1b184226a. -
Head SHA:
9d578770a9b538867d06e5bbd8c27cd1b184226a -
Workflow run: 32138793250
-
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 (3 files)"]
S1 --> I1["repository behavior"]
I1 --> R1["Review risk: Changed file (3 files)"]
R1 --> V1["required checks"]
Dismissing: this REQUEST_CHANGES referenced workflow run 32138793250 where coverage-evidence failed at the same head SHA. coverage-evidence has since been re-run and now reports pass (verified via gh pr checks). No unresolved review threads remain. Re-request review to re-validate.
Pull request was converted to draft
Purpose
Prevent arbitrary thrown frontend/backend exception text, immutable-record persistence detail, and native worktree stop/blocker codes from crossing the Git worktree cleanup desktop boundary while ensuring every blocked, failed, or partially verified state directs the next safe action, without changing Git retention, audit, approval, fingerprint/revalidation, removal, persistence, or filesystem-authority semantics.
Exact current state
9d578770a9b538867d06e5bbd8c27cd1b184226a.main:be418bac9bfbdc8aa41b1a698713833e3dbccfdc.src/lib/GitWorktreeCleanup.svelte;src/lib/gitWorktreeFeedback.ts;src/lib/gitWorktreeErrorPrivacyContract.test.ts.Test-first privacy and recovery repair
f6e6d4c9488564388627987636fc4d336b90500afirst proved the UI projected arbitraryString(e)values for repository selection, read-only audit, and removal execution.3f67363c78b2faa07f59895d2797ebeb48e62a86bounded those three catch paths and retained the accessiblerole="alert"boundary plus unchanged planning/removal calls.result_record_errorwas still rendered after partial/complete execution, and native evidence-gap/stopped-reason codes were shown instead of bounded guidance.2b341f97faba129091edc1ca985b4fd92392304brequires operation-specific next actions, rejects unusedcatch (e)bindings and raw record-error rendering, covers every current evidence-gap and removal-stop code, and verifies unknown/empty values fail closed without reflection.gitWorktreeFeedback.tsmaps native codes to deduplicated customer actions and supplies stable path-free selection, audit, execution, and record-persistence messages.f981d0e44aa1df2c9dab1ae888d37064827b135auses those mappings while preserving deliberately selected worktree paths needed for remediation and removing only raw implementation/error detail.f20218f0d2602baca3dd2d37369ddd11e6aa8345exposed an empty-string fallback defect; current fix9d578770a9b538867d06e5bbd8c27cd1b184226amakes empty, null, and unknown removal stop reasons all produce the same bounded stop-and-recheck action.Git ref retention, read-only planning, explicit approval phrase and rationale, removal-plan fingerprint/revalidation, per-candidate execution checks, branch/commit retention, immutable approval/result records, and filesystem mutation authority remain unchanged.
Exact-head validation
For exact head
9d578770a9b538867d06e5bbd8c27cd1b184226a:31884802040— queued;31884802047— pending;31884802039— queued;31884802049— queued.Queued or pending evidence is not passing, and predecessor-head success does not transfer. Conditional PR-inapplicable publication or attestation helpers are not represented as passing release or provenance evidence.
Scope / non-duplication
This line owns only Git worktree desktop feedback and its focused recovery/privacy contract. It does not import repository-wide coverage #156, generic cleanup #174, canonical documentation #149, or unrelated cloud/provider authority work.
Remaining integration blockers
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, a qualifying independent approval covers the last push/current head, fresh protected-main 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, no-source scanner, or infrastructure-only evidence is not passing.