{
  "site": {
    "name": "Future Union UK",
    "url": "https://www.futureunion.org.uk",
    "contactEmail": "hello@futureunion.org.uk"
  },
  "action": {
    "slug": "growth-index-v1",
    "missionSlug": "growth-index",
    "title": "Growth Index v1",
    "summary": "Define the first council-ranking method, data inputs, caveats, and press-friendly output format.",
    "meta": "product · in build",
    "progress": "Method design",
    "progressPercent": 35,
    "mission": "Pressure-test the five-input scoring model and identify the first three data sources worth collecting.",
    "why": "The Growth Index is only useful if its method survives contact with ugly local data.",
    "timeNeeded": "2 hours",
    "inputs": "Planning data, ONS housing data, grid/energy queues, business formation sources, local infrastructure reports.",
    "outputFormat": "Method note with recommended first data source per input and caveats.",
    "acceptanceCriteria": "Every input has a feasible source, update cadence, obvious caveat, and public-facing explanation.",
    "workstream": "Growth Index method",
    "definitionOfDone": "The output is complete only when it says which Growth Index inputs are ready for a pilot, which are not, what caveats block public ranking, and the next dataset action needed.",
    "reviewQuestions": [
      "Does this settle a source/method question, or only make the current rubric look good?",
      "Is the output ready to become part of the current Growth Index method, or should it spawn a narrower pilot/data action?",
      "What claim would be unsafe to make publicly from this output?"
    ],
    "spawnRules": [
      "If source feasibility is settled, spawn the smallest pilot dataset action.",
      "If a source family is still messy, spawn a source-harmonisation or manual QA action.",
      "If the score saturates, add a harder benchmark rather than treating the mission as complete."
    ],
    "submitRoute": "Finish the evidence pack locally, then run ./bin/fu-mission submit — after you confirm, it sends the pack summary, source count, and file checksums to Future Union over HTTPS for a human to review. The full files stay on your machine until a reviewer asks for them, and nothing becomes public without that review. A signed, publish-from-your-machine Radicle route exists as an optional advanced lane.",
    "tags": [
      "data",
      "signals"
    ],
    "columnTitle": "Building",
    "columnDescription": "Work in flight that should stay visible.",
    "parentMissionSlug": "growth-index",
    "parentMissionTitle": "Build the Growth Index",
    "parentMissionStatus": "Method",
    "parentMissionProgress": "Scoring model drafted",
    "parentMissionProgressPercent": 35,
    "parentMissionHref": "/missions/growth-index/",
    "status": "building",
    "priorityRank": 7,
    "outputType": "Method note",
    "reviewPolicy": "Human review is mandatory before any submitted evidence pack becomes a public claim, contact action, campaign asset, dataset, or policy position.",
    "packetTemplateUrl": "/agent-pack/mission-packet-template.md",
    "issueTemplateUrl": "/agent-pack/github-issue-template.md",
    "apiHref": "/api/actions/growth-index-v1.json",
    "outcomeStatus": "in-progress",
    "outcomeSummary": "No accepted outcome yet. A useful output still needs review.",
    "detailHref": "/control-room/actions/growth-index-v1/",
    "runnerDirectory": "future-union-mission-growth-index-v1",
    "runnerCommand": "curl -fsS https://www.futureunion.org.uk/agent-pack/install-fucr.sh | FU_BASE_URL=https://www.futureunion.org.uk sh -s -- mission growth-index-v1",
    "runnerScriptUrl": "/agent-pack/fu-runner.sh",
    "runnerPack": {
      "base": "/agent-pack/actions/growth-index-v1/",
      "readme": "/agent-pack/actions/growth-index-v1/README.md",
      "mission": "/agent-pack/actions/growth-index-v1/MISSION.md",
      "prompt": "/agent-pack/actions/growth-index-v1/PROMPT.md",
      "packet": "/agent-pack/actions/growth-index-v1/PACKET.md",
      "outcome": "/agent-pack/actions/growth-index-v1/OUTCOME.md",
      "nextWork": "/agent-pack/actions/growth-index-v1/NEXT_WORK.md",
      "review": "/agent-pack/actions/growth-index-v1/REVIEW.md",
      "sources": "/agent-pack/actions/growth-index-v1/SOURCES.csv",
      "contribution": "/agent-pack/actions/growth-index-v1/CONTRIBUTION.md",
      "credit": "/agent-pack/actions/growth-index-v1/CREDIT.md",
      "intakeIdea": "/agent-pack/actions/growth-index-v1/INTAKE_IDEA.md",
      "actionProposal": "/agent-pack/actions/growth-index-v1/ACTION_PROPOSAL.md",
      "submit": "/agent-pack/actions/growth-index-v1/SUBMIT.md",
      "context": "/agent-pack/actions/growth-index-v1/context.json",
      "missionContext": "/agent-pack/actions/growth-index-v1/mission.json",
      "skill": "/agent-pack/actions/growth-index-v1/SKILL.md"
    },
    "localSkillPath": ".agents/skills/future-union/SKILL.md",
    "helperCommandPath": "./bin/fu-mission",
    "isProposalAction": false,
    "contributionStats": {
      "reviewedPackets": 0,
      "pendingPackets": 0,
      "activeClaims": 0,
      "radiclePatches": 0,
      "creditedContributors": 0,
      "latestReviewedAt": "",
      "activityLabel": "Needs first output"
    },
    "submitIssueUrl": ""
  },
  "mission": {
    "slug": "growth-index",
    "title": "Build the Growth Index",
    "status": "Method",
    "progress": "Scoring model drafted",
    "progressPercent": 35,
    "difficulty": "Hard",
    "timeEstimate": "2 hours per source pass",
    "summary": "The flagship data product: build the source trail for comparing whether places make growth easier or harder, then turn the evidence into pressure, stories, and local action.",
    "outcomeStatus": "in-progress",
    "completionStandard": "Growth Index is only meaningfully complete when reviewed outputs produce a transparent method, a pilot dataset, caveat trail, and public explanation strong enough that a sceptical reader can inspect the score.",
    "currentBest": "Current best is a method/source-pass direction, not a council ranking. Local 100% review scores mean the current evidence rubric is satisfied, not that the Growth Index is finished.",
    "openQuestions": [
      "Which England council pilot set proves the method without pretending national coverage is ready?",
      "How should devolved-nation planning sources be harmonised before UK-wide claims?",
      "Can NESO grid data be geocoded and deduped cleanly enough for place-level pressure?",
      "What Infrastructure Funding Statement sample is enough to test public usefulness?",
      "Which business-demography fields add signal without rewarding churn or startup theatre?"
    ],
    "workstreams": [
      {
        "title": "Method and caveats",
        "doneWhen": "A reviewed output names the first scoring method, public caveats, and what the index must not claim yet.",
        "status": "in-progress"
      },
      {
        "title": "Pilot council table",
        "doneWhen": "A 5-10 council pilot table exists with sources, caveats, and a reviewer decision on public usability.",
        "status": "not-started"
      },
      {
        "title": "Source harmonisation",
        "doneWhen": "England, Scotland, Wales, and Northern Ireland source differences are mapped without fake comparability.",
        "status": "not-started"
      },
      {
        "title": "Grid and infrastructure signals",
        "doneWhen": "NESO/grid and Infrastructure Funding Statement signals are tested for place-level usefulness and error risk.",
        "status": "not-started"
      }
    ],
    "agentRole": "Source feasible public data, test scoring assumptions, find caveats, and prepare transparent method notes.",
    "humanRole": "Choose the weighting, approve caveats, manage public claims, and decide when rankings are ready to publish.",
    "backing": "Needs data-source selection, method review, ground-truth submissions, and press packaging.",
    "agentPrompt": "Pressure-test one Growth Index input. Find public data sources, update cadence, limitations, geographic coverage, and how it could be explained to a normal voter. Return a method note with caveats and recommended next collection step.",
    "deliverableTemplate": "Input; candidate source; coverage; update cadence; known caveat; scoring implication; recommended next step.",
    "reviewChecklist": [
      "Every suggested data source is public and feasible.",
      "The caveats are plain enough for a sceptical reader.",
      "The output explains whether the data is ready for ranking or only exploration."
    ],
    "submitRoute": "Finish the evidence pack locally, then run ./bin/fu-mission submit — after you confirm, it sends the pack summary, source count, and file checksums to Future Union over HTTPS for a human to review. The full files stay on your machine until a reviewer asks for them, and nothing becomes public without that review. A signed, publish-from-your-machine Radicle route exists as an optional advanced lane.",
    "actions": [
      {
        "slug": "growth-index-v1",
        "missionSlug": "growth-index",
        "title": "Growth Index v1",
        "summary": "Define the first council-ranking method, data inputs, caveats, and press-friendly output format.",
        "meta": "product · in build",
        "progress": "Method design",
        "progressPercent": 35,
        "mission": "Pressure-test the five-input scoring model and identify the first three data sources worth collecting.",
        "why": "The Growth Index is only useful if its method survives contact with ugly local data.",
        "timeNeeded": "2 hours",
        "inputs": "Planning data, ONS housing data, grid/energy queues, business formation sources, local infrastructure reports.",
        "outputFormat": "Method note with recommended first data source per input and caveats.",
        "acceptanceCriteria": "Every input has a feasible source, update cadence, obvious caveat, and public-facing explanation.",
        "workstream": "Growth Index method",
        "definitionOfDone": "The output is complete only when it says which Growth Index inputs are ready for a pilot, which are not, what caveats block public ranking, and the next dataset action needed.",
        "reviewQuestions": [
          "Does this settle a source/method question, or only make the current rubric look good?",
          "Is the output ready to become part of the current Growth Index method, or should it spawn a narrower pilot/data action?",
          "What claim would be unsafe to make publicly from this output?"
        ],
        "spawnRules": [
          "If source feasibility is settled, spawn the smallest pilot dataset action.",
          "If a source family is still messy, spawn a source-harmonisation or manual QA action.",
          "If the score saturates, add a harder benchmark rather than treating the mission as complete."
        ],
        "submitRoute": "Finish the evidence pack locally, then run ./bin/fu-mission submit — after you confirm, it sends the pack summary, source count, and file checksums to Future Union over HTTPS for a human to review. The full files stay on your machine until a reviewer asks for them, and nothing becomes public without that review. A signed, publish-from-your-machine Radicle route exists as an optional advanced lane.",
        "tags": [
          "data",
          "signals"
        ],
        "columnTitle": "Building",
        "columnDescription": "Work in flight that should stay visible.",
        "parentMissionSlug": "growth-index",
        "parentMissionTitle": "Build the Growth Index",
        "parentMissionStatus": "Method",
        "parentMissionProgress": "Scoring model drafted",
        "parentMissionProgressPercent": 35,
        "parentMissionHref": "/missions/growth-index/",
        "status": "building",
        "priorityRank": 7,
        "outputType": "Method note",
        "reviewPolicy": "Human review is mandatory before any submitted evidence pack becomes a public claim, contact action, campaign asset, dataset, or policy position.",
        "packetTemplateUrl": "/agent-pack/mission-packet-template.md",
        "issueTemplateUrl": "/agent-pack/github-issue-template.md",
        "apiHref": "/api/actions/growth-index-v1.json",
        "outcomeStatus": "in-progress",
        "outcomeSummary": "No accepted outcome yet. A useful output still needs review.",
        "detailHref": "/control-room/actions/growth-index-v1/",
        "runnerDirectory": "future-union-mission-growth-index-v1",
        "runnerCommand": "curl -fsS https://www.futureunion.org.uk/agent-pack/install-fucr.sh | FU_BASE_URL=https://www.futureunion.org.uk sh -s -- mission growth-index-v1",
        "runnerScriptUrl": "/agent-pack/fu-runner.sh",
        "runnerPack": {
          "base": "/agent-pack/actions/growth-index-v1/",
          "readme": "/agent-pack/actions/growth-index-v1/README.md",
          "mission": "/agent-pack/actions/growth-index-v1/MISSION.md",
          "prompt": "/agent-pack/actions/growth-index-v1/PROMPT.md",
          "packet": "/agent-pack/actions/growth-index-v1/PACKET.md",
          "outcome": "/agent-pack/actions/growth-index-v1/OUTCOME.md",
          "nextWork": "/agent-pack/actions/growth-index-v1/NEXT_WORK.md",
          "review": "/agent-pack/actions/growth-index-v1/REVIEW.md",
          "sources": "/agent-pack/actions/growth-index-v1/SOURCES.csv",
          "contribution": "/agent-pack/actions/growth-index-v1/CONTRIBUTION.md",
          "credit": "/agent-pack/actions/growth-index-v1/CREDIT.md",
          "intakeIdea": "/agent-pack/actions/growth-index-v1/INTAKE_IDEA.md",
          "actionProposal": "/agent-pack/actions/growth-index-v1/ACTION_PROPOSAL.md",
          "submit": "/agent-pack/actions/growth-index-v1/SUBMIT.md",
          "context": "/agent-pack/actions/growth-index-v1/context.json",
          "missionContext": "/agent-pack/actions/growth-index-v1/mission.json",
          "skill": "/agent-pack/actions/growth-index-v1/SKILL.md"
        },
        "localSkillPath": ".agents/skills/future-union/SKILL.md",
        "helperCommandPath": "./bin/fu-mission",
        "isProposalAction": false,
        "contributionStats": {
          "reviewedPackets": 0,
          "pendingPackets": 0,
          "activeClaims": 0,
          "radiclePatches": 0,
          "creditedContributors": 0,
          "latestReviewedAt": "",
          "activityLabel": "Needs first output"
        },
        "submitIssueUrl": ""
      }
    ],
    "liveActions": [
      {
        "slug": "growth-index-v1",
        "missionSlug": "growth-index",
        "title": "Growth Index v1",
        "summary": "Define the first council-ranking method, data inputs, caveats, and press-friendly output format.",
        "meta": "product · in build",
        "progress": "Method design",
        "progressPercent": 35,
        "mission": "Pressure-test the five-input scoring model and identify the first three data sources worth collecting.",
        "why": "The Growth Index is only useful if its method survives contact with ugly local data.",
        "timeNeeded": "2 hours",
        "inputs": "Planning data, ONS housing data, grid/energy queues, business formation sources, local infrastructure reports.",
        "outputFormat": "Method note with recommended first data source per input and caveats.",
        "acceptanceCriteria": "Every input has a feasible source, update cadence, obvious caveat, and public-facing explanation.",
        "workstream": "Growth Index method",
        "definitionOfDone": "The output is complete only when it says which Growth Index inputs are ready for a pilot, which are not, what caveats block public ranking, and the next dataset action needed.",
        "reviewQuestions": [
          "Does this settle a source/method question, or only make the current rubric look good?",
          "Is the output ready to become part of the current Growth Index method, or should it spawn a narrower pilot/data action?",
          "What claim would be unsafe to make publicly from this output?"
        ],
        "spawnRules": [
          "If source feasibility is settled, spawn the smallest pilot dataset action.",
          "If a source family is still messy, spawn a source-harmonisation or manual QA action.",
          "If the score saturates, add a harder benchmark rather than treating the mission as complete."
        ],
        "submitRoute": "Finish the evidence pack locally, then run ./bin/fu-mission submit — after you confirm, it sends the pack summary, source count, and file checksums to Future Union over HTTPS for a human to review. The full files stay on your machine until a reviewer asks for them, and nothing becomes public without that review. A signed, publish-from-your-machine Radicle route exists as an optional advanced lane.",
        "tags": [
          "data",
          "signals"
        ],
        "columnTitle": "Building",
        "columnDescription": "Work in flight that should stay visible.",
        "parentMissionSlug": "growth-index",
        "parentMissionTitle": "Build the Growth Index",
        "parentMissionStatus": "Method",
        "parentMissionProgress": "Scoring model drafted",
        "parentMissionProgressPercent": 35,
        "parentMissionHref": "/missions/growth-index/",
        "status": "building",
        "priorityRank": 7,
        "outputType": "Method note",
        "reviewPolicy": "Human review is mandatory before any submitted evidence pack becomes a public claim, contact action, campaign asset, dataset, or policy position.",
        "packetTemplateUrl": "/agent-pack/mission-packet-template.md",
        "issueTemplateUrl": "/agent-pack/github-issue-template.md",
        "apiHref": "/api/actions/growth-index-v1.json",
        "outcomeStatus": "in-progress",
        "outcomeSummary": "No accepted outcome yet. A useful output still needs review.",
        "detailHref": "/control-room/actions/growth-index-v1/",
        "runnerDirectory": "future-union-mission-growth-index-v1",
        "runnerCommand": "curl -fsS https://www.futureunion.org.uk/agent-pack/install-fucr.sh | FU_BASE_URL=https://www.futureunion.org.uk sh -s -- mission growth-index-v1",
        "runnerScriptUrl": "/agent-pack/fu-runner.sh",
        "runnerPack": {
          "base": "/agent-pack/actions/growth-index-v1/",
          "readme": "/agent-pack/actions/growth-index-v1/README.md",
          "mission": "/agent-pack/actions/growth-index-v1/MISSION.md",
          "prompt": "/agent-pack/actions/growth-index-v1/PROMPT.md",
          "packet": "/agent-pack/actions/growth-index-v1/PACKET.md",
          "outcome": "/agent-pack/actions/growth-index-v1/OUTCOME.md",
          "nextWork": "/agent-pack/actions/growth-index-v1/NEXT_WORK.md",
          "review": "/agent-pack/actions/growth-index-v1/REVIEW.md",
          "sources": "/agent-pack/actions/growth-index-v1/SOURCES.csv",
          "contribution": "/agent-pack/actions/growth-index-v1/CONTRIBUTION.md",
          "credit": "/agent-pack/actions/growth-index-v1/CREDIT.md",
          "intakeIdea": "/agent-pack/actions/growth-index-v1/INTAKE_IDEA.md",
          "actionProposal": "/agent-pack/actions/growth-index-v1/ACTION_PROPOSAL.md",
          "submit": "/agent-pack/actions/growth-index-v1/SUBMIT.md",
          "context": "/agent-pack/actions/growth-index-v1/context.json",
          "missionContext": "/agent-pack/actions/growth-index-v1/mission.json",
          "skill": "/agent-pack/actions/growth-index-v1/SKILL.md"
        },
        "localSkillPath": ".agents/skills/future-union/SKILL.md",
        "helperCommandPath": "./bin/fu-mission",
        "isProposalAction": false,
        "contributionStats": {
          "reviewedPackets": 0,
          "pendingPackets": 0,
          "activeClaims": 0,
          "radiclePatches": 0,
          "creditedContributors": 0,
          "latestReviewedAt": "",
          "activityLabel": "Needs first output"
        },
        "submitIssueUrl": ""
      }
    ],
    "shippedActions": [],
    "starterAction": {
      "slug": "growth-index-v1",
      "missionSlug": "growth-index",
      "title": "Growth Index v1",
      "summary": "Define the first council-ranking method, data inputs, caveats, and press-friendly output format.",
      "meta": "product · in build",
      "progress": "Method design",
      "progressPercent": 35,
      "mission": "Pressure-test the five-input scoring model and identify the first three data sources worth collecting.",
      "why": "The Growth Index is only useful if its method survives contact with ugly local data.",
      "timeNeeded": "2 hours",
      "inputs": "Planning data, ONS housing data, grid/energy queues, business formation sources, local infrastructure reports.",
      "outputFormat": "Method note with recommended first data source per input and caveats.",
      "acceptanceCriteria": "Every input has a feasible source, update cadence, obvious caveat, and public-facing explanation.",
      "workstream": "Growth Index method",
      "definitionOfDone": "The output is complete only when it says which Growth Index inputs are ready for a pilot, which are not, what caveats block public ranking, and the next dataset action needed.",
      "reviewQuestions": [
        "Does this settle a source/method question, or only make the current rubric look good?",
        "Is the output ready to become part of the current Growth Index method, or should it spawn a narrower pilot/data action?",
        "What claim would be unsafe to make publicly from this output?"
      ],
      "spawnRules": [
        "If source feasibility is settled, spawn the smallest pilot dataset action.",
        "If a source family is still messy, spawn a source-harmonisation or manual QA action.",
        "If the score saturates, add a harder benchmark rather than treating the mission as complete."
      ],
      "submitRoute": "Finish the evidence pack locally, then run ./bin/fu-mission submit — after you confirm, it sends the pack summary, source count, and file checksums to Future Union over HTTPS for a human to review. The full files stay on your machine until a reviewer asks for them, and nothing becomes public without that review. A signed, publish-from-your-machine Radicle route exists as an optional advanced lane.",
      "tags": [
        "data",
        "signals"
      ],
      "columnTitle": "Building",
      "columnDescription": "Work in flight that should stay visible.",
      "parentMissionSlug": "growth-index",
      "parentMissionTitle": "Build the Growth Index",
      "parentMissionStatus": "Method",
      "parentMissionProgress": "Scoring model drafted",
      "parentMissionProgressPercent": 35,
      "parentMissionHref": "/missions/growth-index/",
      "status": "building",
      "priorityRank": 7,
      "outputType": "Method note",
      "reviewPolicy": "Human review is mandatory before any submitted evidence pack becomes a public claim, contact action, campaign asset, dataset, or policy position.",
      "packetTemplateUrl": "/agent-pack/mission-packet-template.md",
      "issueTemplateUrl": "/agent-pack/github-issue-template.md",
      "apiHref": "/api/actions/growth-index-v1.json",
      "outcomeStatus": "in-progress",
      "outcomeSummary": "No accepted outcome yet. A useful output still needs review.",
      "detailHref": "/control-room/actions/growth-index-v1/",
      "runnerDirectory": "future-union-mission-growth-index-v1",
      "runnerCommand": "curl -fsS https://www.futureunion.org.uk/agent-pack/install-fucr.sh | FU_BASE_URL=https://www.futureunion.org.uk sh -s -- mission growth-index-v1",
      "runnerScriptUrl": "/agent-pack/fu-runner.sh",
      "runnerPack": {
        "base": "/agent-pack/actions/growth-index-v1/",
        "readme": "/agent-pack/actions/growth-index-v1/README.md",
        "mission": "/agent-pack/actions/growth-index-v1/MISSION.md",
        "prompt": "/agent-pack/actions/growth-index-v1/PROMPT.md",
        "packet": "/agent-pack/actions/growth-index-v1/PACKET.md",
        "outcome": "/agent-pack/actions/growth-index-v1/OUTCOME.md",
        "nextWork": "/agent-pack/actions/growth-index-v1/NEXT_WORK.md",
        "review": "/agent-pack/actions/growth-index-v1/REVIEW.md",
        "sources": "/agent-pack/actions/growth-index-v1/SOURCES.csv",
        "contribution": "/agent-pack/actions/growth-index-v1/CONTRIBUTION.md",
        "credit": "/agent-pack/actions/growth-index-v1/CREDIT.md",
        "intakeIdea": "/agent-pack/actions/growth-index-v1/INTAKE_IDEA.md",
        "actionProposal": "/agent-pack/actions/growth-index-v1/ACTION_PROPOSAL.md",
        "submit": "/agent-pack/actions/growth-index-v1/SUBMIT.md",
        "context": "/agent-pack/actions/growth-index-v1/context.json",
        "missionContext": "/agent-pack/actions/growth-index-v1/mission.json",
        "skill": "/agent-pack/actions/growth-index-v1/SKILL.md"
      },
      "localSkillPath": ".agents/skills/future-union/SKILL.md",
      "helperCommandPath": "./bin/fu-mission",
      "isProposalAction": false,
      "contributionStats": {
        "reviewedPackets": 0,
        "pendingPackets": 0,
        "activeClaims": 0,
        "radiclePatches": 0,
        "creditedContributors": 0,
        "latestReviewedAt": "",
        "activityLabel": "Needs first output"
      },
      "submitIssueUrl": ""
    },
    "contributionStats": {
      "reviewedPackets": 0,
      "pendingPackets": 0,
      "activeClaims": 0,
      "radiclePatches": 0,
      "creditedContributors": 0,
      "latestReviewedAt": "",
      "activityLabel": "Needs first output"
    },
    "actionCount": 1,
    "liveActionCount": 1,
    "shippedActionCount": 0,
    "detailHref": "/missions/growth-index/",
    "packetTemplateUrl": "/agent-pack/mission-packet-template.md",
    "issueTemplateUrl": "/agent-pack/github-issue-template.md",
    "reviewPolicy": "Human review is mandatory before any submitted evidence pack becomes a public claim, contact action, campaign asset, dataset, or policy position.",
    "computeDisclosureFields": [
      "Agent or tool used",
      "Model if known",
      "Approximate tokens or runtime if available",
      "Human edits made",
      "Sources checked"
    ],
    "submitIssueUrl": ""
  },
  "missionComputer": {
    "title": "Mission Computer",
    "thesis": "Future Union missions are public, bounded, source-led tasks that a human can run with or without an agent, then package for review.",
    "reviewPolicy": "Human review is mandatory before any submitted evidence pack becomes a public claim, contact action, campaign asset, dataset, or policy position.",
    "computeDisclosureFields": [
      "Agent or tool used",
      "Model if known",
      "Approximate tokens or runtime if available",
      "Human edits made",
      "Sources checked"
    ],
    "safetyRules": [
      "Use public, lawful sources only.",
      "Do not contact third parties, submit forms, file FOIs, or post publicly unless a human explicitly approves it.",
      "Do not process private personal data or infer sensitive traits.",
      "Do not make legal allegations; flag risky findings for review.",
      "Do not smooth uncertainty into confidence."
    ],
    "jsonUrl": "https://www.futureunion.org.uk/api/mission-computer.json",
    "intakeUrl": "https://www.futureunion.org.uk/api/intake/ideas.json",
    "contributionsUrl": "https://www.futureunion.org.uk/api/contributions.json",
    "contributionSubmitUrl": "https://www.futureunion.org.uk/api/contributions",
    "contributionClaimUrl": "https://www.futureunion.org.uk/api/contributions/claims",
    "radicle": {
      "configured": true,
      "repoId": "rad:z3GS6enxkmAPDrw6oVmSitMx9swnw",
      "webUrl": "https://www.futureunion.org.uk/network",
      "seed": "z6MkvJ2y4X8uYgXEjKH7t3wbHS1E52pnPBuKax717zpJoeaN@futureunion.exe.xyz:8776",
      "httpdApiUrl": "/api/v1",
      "brandedExplorerUrl": "/network",
      "radicleExplorerUrl": "https://radicle.network/nodes/www.futureunion.org.uk/rad%3Az3GS6enxkmAPDrw6oVmSitMx9swnw",
      "communityComputerUrl": "https://community.computer/repos/z3GS6enxkmAPDrw6oVmSitMx9swnw",
      "networkJsonUrl": "/api/network.json",
      "packetsJsonUrl": "/api/radicle/packets.json",
      "progressJsonUrl": "/api/progress.json",
      "syncStatusEnv": "FUTURE_UNION_RADICLE_SYNC_STATUS",
      "contributionRepoEnv": "FU_BASE_URL",
      "patchRef": "Radicle experiment COB",
      "statusCommand": "./bin/fu-mission experiment-status",
      "syncCommand": "./bin/fu-mission sync-network",
      "previewCommand": "./bin/fu-mission experiment-preview",
      "doctorCommand": "./bin/fu-mission experiment-doctor",
      "publishCommand": "./bin/fu-mission experiment-publish",
      "installCommand": "Install rad-experiment when you are ready to publish; set FU_ENABLE_PI_CC=1 only for the optional Community Computer bridge.",
      "authCommand": "rad auth",
      "safetyCopy": "Radicle publishing is an explicit local step: inspect the experiment preview, confirm the signed packet record, and never publish raw local notes by default."
    },
    "communityChat": {
      "mode": "local-room-preview",
      "provider": "matrix",
      "configured": false,
      "encryptionRequired": true,
      "homeserverUrl": "",
      "spaceUrl": "",
      "roomAliasPattern": "#future-union-{action}:matrix.org",
      "credentialEnv": [
        "FU_MATRIX_HOMESERVER",
        "FU_MATRIX_USER",
        "FU_MATRIX_ACCESS_TOKEN"
      ],
      "fallbackCopy": "Matrix action rooms are not configured yet. Use the local action-room note for sources, blockers, claims, and reviewer questions; nothing there is sent anywhere by default."
    }
  },
  "missionRunner": {
    "mode": "plain-shell-runner",
    "scriptUrl": "/agent-pack/fu-runner.sh",
    "installerUrl": "/agent-pack/install-fucr.sh",
    "helperCommandPath": "./bin/fu-mission",
    "skillPath": ".agents/skills/future-union/SKILL.md",
    "runnerFiles": [
      "README.md",
      "AGENTS.md",
      "RADICLE_NETWORK.md",
      "MISSION.md",
      "PROMPT.md",
      "PACKET.md",
      "ACTION_PROPOSAL.md",
      "OUTCOME.md",
      "NEXT_WORK.md",
      "REVIEW.md",
      "SOURCES.csv",
      "CONTRIBUTION.md",
      "CREDIT.md",
      "CHECKPOINT.md",
      "RADICLE.md",
      "EXPERIMENT.md",
      "SHARE_MANIFEST.md",
      ".future-union/run-status.json",
      ".future-union/run-progress.jsonl",
      "autoresearch.md",
      "autoresearch.sh",
      "autoresearch.jsonl",
      "INTAKE_IDEA.md",
      "SUBMIT.md",
      "bin/fu-mission",
      ".future-union/rooms/[action].md",
      ".future-union/state.json",
      ".community-computer/session.json",
      ".community-computer/pending-experiment.json",
      "context/runner.json",
      "context/future-union-context.json",
      "context/action.json",
      "context/mission.json",
      "context/safety-rules.md",
      "context/review-policy.md",
      ".agents/skills/future-union/SKILL.md"
    ],
    "flags": [
      "FUCR_BASE_URL=http://127.0.0.1:4392",
      "FU_BASE_URL=https://www.futureunion.org.uk",
      "FUCR_CACHE_DIR=~/.cache/future-union/fucr",
      "FUCR_INSTALL=0",
      "FU_AGENT=auto|pi|codex|claude|none",
      "FU_AUTORESEARCH=1|0",
      "FU_START=ask|1|0",
      "FU_PICK=0",
      "FU_TUI=0|ratatui|lite|textual|node",
      "FU_TUI_VENV=.future-union/tui-venv",
      "FU_PI_UPDATE=ask|yes|no",
      "FU_ENABLE_PI_CC=1",
      "FU_RADICLE=1",
      "FU_YES=1",
      "FU_BOOTSTRAP=0",
      "FU_DRY_RUN=1",
      "FU_CONTRIBUTOR_NAME=\"Your name\"",
      "FU_CONTRIBUTOR_HANDLE=\"@handle\"",
      "FU_CONTACT=\"email@example.com\"",
      "FU_ANONYMOUS=yes",
      "FU_IDEA_FILE=idea.json",
      "FU_SHARE_DIR=.future-union/share",
      "FU_MATRIX_HOMESERVER=https://matrix.example",
      "FU_MATRIX_USER=@you:matrix.example",
      "FU_MATRIX_ACCESS_TOKEN=..."
    ],
    "radicle": {
      "configured": true,
      "repoId": "rad:z3GS6enxkmAPDrw6oVmSitMx9swnw",
      "webUrl": "https://www.futureunion.org.uk/network",
      "seed": "z6MkvJ2y4X8uYgXEjKH7t3wbHS1E52pnPBuKax717zpJoeaN@futureunion.exe.xyz:8776",
      "httpdApiUrl": "/api/v1",
      "brandedExplorerUrl": "/network",
      "radicleExplorerUrl": "https://radicle.network/nodes/www.futureunion.org.uk/rad%3Az3GS6enxkmAPDrw6oVmSitMx9swnw",
      "communityComputerUrl": "https://community.computer/repos/z3GS6enxkmAPDrw6oVmSitMx9swnw",
      "networkJsonUrl": "/api/network.json",
      "packetsJsonUrl": "/api/radicle/packets.json",
      "progressJsonUrl": "/api/progress.json",
      "syncStatusEnv": "FUTURE_UNION_RADICLE_SYNC_STATUS",
      "contributionRepoEnv": "FU_BASE_URL",
      "patchRef": "Radicle experiment COB",
      "statusCommand": "./bin/fu-mission experiment-status",
      "syncCommand": "./bin/fu-mission sync-network",
      "previewCommand": "./bin/fu-mission experiment-preview",
      "doctorCommand": "./bin/fu-mission experiment-doctor",
      "publishCommand": "./bin/fu-mission experiment-publish",
      "installCommand": "Install rad-experiment when you are ready to publish; set FU_ENABLE_PI_CC=1 only for the optional Community Computer bridge.",
      "authCommand": "rad auth",
      "safetyCopy": "Radicle publishing is an explicit local step: inspect the experiment preview, confirm the signed packet record, and never publish raw local notes by default."
    },
    "communityChat": {
      "mode": "local-room-preview",
      "provider": "matrix",
      "configured": false,
      "encryptionRequired": true,
      "homeserverUrl": "",
      "spaceUrl": "",
      "roomAliasPattern": "#future-union-{action}:matrix.org",
      "credentialEnv": [
        "FU_MATRIX_HOMESERVER",
        "FU_MATRIX_USER",
        "FU_MATRIX_ACCESS_TOKEN"
      ],
      "fallbackCopy": "Matrix action rooms are not configured yet. Use the local action-room note for sources, blockers, claims, and reviewer questions; nothing there is sent anywhere by default."
    }
  },
  "agentPack": {
    "thesis": "Future Union should be easy for agents to read and useful for humans to review. Missions are public, bounded, source-led, and output-based.",
    "submissionContract": [
      "Return Markdown, not a vibe cloud.",
      "Separate facts, interpretation, caveats, and recommended action.",
      "Use public source links for every factual claim.",
      "Include contribution credit and compute disclosure without inflating the importance of the work.",
      "Include enough context that a human reviewer can verify the work quickly.",
      "Do not publish, contact third parties, scrape private systems, or process personal data without explicit permission."
    ]
  }
}