{
  "uid": "cogitave.learn.open-your-first-pull-request.introduction",
  "kind": "moduleUnit",
  "href": "/modules/open-your-first-pull-request/introduction/",
  "title": "Introduction",
  "summary": "",
  "type": null,
  "products": [],
  "roles": [],
  "levels": [],
  "subjects": [],
  "headings": [
    "What a passing first contribution looks like",
    "What you will do"
  ],
  "source": "The earlier modules gave you the rules. This one is where you use them.\nContributing to an AI-native, certification-grade codebase means taking even a\nsmall change all the way to a pull request that a reviewer - or an auditor - can\ntrust: shaped, signed, and documented so it clears a set of mechanical gates\nbefore a human ever looks at it. You will do that once, end to end - the way\nevery contributor and agent does it in Cogitave's estate, the worked example this\ncapstone uses.\n\nNothing here is new policy. It is a non-negotiable floor (Cogitave's is written\nin [AGENTS.md](../../../../../AGENTS.md)), the ruleset a repository inherits from\nits project baseline, and the propose-only request lifecycle you already worked -\napplied to one concrete commit.\n\n## What a passing first contribution looks like\n\nFour things have to be true before your pull request is ready for review. None of\nthem is optional, and each is checked mechanically. Here is how Cogitave's estate\nenforces them - your own org wires up the same four guarantees its own way:\n\n| Requirement | Enforced by |\n| --- | --- |\n| The commit message is a Conventional Commit | commitlint, in the hook **and** in CI |\n| The commit is SSH-signed and shows as Verified | the org branch ruleset |\n| No secret is committed; files are formatted | pre-commit hooks, then CI |\n| Code changes ship with doc changes | the `docs-required` CI gate |\n\n> [!IMPORTANT]\n> You author and open the PR. You do **not** merge it. In an AI-native org agents\n> propose and humans enact - merge, apply, and release stay human gates (in\n> Cogitave's floor, [AGENTS.md](../../../../../AGENTS.md), non-negotiable rules\n> 6-7). Opening the PR is the finish line for this module.\n\n## What you will do\n\nThe next two units walk the two halves of the job. First you will write and sign\na single Conventional Commit. Then you will let the gates run, satisfy docs-as-code,\nand open the pull request. By the end you will be able to make a contribution that\npasses every gate on the first try, and know exactly which check is speaking when\none does not.\n",
  "partOf": "cogitave.learn.open-your-first-pull-request",
  "durationInMinutes": 3,
  "quiz": null
}