OXYGENHUB

A conflicted proposal says how to resolve it 1e23d0105921

The blocker names the next step: merge the target into the source,
fix the marked files, commit and push.

refs oxygen#42
Author
Andy McCall @andymccall <[email protected]>
When
· 2026-09-30 13:52 UTC
Signature
✔ signed by Andy McCall
Hash
1e23d0105921f536b1cf0483972849e0255efeb89b7f53656e36d2a8839ca14d
Depends on
de505df5cf8d
Depended on by
dd0788b756f2
In bookmarks
api-unknown-fields cancel-landed-runs clear-waiting close-proposal-140 diffusion-pin-bookmark draft-ready image-check job-waits main oh-comment-body-file proposal-list-fast run-one-job wiki-says-so
In tags
v0.1.0 v0.2.0 v0.3.0 v0.3.1 v0.4.0 v0.4.1 v0.4.2 v0.5.0 v0.5.1 v0.5.2 v0.6.0 v0.6.1 v0.7.0 v0.8.0 v0.9.0 v0.9.1 v0.9.11 v0.9.15 v0.9.16 v0.9.19 v0.9.2 v0.9.20 v0.9.21 v0.9.22 v0.9.23 v0.9.24 v0.9.3 v0.9.4 v0.9.5 v0.9.6 v0.9.7 v0.9.8 v0.9.9
Edits
2 atoms, 0 tree operations, 1 file

Browse the tree at this change

modified crates/hub/src/web/proposals.rs +4 −1
…
405 unchanged lines
406 406
        }
407 407
    }
408 408
    if loaded.conflicted && !requirements.allow_conflicts {
409 -
        blockers.push("landing would carry conflicts, which this repository refuses".into());
409 +
        blockers.push(format!(
410 +
            "landing would carry conflicts, which this repository refuses: resolve them on the source (oxy merge {} there, fix the marked files, oxy commit, push)",
411 +
            loaded.row.target
412 +
        ));
410 413
    }
411 414
    let requesting: Vec<&String> = latest.iter().filter(|(_, r)| r.verdict == "changes").map(|(who, _)| who).collect();
412 415
    if !requesting.is_empty() {
…
526 unchanged lines