Skip to content

chore(deps): bump the actions group with 2 updates - #5

Merged
jshvn merged 1 commit into
mainfrom
dependabot/github_actions/actions-a1a7e038d1
Sep 13, 2026
Merged

jshvn merged 1 commit into
mainfrom
dependabot/github_actions/actions-a1a7e038d1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 11, 2026

Copy link
Copy Markdown
Contributor

Bumps the actions group with 2 updates: katoptra/lib/.github/actions/toolbox and katoptra/lib/.github/workflows/sync.yml.

Updates katoptra/lib/.github/actions/toolbox from 2.0.0 to 2.0.1

Release notes

Sourced from katoptra/lib/.github/actions/toolbox's releases.

v2.0.1

Two supply-chain fixes from the security review of 2026-09-08.

The AWS CLI is verified before it is installed. It was the only tool in toolchain.lock.toml carrying no checksum, installed with curl, unzip and ./aws/install as root, and it is the binary that receives the R2 credentials on every upload. AWS publishes no checksum for the v2 Linux installer, only a detached PGP signature, so the fetch stage now verifies that signature through the same GOODSIG-and-VALIDSIG gate the engine uses for TeX Live, against the key committed at docker/aws-cli.pub and the fingerprint pinned in the lock. gpgv's own verdict is not the gate: a zip signed by any other valid key still reports a good signature, and only the fingerprint comparison refuses it.

That key expires 2027-07-01. An expired key is EXPKEYSIG, not GOODSIG, so builds after that date fail closed until docker/aws-cli.pub is refreshed from the AWS CLI User Guide.

The sync workflow refuses a hostile vars input. Its words become go-task call variables, which the engine splices into shell as raw text, so a crafted RECONCILE or BATCH_GB could run arbitrary commands in the step that had already exported every inherited secret, including the R2 credentials and OP_SERVICE_ACCOUNT_TOKEN. A word that is not a bare upper-case key and a plain value is now refused at the boundary, in a step that holds no secrets. reconcile's status quotes its value as well. BATCH_GB lands inside $(( )), where a quoted operand is a syntax error, so it stays bare and carries a ponytail: comment naming what protects it.

Each guard's own cases run in CI and prove what it refuses; the image build proves what the signature gate accepts.

No mirror needs a change. Neither fix alters a rendered command, so render.txt in ctan and tlnet still matches, and the rollout is the v2 tag as usual.

Commits
  • 7b7d117 fix(security): verify the AWS CLI signature, guard the vars input
  • fceb64a Merge pull request #2 from katoptra/josh/docs-v2
  • 83add31 docs: the include and the image float at v2
  • See full diff in compare view

Updates katoptra/lib/.github/workflows/sync.yml from 2.0.0 to 2.0.1

Release notes

Sourced from katoptra/lib/.github/workflows/sync.yml's releases.

v2.0.1

Two supply-chain fixes from the security review of 2026-09-08.

The AWS CLI is verified before it is installed. It was the only tool in toolchain.lock.toml carrying no checksum, installed with curl, unzip and ./aws/install as root, and it is the binary that receives the R2 credentials on every upload. AWS publishes no checksum for the v2 Linux installer, only a detached PGP signature, so the fetch stage now verifies that signature through the same GOODSIG-and-VALIDSIG gate the engine uses for TeX Live, against the key committed at docker/aws-cli.pub and the fingerprint pinned in the lock. gpgv's own verdict is not the gate: a zip signed by any other valid key still reports a good signature, and only the fingerprint comparison refuses it.

That key expires 2027-07-01. An expired key is EXPKEYSIG, not GOODSIG, so builds after that date fail closed until docker/aws-cli.pub is refreshed from the AWS CLI User Guide.

The sync workflow refuses a hostile vars input. Its words become go-task call variables, which the engine splices into shell as raw text, so a crafted RECONCILE or BATCH_GB could run arbitrary commands in the step that had already exported every inherited secret, including the R2 credentials and OP_SERVICE_ACCOUNT_TOKEN. A word that is not a bare upper-case key and a plain value is now refused at the boundary, in a step that holds no secrets. reconcile's status quotes its value as well. BATCH_GB lands inside $(( )), where a quoted operand is a syntax error, so it stays bare and carries a ponytail: comment naming what protects it.

Each guard's own cases run in CI and prove what it refuses; the image build proves what the signature gate accepts.

No mirror needs a change. Neither fix alters a rendered command, so render.txt in ctan and tlnet still matches, and the rollout is the v2 tag as usual.

Commits
  • 7b7d117 fix(security): verify the AWS CLI signature, guard the vars input
  • fceb64a Merge pull request #2 from katoptra/josh/docs-v2
  • 83add31 docs: the include and the image float at v2
  • See full diff in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps the actions group with 2 updates: [katoptra/lib/.github/actions/toolbox](https://github.com/katoptra/lib) and [katoptra/lib/.github/workflows/sync.yml](https://github.com/katoptra/lib).


Updates `katoptra/lib/.github/actions/toolbox` from 2.0.0 to 2.0.1
- [Release notes](https://github.com/katoptra/lib/releases)
- [Commits](katoptra/lib@81fb6ee...7b7d117)

Updates `katoptra/lib/.github/workflows/sync.yml` from 2.0.0 to 2.0.1
- [Release notes](https://github.com/katoptra/lib/releases)
- [Commits](katoptra/lib@81fb6ee...7b7d117)

---
updated-dependencies:
- dependency-name: katoptra/lib/.github/actions/toolbox
  dependency-version: 2.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
- dependency-name: katoptra/lib/.github/workflows/sync.yml
  dependency-version: 2.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code labels Sep 11, 2026
@jshvn
jshvn merged commit 69f9461 into main Sep 13, 2026
1 check passed
@dependabot
dependabot Bot deleted the dependabot/github_actions/actions-a1a7e038d1 branch September 13, 2026 03:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant