<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/56674>56674</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Create a minimal CI that validates tree before merge
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          rengolin
      </td>
    </tr>
</table>

<pre>
    This isn't necessary about passing tests or repeating the buildbot infrastructure, but about making sure the merge works across all projects.

The LLVM monorepo is a collection of sub-projects that not all people work together and most of us don't build all projects even during the tougher tests we do. Having a simple build of all components and some sanity checks on CMake structure (ex. a mock project using LLVM, like a standalone MLIR dialect, or a clang-tool using the CMake stuff) would go a long way of ensuring that at least we didn't break anything obvious for other people with our commits.

We should also make checks on license headers, contribution agreements or whatever legal stuff that is too easy to forget about and too easy to automate as a pre-commit CI in GH.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxVVMlu2zAQ_RrpMojhaPFy0CF1kSZAcimC9kxJI4k1xTFIyq7_vo-y1aYAAVmambdx4Fraa_UxaE_a2yTbBrLcsPfKXUnVMgU6Ke-17SmwD57EkeMTqzB_GpjqSZu2lkDadk754KYmTI6T7IBSuGOM6hj7PQrz0MiuZ7qIO3pSjROPhzF0cvKLm-BXyfoJ5wOdb28_3mkUK2AVaCRFjRiDLi2WpANm_bDMAVvBAMTMaCwnc2OhID2D2JGyLeB8iKOTp1ZupmcX_2kgPrOldnKL0SBTHxFuOVwYsyt6UedYV-T1GMluOMCOUI2MJ7Fs0R5pvYxMXlkdrtQM3MA7LBze1RGfl9woyXb8ewXEUZrjogZSI00MIwZrNEbAGQCrDCjo_e31O7VaxWBiB64JQRll-4cgYu7z0cbCN3Vdku2RzgTBvaAdQD1d1DXKZ-sX50gUxzDudnat23tkjtURxq5hiI1Sn7Ug0Q7UMke95K_DQDK5GMeo_17uT4gYZnJlvMQN4U-pGN1AAtPAqmXno6VGbHAaOxUvXvWOeZyjBd8FInFdDip7ZW7mbsqxMPBPEH_FjygOe3Bfyngnn4tqCjICiFTcspPjh5tiOrxiuenbyyptq7zd53uVBh0MVwdEEPtp1FaPYEbnTHtWRrcogR06qWYQ37c-nZyphhBOPsmfkuwZp0dCU70CG16MOS-PZa_xqr2fGDE8l5vNtkiHqmh25bbb7x6LouvyetN2OW-bJsvrYrcrd2VqVM3GV0n5JSm_prrK1lm23mbZY1bmebHa1495uys3hdrnKms4KdY8Km1WkXiFmFJXzRrqqfcoGo2t_1eM_wm9ZV7wkd0grnJsezHaprPeahb7B_oMiwA">