GitHub check

Whole log, 10 KB
2026-10-24T11:41:25.5410560Z Current runner version: '2.338.0'
2026-10-24T11:41:25.5446275Z ##[group]Runner Image Provisioner
2026-10-24T11:41:25.5447785Z Hosted Compute Agent
2026-10-24T11:41:25.5448852Z Version: 20261012.601
2026-10-24T11:41:25.5450022Z Commit: f3dc54e1fb89da6852db922499a0233137369e1d
2026-10-24T11:41:25.5451296Z Build Date: 2026-10-12T17:48:21Z
2026-10-24T11:41:25.5452759Z Worker ID: {31a5f07c-f1bb-445f-9a4e-4b2b3ce25853}
2026-10-24T11:41:25.5454117Z Region: centralus
2026-10-24T11:41:25.5455049Z Cloud: Azure
2026-10-24T11:41:25.5456072Z ##[endgroup]
2026-10-24T11:41:25.5458900Z ##[group]Operating System
2026-10-24T11:41:25.5460076Z Ubuntu
2026-10-24T11:41:25.5461066Z 24.04.5
2026-10-24T11:41:25.5462046Z LTS
2026-10-24T11:41:25.5463375Z ##[endgroup]
2026-10-24T11:41:25.5464431Z ##[group]Runner Image
2026-10-24T11:41:25.5465552Z Image: ubuntu-24.04
2026-10-24T11:41:25.5466724Z Version: 20261012.334.1
2026-10-24T11:41:25.5468938Z Included Software: https://github.com/actions/runner-images/blob/ubuntu24/20261012.334/images/ubuntu/Ubuntu2404-Readme.md
2026-10-24T11:41:25.5471969Z Image Release: https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20261012.334
2026-10-24T11:41:25.5474070Z ##[endgroup]
2026-10-24T11:41:25.5476636Z ##[group]GITHUB_TOKEN Permissions
2026-10-24T11:41:25.5479543Z Contents: read
2026-10-24T11:41:25.5480921Z Issues: write
2026-10-24T11:41:25.5481929Z Metadata: read
2026-10-24T11:41:25.5483355Z PullRequests: write
2026-10-24T11:41:25.5484518Z ##[endgroup]
2026-10-24T11:41:25.5487417Z Secret source: Actions
2026-10-24T11:41:25.5489272Z Cache mode: read
2026-10-24T11:41:25.5490811Z Prepare workflow directory
2026-10-24T11:41:25.5851984Z Prepare all required actions
2026-10-24T11:41:25.5924092Z Getting action download info
2026-10-24T11:41:25.8532488Z Download action repository 'mitchellh/vouch@v1' (SHA:d66fa29a64600490892131ad87597c30c91fcac4)
2026-10-24T11:41:26.1275338Z Download action repository 'actions/github-script@v8' (SHA:ed597411d8f924073f98dfc5c65a23a2325f34cd)
2026-10-24T11:41:26.5527529Z Getting action download info
2026-10-24T11:41:26.6520411Z Download action repository 'hustcer/setup-nu@920172d92eb04671776f3ba69d605d3b09351c30' (SHA:920172d92eb04671776f3ba69d605d3b09351c30)
2026-10-24T11:41:27.0675985Z Complete job name: Label PR 24410
2026-10-24T11:41:27.1483873Z ##[group]Run mitchellh/vouch/action/check-user@v1
2026-10-24T11:41:27.1484647Z with:
2026-10-24T11:41:27.1484954Z   user: juliusmarminge
2026-10-24T11:41:27.1485281Z   allow-fail: true
2026-10-24T11:41:27.1485613Z   vouched-file: .github/VOUCHED.td
2026-10-24T11:41:27.1486130Z env:
2026-10-24T11:41:27.1489229Z   GITHUB_TOKEN: ***
2026-10-24T11:41:27.1489546Z ##[endgroup]
2026-10-24T11:41:27.1551366Z ##[start-action display=Run hustcer/setup-nu@920172d92eb04671776f3ba69d605d3b09351c30;id=vouch.__hustcer_setup-nu]
2026-10-24T11:41:27.1624840Z ##[group]Run hustcer/setup-nu@920172d92eb04671776f3ba69d605d3b09351c30
2026-10-24T11:41:27.1625388Z with:
2026-10-24T11:41:27.1625712Z   version: *
2026-10-24T11:41:27.1626046Z   features: default
2026-10-24T11:41:27.1626411Z   check-latest: false
2026-10-24T11:41:27.1626759Z   enable-plugins: false
2026-10-24T11:41:27.1629815Z   github-token: ***
2026-10-24T11:41:27.1630154Z env:
2026-10-24T11:41:27.1633594Z   GITHUB_TOKEN: ***
2026-10-24T11:41:27.1633992Z ##[endgroup]
2026-10-24T11:41:27.3015134Z versionSpec: *
2026-10-24T11:41:27.3015652Z coerce version: *
2026-10-24T11:41:28.0984290Z Try to get assets for Nu: arch = x64, platform = linux, feature = default
2026-10-24T11:41:28.7373763Z [command]/usr/bin/tar xz --warning=no-unknown-keyword --overwrite -C /home/runner/work/_temp/1247cddd-fa68-4fcb-a52b-2b6389dbb70f -f /home/runner/work/_temp/63ee8f2e-5237-4cc1-a514-9d13714bd9a3
2026-10-24T11:41:30.9049009Z Successfully setup Nu 0.116.1, with default features.
2026-10-24T11:41:30.9063297Z Current directory: /home/runner/work/t3code/t3code
2026-10-24T11:41:30.9265175Z ##[end-action id=vouch.__hustcer_setup-nu;outcome=success;conclusion=success;duration_ms=3771]
2026-10-24T11:41:30.9308450Z ##[start-action display=Run use "/home/runner/work/_actions/mitchellh/vouch/v1/action/check-user/../../vouch" *;id=vouch.run]
2026-10-24T11:41:30.9473520Z ##[group]Run use "/home/runner/work/_actions/mitchellh/vouch/v1/action/check-user/../../vouch" *
2026-10-24T11:41:30.9474304Z use "/home/runner/work/_actions/mitchellh/vouch/v1/action/check-user/../../vouch" *
2026-10-24T11:41:30.9474751Z
2026-10-24T11:41:30.9475024Z let repo_data = (gh-check-user "juliusmarminge"
2026-10-24T11:41:30.9475365Z   -R "pingdotgg/t3code"
2026-10-24T11:41:30.9475634Z   --vouched-repo ""
2026-10-24T11:41:30.9475906Z   --vouched-file ".github/VOUCHED.td"
2026-10-24T11:41:30.9476183Z )
2026-10-24T11:41:30.9476368Z
2026-10-24T11:41:30.9476582Z let status = $repo_data.status
2026-10-24T11:41:30.9476904Z print $"User juliusmarminge: ($status)"
2026-10-24T11:41:30.9477276Z let vouched = $status in ["bot", "collaborator", "vouched"]
2026-10-24T11:41:30.9477658Z $"status=($status)\nvouched=($vouched)"
2026-10-24T11:41:30.9477987Z   | save --append $env.GITHUB_OUTPUT
2026-10-24T11:41:30.9478260Z
2026-10-24T11:41:30.9478460Z if "true" != "true" {
2026-10-24T11:41:30.9478737Z   if $status in ["denounced", "unknown"] {
2026-10-24T11:41:30.9479031Z     error make {
2026-10-24T11:41:30.9479330Z       msg: $"User juliusmarminge is not vouched \(($status))"
2026-10-24T11:41:30.9479658Z     }
2026-10-24T11:41:30.9479845Z   }
2026-10-24T11:41:30.9480026Z }
2026-10-24T11:41:30.9484758Z shell: /opt/hostedtoolcache/nushell/0.116.1/x64/nu {0}
2026-10-24T11:41:30.9485101Z env:
2026-10-24T11:41:30.9487875Z   GITHUB_TOKEN: ***
2026-10-24T11:41:30.9488111Z ##[endgroup]
2026-10-24T11:41:30.9782436Z Warning: nu::parser::deprecated
2026-10-24T11:41:30.9782761Z
2026-10-24T11:41:30.9782883Z   ! Command deprecated.
2026-10-24T11:41:30.9783472Z     ,-[/home/runner/work/_actions/mitchellh/vouch/v1/action/check-user/../../vouch/file.nu:43:25]
2026-10-24T11:41:30.9784284Z  42 | export def parse-handle [handle: string] {
2026-10-24T11:41:30.9785166Z  43 |   let parts = $handle | str downcase | split row ":" --number 2
2026-10-24T11:41:30.9785781Z     :                         ^^^^^^|^^^^^
2026-10-24T11:41:30.9786463Z     :                               `-- str downcase was deprecated in 0.114.0 and will be removed in a future release.
2026-10-24T11:41:30.9787366Z  44 |   if ($parts | length) > 1 {
2026-10-24T11:41:30.9787883Z     `----
2026-10-24T11:41:30.9788300Z   help: Use `str lowercase` instead.
2026-10-24T11:41:30.9788638Z
2026-10-24T11:41:31.2594507Z User juliusmarminge: collaborator
2026-10-24T11:41:31.2639093Z ##[end-action id=vouch.run;outcome=success;conclusion=success;duration_ms=332]
2026-10-24T11:41:31.2834109Z ##[group]Run actions/github-script@v8
2026-10-24T11:41:31.2834442Z with:
2026-10-24T11:41:31.2842510Z   script: const issueNumber = Number(process.env.PR_NUMBER);
const status = process.env.VOUCH_STATUS;
const managedLabels = [
  {
    name: "vouch:trusted",
    color: "1f883d",
    description: "PR author is trusted by repo permissions or the VOUCHED list.",
  },
  {
    name: "vouch:unvouched",
    color: "fbca04",
    description: "PR author is not yet trusted in the VOUCHED list.",
  },
  {
    name: "vouch:denounced",
    color: "d1242f",
    description: "PR author is explicitly blocked by the VOUCHED list.",
  },
];

const managedLabelNames = new Set(managedLabels.map((label) => label.name));

for (const label of managedLabels) {
  try {
    const { data: existing } = await github.rest.issues.getLabel({
      owner: context.repo.owner,
      repo: context.repo.repo,
      name: label.name,
    });

    if (
      existing.color !== label.color ||
      (existing.description ?? "") !== label.description
    ) {
      await github.rest.issues.updateLabel({
        owner: context.repo.owner,
        repo: context.repo.repo,
        name: label.name,
        color: label.color,
        description: label.description,
      });
    }
  } catch (error) {
    if (error.status !== 404) {
      throw error;
    }

    try {
      await github.rest.issues.createLabel({
        owner: context.repo.owner,
        repo: context.repo.repo,
        name: label.name,
        color: label.color,
        description: label.description,
      });
    } catch (createError) {
      if (createError.status !== 422) {
        throw createError;
      }
    }
  }
}

const nextLabelName =
  status === "denounced"
    ? "vouch:denounced"
    : ["bot", "collaborator", "vouched"].includes(status)
      ? "vouch:trusted"
      : "vouch:unvouched";

const { data: currentLabels } = await github.rest.issues.listLabelsOnIssue({
  owner: context.repo.owner,
  repo: context.repo.repo,
  issue_number: issueNumber,
  per_page: 100,
});

for (const label of currentLabels) {
  if (!managedLabelNames.has(label.name) || label.name === nextLabelName) {
    continue;
  }

  try {
    await github.rest.issues.removeLabel({
      owner: context.repo.owner,
      repo: context.repo.repo,
      issue_number: issueNumber,
      name: label.name,
    });
  } catch (removeError) {
    if (removeError.status !== 404) {
      throw removeError;
    }
  }
}

if (!currentLabels.some((label) => label.name === nextLabelName)) {
  await github.rest.issues.addLabels({
    owner: context.repo.owner,
    repo: context.repo.repo,
    issue_number: issueNumber,
    labels: [nextLabelName],
  });
}

core.info(`PR #${issueNumber}: ${status} -> ${nextLabelName}`);

2026-10-24T11:41:31.2853484Z   github-token: ***
2026-10-24T11:41:31.2853714Z   debug: false
2026-10-24T11:41:31.2853933Z   user-agent: actions/github-script
2026-10-24T11:41:31.2854197Z   result-encoding: json
2026-10-24T11:41:31.2854414Z   retries: 0
2026-10-24T11:41:31.2854662Z   retry-exempt-status-codes: 400,401,403,404,422
2026-10-24T11:41:31.2854946Z env:
2026-10-24T11:41:31.2855129Z   PR_NUMBER: 24410
2026-10-24T11:41:31.2855350Z   VOUCH_STATUS: collaborator
2026-10-24T11:41:31.2855581Z ##[endgroup]
2026-10-24T11:41:33.3649829Z PR #24410: collaborator -> vouch:trusted
2026-10-24T11:41:33.3810913Z Cleaning up orphan processes