{
  "$schema": "folio-library-entry/v1",
  "id": "assured-ai-github-programme-requirements-v042",
  "blocks": [
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s001-assured-ai-requirements-for-the-programme-github",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "Assured AI: requirements for the programme GitHub project",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s001-assured-ai-requirements-for-the-programme-github.md",
      "narrative": null,
      "content": "# Assured AI: requirements for the programme GitHub project\n\n**Build specification for an AI agent**\n\n| Document control | Detail |\n|---|---|\n| Purpose | Requirements for an AI agent to set up one shared, organisation-level GitHub Project for the WHO Assured AI project (Gates Foundation grant INV-108130), linked to the workstream projects, with a small restricted repository for sensitive material |\n| Version | 0.4.2 draft, 20 October 2026. Replaces v0.4.1. Changes in section 0 |\n| Status | Approved for a pilot build. The build must not go beyond pre-flight (section 13, step 1) until the decisi",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s002-0-what-changed-from-v0-4-1",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "0. What changed from v0.4.1",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s002-0-what-changed-from-v0-4-1.md",
      "narrative": null,
      "content": "## 0. What changed from v0.4.1\n\nFrom the PM & Architecture Integration's decisions of 20 October 2026 on [litlfred/folio-assistant#2605](https://github.com/litlfred/folio-assistant/issues/2605#issuecomment-6291128158):\n\n| # | Change | Sections |\n|---|---|---|\n| 1 | **WS5 has no repository or project of its own.** WS5 Governance and stewardship is led by the PM & Architecture Integration and managed in the programme project. WS5 features and tasks live in `aai-programme` | 1, 1.1, 4, 5.1 |\n| 2 | **New `aai-platform` repository** for Platform: a cross-cutting technical delivery function supporti",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s003-1-what-the-build-must-achieve",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "1. What the build must achieve",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s003-1-what-the-build-must-achieve.md",
      "narrative": null,
      "content": "## 1. What the build must achieve\n\nWorkstream leads run their own delivery in their own projects. Everyone involved in the programme, including partners and Gates Foundation contacts, sees one shared programme picture: what is planned, when, how healthy delivery is, what depends on what, and what is waiting for WHO review. Only genuinely sensitive material is kept back, in a small restricted repository. The same issue is never copied to make any of this work.\n\nThe two principles the agent must follow:\n\n- **Share operational status and delivery impact; keep sensitive reasoning and internal deli",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s004-1-1-terms-used-in-this-document",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "1.1 Terms used in this document",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s004-1-1-terms-used-in-this-document.md",
      "narrative": null,
      "content": "### 1.1 Terms used in this document\n\n| Term | Meaning |\n|---|---|\n| PM & Architecture Integration | The programme manager role for the project. Referred to as \"the PM\" |\n| Technical Integration Lead | The person who confirms that technical components are ready to integrate and validates them (DP-05) |\n| Workstream (WS1 to WS5) | The five delivery streams of the project, each with its own lead. WS5 Governance and stewardship is led by the PM & Architecture Integration and has no repository or project of its own |\n| Platform | A cross-cutting technical delivery function for shared hosting and en",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s005-2-design-principles",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "2. Design principles",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s005-2-design-principles.md",
      "narrative": null,
      "content": "## 2. Design principles\n\n| ID | Principle |\n|---|---|\n| DP-01 | **Create once, show many times.** One issue can appear in several projects. Never clone an issue to report its status somewhere else. |\n| DP-02 | **Workstream leads own their delivery.** The agent creates programme epics and the workstream template. It does not create features or stories in workstream repositories. |\n| DP-03 | **Programme work is not sprint work.** Sprints are managed inside the workstream projects. The programme project tracks dates, milestones, delivery health and readiness, not sprints. |\n| DP-04 | **Open by de",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s006-3-decisions-needed-before-the-build",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "3. Decisions needed before the build",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s006-3-decisions-needed-before-the-build.md",
      "narrative": null,
      "content": "## 3. Decisions needed before the build\n\nThe agent may carry out step 1 of section 13 (pre-flight) at any time. It must not configure or create anything from step 2 onward until every decision relevant to that step is confirmed. Each decision has a recommended default.\n\n| ID | Decision | Recommended default | Why it matters |\n|---|---|---|---|\n| BD-01 | GitHub organisation | **Decided: the existing World Health Organization organisation, shared with other WHO teams.** Login: `WorldHealthOrganization` (https://github.com/WorldHealthOrganization) | Everything sits in it. Because the organisation",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s007-4-structure",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "4. Structure",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s007-4-structure.md",
      "narrative": null,
      "content": "## 4. Structure\n\n```\nGitHub organisation: WorldHealthOrganization\n│\n├── repo  aai-programme   Shared\n│         Epics, milestones, research questions, dependencies (D-numbers),\n│         decisions (DEC-numbers), assumptions, workstream directory,\n│         automation scripts\n│\n├── repo  aai-pm          Restricted (named WHO staff only); no project\n│         Sensitive notes only (section 6), each linked from the shared issue it relates to\n│\n├── repo  aai-ws1 … aai-ws4, aai-platform\n│         Created by the build once each lead is confirmed; the lead holds Maintain\n│         Features, stories, sp",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s008-5-work-item-taxonomy",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "5. Work item taxonomy",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s008-5-work-item-taxonomy.md",
      "narrative": null,
      "content": "## 5. Work item taxonomy",
      "truncated": false,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s009-5-1-issue-types",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "5.1 Issue types",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s009-5-1-issue-types.md",
      "narrative": null,
      "content": "### 5.1 Issue types\n\n**Shared organisation rule.** The World Health Organization organisation is shared with other WHO teams. Every organisation issue field and every new issue type created for this project is prefixed `AAI`, for example `AAI Workstream` or `AAI Decision`, so it cannot be confused with or collide with another team's. Existing generic issue types (such as Epic, Feature or Task) may be reused if the owners agree. Fields are pinned only to `AAI` issue types, never to shared generic ones, because pinning shows the field on every team's issues of that type. If the owners do not all",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s010-5-2-hierarchy",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "5.2 Hierarchy",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s010-5-2-hierarchy.md",
      "narrative": null,
      "content": "### 5.2 Hierarchy\n\n- Sub-issues represent work breakdown only: Epic, then Feature, then Story or Spike.\n- Research questions are **not** parents of epics. An item links to research questions through the `rq:` labels, which list every question it contributes to, including its primary one. The Primary research question field records the main question only, for grouping. The research question issue holds the question, its sub-questions, the rationale and any narrative summary. View V4 is the authoritative list of contributing items; nobody keeps a second list by hand.\n- Milestone issues are not p",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s011-5-3-fields-shown-on-each-issue-type",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "5.3 Fields shown on each issue type",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s011-5-3-fields-shown-on-each-issue-type.md",
      "narrative": null,
      "content": "### 5.3 Fields shown on each issue type\n\nOrganisation issue fields must be pinned to issue types to appear on the issue form. GitHub allows up to 10 pinned fields per issue type. Pin only these. Fields not pinned to a type can still be set from the project views.\n\n| Issue type | Pinned fields |\n|---|---|\n| Epic | Workstream, Programme status, Delivery health, Pipeline stage, Integration readiness, Gates output, Primary research question, Start date, Target date, Backlog ref |\n| Milestone | Programme status, Delivery health, Gates output, Start date, Target date |\n| Research question | Programm",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s012-6-information-classification",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "6. Information classification",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s012-6-information-classification.md",
      "narrative": null,
      "content": "## 6. Information classification\n\n| Class | Meaning | Where it may appear |\n|---|---|---|\n| Shared | Fine for every partner and Gates Foundation contact to read | Everything in `aai-programme`, the workstream repositories and the programme project |\n| Restricted | Named WHO staff only | `aai-pm` only |\n\nRestricted material is limited to:\n\n- internal deliberations and draft WHO positions not yet agreed\n- escalation notes\n- contractual, funding or personnel matters\n- sensitive security, legal or privacy issues\n- internal review commentary, reviewer details and adjudication reasoning\n\nRules:\n\n- *",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s013-7-fields",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "7. Fields",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s013-7-fields.md",
      "narrative": null,
      "content": "## 7. Fields",
      "truncated": false,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s014-7-1-organisation-issue-fields",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "7.1 Organisation issue fields",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s014-7-1-organisation-issue-fields.md",
      "narrative": null,
      "content": "### 7.1 Organisation issue fields\n\nShared values. Each one is set once on the issue and shows the same value in every project.\n\n| Field | Type | Options or format |\n|---|---|---|\n| Workstream | Single select | WS1 Knowledge graph, WS2 Authoring, WS3 Evaluation, WS4 Localization, WS5 Governance and stewardship, Platform, Cross-workstream |\n| Programme status | Single select | Not started, In progress, In review, Done, Cancelled |\n| Delivery health | Single select | On track, At risk, Blocked |\n| Risk category | Single select | Dependency, Schedule, Technical, Resource, Review, External, Governa",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s015-7-2-project-fields",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "7.2 Project fields",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s015-7-2-project-fields.md",
      "narrative": null,
      "content": "### 7.2 Project fields\n\nThe programme project needs no project-only fields. Do not add project fields that duplicate the section 7.1 fields.",
      "truncated": false,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s016-7-3-labels",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "7.3 Labels",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s016-7-3-labels.md",
      "narrative": null,
      "content": "### 7.3 Labels\n\nCreate these in every repository listed in section 4, except `aai-pm`. Workstream leads should keep them unchanged.\n\n| Label | Meaning |\n|---|---|\n| `rq:R1` to `rq:R7` | Every research question the item contributes to, including the primary one also recorded in the Primary research question field. The labels are the complete record; the field is the main question only |\n| `route:control`, `route:0`, `route:a`, `route:b` | Which comparison routes the item covers |\n| `gates:` plus the output number, one per Gates output | Every Gates output the item contributes to, including the",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s017-7-4-fallback-if-issue-fields-are-unavailable",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "7.4 Fallback if issue fields are unavailable",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s017-7-4-fallback-if-issue-fields-are-unavailable.md",
      "narrative": null,
      "content": "### 7.4 Fallback if issue fields are unavailable\n\nIf BD-05 or BD-06 cannot be met:\n\n1. Create the section 7.1 fields as project fields in the programme project, with identical names and options.\n2. Set values for workstream items in the programme project, not in the workstream projects. Workstream projects keep only their own fields.\n3. Record this in the build report.\n\nDo not mix the two approaches.",
      "truncated": false,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s018-8-views-and-metrics",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "8. Views and metrics",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s018-8-views-and-metrics.md",
      "narrative": null,
      "content": "## 8. Views and metrics",
      "truncated": false,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s019-8-1-assured-ai-programme-views",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "8.1 Assured AI Programme views",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s019-8-1-assured-ai-programme-views.md",
      "narrative": null,
      "content": "### 8.1 Assured AI Programme views\n\nEach view lists its layout, which items it shows, how they are grouped and sorted, and the columns to display.\n\n| ID | View | Layout | Items | Group and sort | Columns |\n|---|---|---|---|---|---|\n| V1 | Master programme | Table | Epics | Group by Workstream; sort by Start date | Title, Programme status, Delivery health, Pipeline stage, Start date, Target date, Gates output, Primary research question, sub-issue progress |\n| V2 | Roadmap | Roadmap | Epics and milestone issues with dates | Group by Workstream; zoom to quarter | Start date, Target date, Programm",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s020-8-2-metrics",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "8.2 Metrics",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s020-8-2-metrics.md",
      "narrative": null,
      "content": "### 8.2 Metrics\n\nUse the project's built-in Insights charts for these. Where a chart cannot be built natively, record that in the build report rather than building a workaround, except for M6.\n\n| ID | Measure | Built from |\n|---|---|---|\n| M1 | Share of epics On track, At risk and Blocked | Delivery health, epics only |\n| M2 | Blocked items by workstream | Delivery health = Blocked, grouped by Workstream |\n| M3 | At-risk or blocked dependencies | Dependency issues with Delivery health At risk or Blocked |\n| M4 | Overdue deliverables | Same filter as V13 |\n| M5 | Integration readiness by pipeli",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s021-8-3-assured-ai-workstream-template",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "8.3 Assured AI Workstream Template",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s021-8-3-assured-ai-workstream-template.md",
      "narrative": null,
      "content": "### 8.3 Assured AI Workstream Template\n\nCreate this as an organisation project template. It contains:\n\n- the issue fields from section 7.1, shown as columns\n- a Sprint iteration field (two weeks)\n- three views: Sprint board (current sprint, grouped by built-in Status), Backlog (table of all open items), and Roadmap\n\nThe template may reuse the views and iteration setup of project 110 (Backlog, Board, Current iteration, Roadmap) by copying it without its draft items. Project 110 itself is not changed. Its six workflows are GitHub defaults.\n\nProject templates do not copy auto-add workflows. The t",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s022-9-dependencies",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "9. Dependencies",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s022-9-dependencies.md",
      "narrative": null,
      "content": "## 9. Dependencies\n\n- **DEP-01.** Ordinary technical dependencies use GitHub's native \"blocked by\" and \"blocking\" relationships between the issues concerned. Workstream teams create these themselves.\n- **DEP-02.** A dependency becomes a D-number issue in `aai-programme` if it is programme-significant: it crosses workstreams or partners and needs a deadline, negotiation, escalation or an assessment of consequences.\n- **DEP-03.** Each D-number issue links to the waiting epic and to what it waits on. Where that is another epic and the relationship is a true blocking dependency, the agent also cre",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s023-10-linking-to-workstream-projects",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "10. Linking to workstream projects",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s023-10-linking-to-workstream-projects.md",
      "narrative": null,
      "content": "## 10. Linking to workstream projects\n\n| ID | Requirement |\n|---|---|\n| LINK-01 | Create a pinned issue in `aai-programme` titled \"Workstream directory\". For each workstream it lists the lead, the repository and the project URL. Leave entries blank until leads supply them. |\n| LINK-02 | The programme project README links to the directory issue and to the Roadmap view (V2). Do not add a separate static roadmap or Gantt chart to the README; V2 is the roadmap, kept current from the epic dates. |\n| LINK-03 | The template README tells leads to link back to Assured AI Programme. |\n| LINK-04 | Workst",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s024-11-automation",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "11. Automation",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s024-11-automation.md",
      "narrative": null,
      "content": "## 11. Automation\n\n| ID | Requirement |\n|---|---|\n| AUTO-01 | Auto-add to the programme project: `aai-programme` issues of type Epic, Milestone, Research question, Dependency, Decision or Assumption, and workstream issues (including WS5 items in `aai-programme`) labelled `thin-slice`, `sprint-demo`, `blocked` or `at-risk`. Other WS5 items stay off the board and still roll up into their epics through sub-issues. The pilot confirms that the auto-add filter can select by issue type; if it cannot, use a GitHub Action and record this. GitHub limits the number of auto-add workflows per project depen",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s025-12-pilot-build",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "12. Pilot build",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s025-12-pilot-build.md",
      "narrative": null,
      "content": "## 12. Pilot build\n\nBefore any bulk import, the agent builds and tests this small set. Use representative Assured AI work items that reflect genuine planned activities, each clearly marked as a pilot. Do not create artificial dependencies between unrelated technical tasks, and do not move or change existing operational work (for example the project 110 items) to test the configuration. After the pilot passes, the project 110 items are reviewed with Ritika and agreed work is brought into the right repositories; where technical work stays in an external repository, the WHO coordination issue lin",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s026-13-build-sequence",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "13. Build sequence",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s026-13-build-sequence.md",
      "narrative": null,
      "content": "## 13. Build sequence\n\n1. **Pre-flight.** Confirm the section 3 decisions are recorded. Inspect existing issue types, issue fields, organisation issue-field headroom, project field counts, projects, teams, repository policies, SSO/EMU constraints and permissions in the organisation. Reuse compatible organisation configuration and do not create anything that duplicates something already there.\n2. **Organisation setup.** An organisation owner creates or reuses the section 5.1 issue types and section 7.1 issue fields. If they cannot, use the section 7.4 fallback.\n3. **Repositories.** Create `aai-",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s027-14-inputs-the-pm-will-provide",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "14. Inputs the PM will provide",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s027-14-inputs-the-pm-will-provide.md",
      "narrative": null,
      "content": "## 14. Inputs the PM will provide\n\n| Input | Used for |\n|---|---|\n| Epics import CSV, with columns for title, epic code, workstream, start date, target date, Gates outputs, research questions and routes. Each workstream lead reviews their workstream's epics before the bulk import | Epics, and the dates that drive the Roadmap view (V2) |\n| Gates outputs list with output months | Milestone issues and Gates output options |\n| Research questions R1 to R7, with sub-questions | Research question issues |\n| Dependency register D01 to D29 | D-number issues in `aai-programme` |\n| Workstream directory d",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s028-15-acceptance-criteria",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "15. Acceptance criteria",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s028-15-acceptance-criteria.md",
      "narrative": null,
      "content": "## 15. Acceptance criteria\n\n| ID | Criterion |\n|---|---|\n| AC-01 | The programme project and the template exist in the agreed organisation, with the agreed access for partners, Gates Foundation contacts and WHO staff |\n| AC-02 | Every view in section 8.1 exists and shows the intended items |\n| AC-03 | The section 7.1 fields are organisation issue fields, and no project field duplicates them (unless the section 7.4 fallback was used) |\n| AC-04 | Every epic from the CSV appears once in V1 |\n| AC-05 | Every Gates output has exactly one milestone issue and one saved filter in V3 |\n| AC-06 | All se",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s029-16-build-report",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "16. Build report",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s029-16-build-report.md",
      "narrative": null,
      "content": "## 16. Build report\n\nThe agent hands back a short report covering:\n\n- the access model used for partners and for Gates Foundation contacts (members or outside collaborators)\n- what was created, what existing organisation configuration was reused, the organisation issue-field headroom and each project's total field count after the build\n- the pass or fail result for each pilot test and acceptance criterion\n- any fallback used, and why\n- permissions that still need an organisation owner\n- every value left empty because it was missing from the inputs",
      "truncated": false,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s030-17-open-points-to-be-confirmed-by-the-pm",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "17. Open points to be confirmed by the PM",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s030-17-open-points-to-be-confirmed-by-the-pm.md",
      "narrative": null,
      "content": "## 17. Open points to be confirmed by the PM\n\n- The start date of the first sprint (S0), used for the Sprint iteration field in the workstream template. Project 110's iteration dates may inform it once checked against the Assured AI programme calendar.\n- The accountable Platform lead, confirmed with Ritika and the relevant technical colleagues, before `aai-platform` access is assigned.\n- Which activities belong to Platform and which to WS1 or the other technical workstreams.\n- If project 110 becomes the Platform board, who owns it (Ritika and the Platform lead to agree).\n- The final Gates outp",
      "truncated": true,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    },
    {
      "id": "library/assured-ai-github-programme-requirements-v042/blocks/prose-s031-18-out-of-scope",
      "types": [
        "folio-assistant-core:Prose",
        "doco:Section"
      ],
      "kind": "prose",
      "title": "18. Out of scope",
      "pageStart": null,
      "pageEnd": null,
      "target": "../sections/s031-18-out-of-scope.md",
      "narrative": null,
      "content": "## 18. Out of scope\n\n- Workstream backlogs, and any views specific to one workstream.\n- A separate private PM project.\n- A separate WS5 repository or project.\n- A partner contribution or partner commitments view.\n- Probability and impact scoring.\n- Importing the PM's existing decision log or the project asset inventory.\n- Making any project or repository public.\n- Changing organisation-wide GitHub security or access policies.",
      "truncated": false,
      "provenance": "ingested",
      "summary": {
        "status": "not-summarised"
      }
    }
  ]
}
