CCI report: f2ac8120-79e8-4b84-b43b-677b87f19912

Request message

{
  "request": "trigger",
  "version": 1,
  "event_type": "patch",
  "repository": {
    "id": "rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5",
    "name": "heartwood",
    "description": "Radicle Heartwood Protocol & Stack",
    "private": false,
    "default_branch": "master",
    "delegates": [
      "did:key:z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT",
      "did:key:z6MktaNvN1KVFMkSRAiN4qK5yvX1zuEEaseeX5sffhzPZRZW",
      "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
      "did:key:z6MkgFq6z5fkF2hioLLSNu1zP2qEL1aHXHZzGH1FLFGAnBGz",
      "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz"
    ]
  },
  "action": "Created",
  "patch": {
    "id": "7a262063f1855368c1b236d31c977cc61cc9867f",
    "author": {
      "id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
      "alias": "fintohaps"
    },
    "title": "radicle/cob/patch: Handle different revision same merge",
    "state": {
      "status": "open",
      "conflicts": []
    },
    "before": "a65ac048cbda3473e7b372375d33e3a357965492",
    "after": "121a403c2d2e8c23ff08e13c982f7fc571436b64",
    "commits": [
      "121a403c2d2e8c23ff08e13c982f7fc571436b64"
    ],
    "target": "a65ac048cbda3473e7b372375d33e3a357965492",
    "labels": [],
    "assignees": [],
    "revisions": [
      {
        "id": "7a262063f1855368c1b236d31c977cc61cc9867f",
        "author": {
          "id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
          "alias": "fintohaps"
        },
        "description": "A case was discovered in the `radicle.xyz`\n(rad:z371PVmDHdjJucejRoRYJcDEvD5pp) repository where two delegates\ncreated two separate revisions with the same merged commit.\nThis patch would remain as open, as shown below:\n\n```\nrad patch show ac2dfce2d3bad6f723e52addbac0d11ba31daa45\n\u256d\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256e\n\u2502 Title    guide: fix broken `Git protocol` link in the Protocol Guide         \u2502\n\u2502 Patch    ac2dfce2d3bad6f723e52addbac0d11ba31daa45                            \u2502\n\u2502 Author   d-hain z6MktZE\u2026yyoKicL                                              \u2502\n\u2502 Head     e4e758484397794fe0cbcd23e994e08d2dccbfc7                            \u2502\n\u2502 Base     7fd72e54a1b7c30926d9aca24ae8f78f7541467f                            \u2502\n\u2502 Commits  ahead 1, behind 59                                                  \u2502\n\u2502 Status   open                                                                \u2502\n\u2502                                                                              \u2502\n\u2502 This fixes the broken [Git protocol](https://git-scm.com/docs/pack-protocol) \u2502\n\u2502 link in the Protocol Guide.                                                  \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502 e4e7584 fix: guide: broken link in protocol guide                            \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502 \u25cf Revision ac2dfce @ 7fd72e5..e4e7584 by d-hain z6MktZE\u2026yyoKicL 4 months ago \u2502\n\u2502 \u2191 Revision 72c18c3 @ 5e3df47..80f96ab by lorenz z6MkkPv\u2026WX5sTEz 4 months ago \u2502\n\u2502   \u2514\u2500 \u2713 merged                         by lorenz z6MkkPv\u2026WX5sTEz              \u2502\n\u2502 \u2191 Revision ad15e90 @ 5e3df47..80f96ab by fintohaps (you) 4 months ago        \u2502\n\u2502   \u2514\u2500 \u2713 merged                         by fintohaps (you)                     \u2502\n\u2570\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u256f\n```\n\nCorrectly handle this case by using the merged commit as the key for\nthe map, and choosing an arbitrary revision as the merged revision if\nmore than one revision agrees.",
        "base": "a65ac048cbda3473e7b372375d33e3a357965492",
        "oid": "121a403c2d2e8c23ff08e13c982f7fc571436b64",
        "timestamp": 1780053866
      }
    ]
  }
}

Send response

{
  "response": "triggered",
  "run_id": {
    "id": "f2ac8120-79e8-4b84-b43b-677b87f19912"
  },
  "info_url": "https://cci.rad.levitte.org//f2ac8120-79e8-4b84-b43b-677b87f19912.html"
}

Checkout the source (in /opt/radcis/ci.rad.levitte.org/cci/state/f2ac8120-79e8-4b84-b43b-677b87f19912/w)

Started at: 2026-05-29 13:24:38.564069+02:00

Commands:

Read the repo configuration (.radicle/native.yaml in /opt/radcis/ci.rad.levitte.org/cci/state/f2ac8120-79e8-4b84-b43b-677b87f19912/w)

shell: 'export RUSTDOCFLAGS=''-D warnings''


  cargo --version

  rustc --version


  cargo fmt --check

  cargo clippy --all-targets --workspace -- --deny warnings

  cargo build --all-targets --workspace

  cargo doc --workspace --no-deps --all-features

  cargo test --workspace --no-fail-fast

  '

Run the script

Commands:

Send result

{
  "response": "finished",
  "result": "success"
}