CCI report: 036d6d4c-fda8-4415-8f6a-9392d3fb1914

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": "Updated",
  "patch": {
    "id": "76d48a1bcaa2d181bca3a5729772b981c4836db2",
    "author": {
      "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
      "alias": "2color"
    },
    "title": "radicle: Reject COB changes with forged identity",
    "state": {
      "status": "open",
      "conflicts": []
    },
    "before": "28f740cb8a35db69e1ee8c689e2dab786334153f",
    "after": "3641490ce29e87f39cc5232b25117278849927b3",
    "commits": [
      "3641490ce29e87f39cc5232b25117278849927b3",
      "625bc1f8803edafcb77584823f112bcd1d453ff7"
    ],
    "target": "28f740cb8a35db69e1ee8c689e2dab786334153f",
    "labels": [],
    "assignees": [],
    "revisions": [
      {
        "id": "76d48a1bcaa2d181bca3a5729772b981c4836db2",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "Each COB change names an identity commit in its `Rad-Resource`\ntrailer. Patches and issues check the rights of the author against the\ndocument in that commit. Nothing checked that the commit is a revision\nof the repository identity. Any user could write a commit with a\ndocument that names them as a delegate, cite it, and act as a delegate.\n\n- Add `ReadRepository::identity_revision_doc`, which loads the identity\n  COB and returns the document of an accepted revision only\n- Use it in `Op::identity_doc`, so a change with any other resource\n  gets no identity document and is rejected\n\nHonest clients cite the identity head, which is an accepted revision,\nso honest COBs evaluate the same.\n\nNote: A removed delegate can still cite an older revision that names\nthem. This fix does not stop that.",
        "base": "3032ba1298c3ef21f14cb5f1146e29882f368997",
        "oid": "5dca64fea74173c5d003e8f3ccbf45b459059c52",
        "timestamp": 1791971683
      },
      {
        "id": "47b9aa62856cbde178deb87c71ad95df0c209df8",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "",
        "base": "81d79077d07c4e3ce88d75c8b51f31a780e61625",
        "oid": "20f972b08ee7e7023b0b89169c1c7ca8556b9d35",
        "timestamp": 1792149732
      },
      {
        "id": "e6f04c587ceb883ac96229528900b65fff27c5a6",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "",
        "base": "81d79077d07c4e3ce88d75c8b51f31a780e61625",
        "oid": "17a42e774a73e970ee1f168894bfc331018679df",
        "timestamp": 1792156582
      },
      {
        "id": "dd6f8a7d0f05fa3ae0f316226becf69693e539e5",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "radicle: Warn that identity_doc_at trusts commit\n\n- Document that `identity_doc_at` does not check the commit\n- Point untrusted callers to `identity_revision_doc`",
        "base": "81d79077d07c4e3ce88d75c8b51f31a780e61625",
        "oid": "7753cbf92817ffaea77b620d827926c0a30fb9d6",
        "timestamp": 1792160574
      },
      {
        "id": "2d50be52fcf58c90d2e612bd2b0dd4db5e034a1f",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "radicle: Walk accepted identity chain from rad/id\n\n- Find accepted revisions by following each revision's parent back from\n  `rad/id`, instead of loading the whole identity COB per change\n- Test that only accepted revisions are returned\n\nAccepted revisions form a chain, because a revision is only adopted if\nits parent is the current revision. Changes that cite the identity head\nnow cost one blob read again.",
        "base": "81d79077d07c4e3ce88d75c8b51f31a780e61625",
        "oid": "18285d2ff6b7414d9900e4662da84e5a95299720",
        "timestamp": 1792161198
      },
      {
        "id": "c062c2ba0f35ba4c12fd90aee47231bf9fa26300",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "",
        "base": "81d79077d07c4e3ce88d75c8b51f31a780e61625",
        "oid": "d2d29b60da6965cd9720a153c227457fd44ed84e",
        "timestamp": 1792161419
      },
      {
        "id": "09f574e05278ac7d327b1437fd5004d3e2ba66aa",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "radicle: Test resources ahead of local rad/id\n\n- Add failing tests for delegate changes that cite an accepted\n  identity revision the local `rad/id` does not reach yet\n- Cover a non-root change, which is dropped, and a root change, which\n  makes the whole patch fail to load\n- Show that evaluation now depends on the local identity head",
        "base": "81d79077d07c4e3ce88d75c8b51f31a780e61625",
        "oid": "95f356325bc68b201610134845e863acbcf433cb",
        "timestamp": 1792162610
      },
      {
        "id": "0a2e5a2d1fa3a474de45596031ffe58be53d26d2",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "",
        "base": "81d79077d07c4e3ce88d75c8b51f31a780e61625",
        "oid": "6f76bdca5d59de6b827b23e8deb9d2d999ab4c35",
        "timestamp": 1792163864
      },
      {
        "id": "9a8d9ffdd946fdbe61534cdba22067fe434d9f21",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "",
        "base": "81d79077d07c4e3ce88d75c8b51f31a780e61625",
        "oid": "d2957e4b9536f78c57872c62786ff67e6614659c",
        "timestamp": 1792164210
      },
      {
        "id": "d049d74e29b31855ac2a31afe82b202e1c0c0206",
        "author": {
          "id": "did:key:z6MktwkohCx8aHZ1QCjVZUiLmX92oPZFxRiFZkbq32Tk5Tkm",
          "alias": "2color"
        },
        "description": "",
        "base": "28f740cb8a35db69e1ee8c689e2dab786334153f",
        "oid": "3641490ce29e87f39cc5232b25117278849927b3",
        "timestamp": 1792393176
      }
    ]
  }
}

Send response

{
  "response": "triggered",
  "run_id": {
    "id": "036d6d4c-fda8-4415-8f6a-9392d3fb1914"
  },
  "info_url": "https://cci.rad.levitte.org//036d6d4c-fda8-4415-8f6a-9392d3fb1914.html"
}

Checkout the source (in /opt/radcis/ci.rad.levitte.org/cci/state/036d6d4c-fda8-4415-8f6a-9392d3fb1914/w)

Started at: 2026-10-19 08:59:54.595535+02:00

Commands:

Read the repo configuration (.radicle/native.yaml in /opt/radcis/ci.rad.levitte.org/cci/state/036d6d4c-fda8-4415-8f6a-9392d3fb1914/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"
}