CCI report: 8bf9afda-425b-4aa0-8a88-5f7ea2f2237d

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:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
      "did:key:z6MkkPvBfjP4bQmco5Dm7UGsX2ruDBieEHi8n9DVJWX5sTEz"
    ]
  },
  "action": "Created",
  "patch": {
    "id": "323fd0061f0944efdaa354a92a2fa2bea2df6a1f",
    "author": {
      "id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
      "alias": null
    },
    "title": "radicle: fault tolerant thresholds",
    "state": {
      "status": "merged",
      "conflicts": []
    },
    "before": "2b9a014243b83c5955e529291c242727d363600d",
    "after": "9ed1ce60fa3ed1f8f7caa5bcf79cbf0e9b43162f",
    "commits": [
      "9ed1ce60fa3ed1f8f7caa5bcf79cbf0e9b43162f"
    ],
    "target": "d285eccb23f3986bfa88fc1af033e6dcb0dc3a65",
    "labels": [],
    "assignees": [],
    "revisions": [
      {
        "id": "323fd0061f0944efdaa354a92a2fa2bea2df6a1f",
        "author": {
          "id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
          "alias": null
        },
        "description": "There are two areas where we can be more tolerant of delegate namespaces\nbeing missing or not validating:\n1. Calculating the canonical HEAD\n2. Fetching from a remote\n\nIn 1. the protocol is tolerant in that if the local node does not have\nthe default branch for a delegate, it will still attempt to use any of\nthe delegates it does have to reach the threshold.\n\nThis is made safe by ensuring that if the threshold is being updated\nthen the node performing the update must have a threshold of delegates\nlocally in their storage. It also made safe by 2.\n\nIn 2. the protocol is tolerant by allowing delegates to be missing\nfrom the serving side, as long as they can still meet a threshold of\ndelegates. This is further tolerant, when validating the received\ndata, a threshold of delegates are valid to consider the fetch\nsuccessful -- otherwise it will fail.",
        "base": "081af03362b5bd3d637ee22011a4e5b51a1f1498",
        "oid": "17eee01c20eb44ae2e9313baf633026a3a550908",
        "timestamp": 1711651698
      },
      {
        "id": "a1d605a085a7ce101d08d0f6ef2a31c5f1b57307",
        "author": {
          "id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
          "alias": null
        },
        "description": "Changes:\n- rebased on latest\n- fix documentation\n- fix error naming and display message\n- rename warnings/failures to validations",
        "base": "2b9a014243b83c5955e529291c242727d363600d",
        "oid": "9ed1ce60fa3ed1f8f7caa5bcf79cbf0e9b43162f",
        "timestamp": 1712139437
      },
      {
        "id": "a396a9411bf179b4da99771ec5f301eb8e6affbf",
        "author": {
          "id": "did:key:z6MkireRatUThvd3qzfKht1S44wpm4FEWSSa4PRMTSQZ3voM",
          "alias": null
        },
        "description": "Rebase.",
        "base": "7e13e0759fb66fd91d71be3b88c9c5688407ec9c",
        "oid": "cd9b46fe5105c822223f68687d1a124951d6fb3b",
        "timestamp": 1712147488
      }
    ]
  }
}

Send response

{
  "response": "triggered",
  "run_id": {
    "id": "8bf9afda-425b-4aa0-8a88-5f7ea2f2237d"
  },
  "info_url": "https://cci.rad.levitte.org//8bf9afda-425b-4aa0-8a88-5f7ea2f2237d.html"
}

Checkout the source (in /opt/radcis/ci.rad.levitte.org/cci/state/8bf9afda-425b-4aa0-8a88-5f7ea2f2237d/w)

Started at: 2026-09-07 20:10:59.233948+02:00

Commands:

Read the repo configuration (.radicle/native.yaml in /opt/radcis/ci.rad.levitte.org/cci/state/8bf9afda-425b-4aa0-8a88-5f7ea2f2237d/w)

shell: 'cargo --version

  rustc --version


  cargo fmt --check

  cargo clippy --all-targets --workspace -- --deny clippy::all

  cargo build --all-targets --workspace

  cargo doc --workspace

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

  '

Run the script

Commands:

Send result

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