Skip to content

build(deps): Bump the actions group with 4 updates#378

Merged
RobertLD merged 1 commit intodevelopmentfrom
dependabot/github_actions/development/actions-6534b7915f
Mar 9, 2026
Merged

build(deps): Bump the actions group with 4 updates#378
RobertLD merged 1 commit intodevelopmentfrom
dependabot/github_actions/development/actions-6534b7915f

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Mar 7, 2026

Bumps the actions group with 4 updates: docker/setup-buildx-action, docker/login-action, docker/metadata-action and docker/build-push-action.

Updates docker/setup-buildx-action from 3 to 4

Release notes

Sourced from docker/setup-buildx-action's releases.

v4.0.0

Full Changelog: docker/setup-buildx-action@v3.12.0...v4.0.0

v3.12.0

Full Changelog: docker/setup-buildx-action@v3.11.1...v3.12.0

v3.11.1

Full Changelog: docker/setup-buildx-action@v3.11.0...v3.11.1

v3.11.0

Full Changelog: docker/setup-buildx-action@v3.10.0...v3.11.0

v3.10.0

Full Changelog: docker/setup-buildx-action@v3.9.0...v3.10.0

v3.9.0

Full Changelog: docker/setup-buildx-action@v3.8.0...v3.9.0

v3.8.0

Full Changelog: docker/setup-buildx-action@v3.7.1...v3.8.0

... (truncated)

Commits
  • 4d04d5d Merge pull request #485 from docker/dependabot/npm_and_yarn/docker/actions-to...
  • cd74e05 chore: update generated content
  • eee38ec build(deps): bump @​docker/actions-toolkit from 0.77.0 to 0.79.0
  • 7a83f65 Merge pull request #484 from docker/dependabot/github_actions/docker/setup-qe...
  • a5aa967 Merge pull request #464 from crazy-max/rm-deprecated
  • e73d53f build(deps): bump docker/setup-qemu-action from 3 to 4
  • 28a438e Merge pull request #483 from crazy-max/node24
  • 034e9d3 chore: update generated content
  • b4664d8 remove deprecated inputs/outputs
  • a8257de node 24 as default runtime
  • Additional commits viewable in compare view

Updates docker/login-action from 3 to 4

Release notes

Sourced from docker/login-action's releases.

v4.0.0

Full Changelog: docker/login-action@v3.7.0...v4.0.0

v3.7.0

Full Changelog: docker/login-action@v3.6.0...v3.7.0

v3.6.0

Full Changelog: docker/login-action@v3.5.0...v3.6.0

v3.5.0

Full Changelog: docker/login-action@v3.4.0...v3.5.0

v3.4.0

Full Changelog: docker/login-action@v3.3.0...v3.4.0

... (truncated)

Commits
  • b45d80f Merge pull request #929 from crazy-max/node24
  • 176cb9c node 24 as default runtime
  • cad8984 Merge pull request #920 from docker/dependabot/npm_and_yarn/aws-sdk-dependenc...
  • 92cbcb2 chore: update generated content
  • 5a2d6a7 build(deps): bump the aws-sdk-dependencies group with 2 updates
  • 44512b6 Merge pull request #928 from docker/dependabot/npm_and_yarn/docker/actions-to...
  • 28737a5 chore: update generated content
  • dac0793 build(deps): bump @​docker/actions-toolkit from 0.76.0 to 0.77.0
  • 62029f3 Merge pull request #919 from docker/dependabot/npm_and_yarn/actions/core-3.0.0
  • 08c8f06 chore: update generated content
  • Additional commits viewable in compare view

Updates docker/metadata-action from 5 to 6

Release notes

Sourced from docker/metadata-action's releases.

v6.0.0

Full Changelog: docker/metadata-action@v5.10.0...v6.0.0

v5.10.0

Full Changelog: docker/metadata-action@v5.9.0...v5.10.0

v5.9.0

Full Changelog: docker/metadata-action@v5.8.0...v5.9.0

v5.8.0

Full Changelog: docker/metadata-action@v5.7.0...v5.8.0

v5.7.0

Full Changelog: docker/metadata-action@v5.6.1...v5.7.0

... (truncated)

Commits
  • 030e881 Merge pull request #607 from crazy-max/allow-comments
  • 4b529ac chore: update generated content
  • b0082b3 preserve comments in list input values with commentNoInfix
  • 7b19fec Merge pull request #604 from docker/dependabot/npm_and_yarn/docker/actions-to...
  • 281c9b0 chore: update generated content
  • 5f43b3b test: stabilize github mock setup since ESM
  • 9d53276 github class moved since actions-toolkit v0.77.0
  • eaa3d39 chore(deps): Bump @​docker/actions-toolkit from 0.68.0 to 0.77.0
  • 6b695f7 Merge pull request #605 from crazy-max/node24
  • a1afadc node 24 as default runtime
  • Additional commits viewable in compare view

Updates docker/build-push-action from 6 to 7

Release notes

Sourced from docker/build-push-action's releases.

v7.0.0

Full Changelog: docker/build-push-action@v6.19.2...v7.0.0

v6.19.2

Full Changelog: docker/build-push-action@v6.19.1...v6.19.2

v6.19.1

Full Changelog: docker/build-push-action@v6.19.0...v6.19.1

v6.19.0

Full Changelog: docker/build-push-action@v6.18.0...v6.19.0

v6.18.0

[!NOTE] Build summary is now supported with Docker Build Cloud.

Full Changelog: docker/build-push-action@v6.17.0...v6.18.0

v6.17.0

[!NOTE] Build record is now exported using the buildx history export command instead of the legacy export-build tool.

Full Changelog: docker/build-push-action@v6.16.0...v6.17.0

v6.16.0

... (truncated)

Commits
  • d08e5c3 Merge pull request #1479 from docker/dependabot/npm_and_yarn/docker/actions-t...
  • cbd2dff chore: update generated content
  • f76f51f chore(deps): Bump @​docker/actions-toolkit from 0.78.0 to 0.79.0
  • 7d03e66 Merge pull request #1473 from crazy-max/rm-deprecated-envs
  • 98f853d chore: update generated content
  • cadccf6 remove deprecated envs
  • 03fe877 Merge pull request #1478 from docker/dependabot/github_actions/docker/setup-b...
  • 827e366 chore(deps): Bump docker/setup-buildx-action from 3 to 4
  • e25db87 Merge pull request #1474 from crazy-max/rm-export-build-tool
  • 1ac2573 Merge pull request #1470 from crazy-max/node24
  • Additional commits viewable 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 4 updates: [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action), [docker/login-action](https://github.com/docker/login-action), [docker/metadata-action](https://github.com/docker/metadata-action) and [docker/build-push-action](https://github.com/docker/build-push-action).


Updates `docker/setup-buildx-action` from 3 to 4
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@v3...v4)

Updates `docker/login-action` from 3 to 4
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@v3...v4)

Updates `docker/metadata-action` from 5 to 6
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](docker/metadata-action@v5...v6)

Updates `docker/build-push-action` from 6 to 7
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@v6...v7)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/metadata-action
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/build-push-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  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 Mar 7, 2026
@vercel
Copy link

vercel bot commented Mar 7, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
libscope Ignored Ignored Preview Mar 7, 2026 6:03am

@RobertLD RobertLD merged commit 0fe296b into development Mar 9, 2026
9 checks passed
@RobertLD RobertLD deleted the dependabot/github_actions/development/actions-6534b7915f branch March 9, 2026 15:44
RobertLD pushed a commit that referenced this pull request Mar 10, 2026
Bumps the actions group with 4 updates: [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action), [docker/login-action](https://github.com/docker/login-action), [docker/metadata-action](https://github.com/docker/metadata-action) and [docker/build-push-action](https://github.com/docker/build-push-action).


Updates `docker/setup-buildx-action` from 3 to 4
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@v3...v4)

Updates `docker/login-action` from 3 to 4
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@v3...v4)

Updates `docker/metadata-action` from 5 to 6
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](docker/metadata-action@v5...v6)

Updates `docker/build-push-action` from 6 to 7
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@v6...v7)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/metadata-action
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/build-push-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
RobertLD added a commit that referenced this pull request Mar 10, 2026
* build(deps): Bump the minor-and-patch group with 3 updates (#379)

Bumps the minor-and-patch group with 3 updates: [openai](https://github.com/openai/openai-node), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [eslint](https://github.com/eslint/eslint).

Updates `openai` from 6.25.0 to 6.27.0
- [Release notes](https://github.com/openai/openai-node/releases)
- [Changelog](https://github.com/openai/openai-node/blob/master/CHANGELOG.md)
- [Commits](openai/openai-node@v6.25.0...v6.27.0)

Updates `@types/node` from 25.3.3 to 25.3.5
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `eslint` from 10.0.2 to 10.0.3
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v10.0.2...v10.0.3)

---
updated-dependencies:
- dependency-name: openai
  dependency-version: 6.27.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-and-patch
- dependency-name: "@types/node"
  dependency-version: 25.3.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
- dependency-name: eslint
  dependency-version: 10.0.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): Bump the actions group with 4 updates (#378)

Bumps the actions group with 4 updates: [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action), [docker/login-action](https://github.com/docker/login-action), [docker/metadata-action](https://github.com/docker/metadata-action) and [docker/build-push-action](https://github.com/docker/build-push-action).


Updates `docker/setup-buildx-action` from 3 to 4
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@v3...v4)

Updates `docker/login-action` from 3 to 4
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@v3...v4)

Updates `docker/metadata-action` from 5 to 6
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](docker/metadata-action@v5...v6)

Updates `docker/build-push-action` from 6 to 7
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@v6...v7)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/metadata-action
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/build-push-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): Bump express-rate-limit (#377)

Bumps the npm_and_yarn group with 1 update in the / directory: [express-rate-limit](https://github.com/express-rate-limit/express-rate-limit).


Updates `express-rate-limit` from 8.2.1 to 8.3.0
- [Release notes](https://github.com/express-rate-limit/express-rate-limit/releases)
- [Commits](express-rate-limit/express-rate-limit@v8.2.1...v8.3.0)

---
updated-dependencies:
- dependency-name: express-rate-limit
  dependency-version: 8.3.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(security): Phase 1 — Critical Security & Stability Hardening (#381)

* chore: rebase development features onto main (v1.3.0 baseline) (#375)

Applies all development branch changes (MMR, Anthropic provider,
EPUB/PPTX parsers, batch search, TTL, SDK, spider, webhooks, etc.)
directly on top of main's v1.3.0 tip to create a clean linear history.

This resolves the git ancestry divergence that caused persistent
conflicts in the release PR.

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

* feat: rebase development features onto main (v1.3.0 baseline)

* fix(security): replace execSync with spawnSync and throw on DB path mismatch

B1: The CLI update command now uses spawnSync instead of execSync to avoid
shell injection risks when running npm commands.

B2: getDatabase() now throws a DatabaseError when called with a different
path than the already-open connection, instead of silently returning the
cached connection.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(security): remove timing side channel and enforce webhook secret encryption

Remove the length pre-check before timingSafeEqual in API key validation,
as the fixed-size COMPARE_LEN=256 buffers already handle mismatched lengths.
The length check was a timing side channel that leaked key length info.

Add validation in createWebhook and updateWebhook to require LIBSCOPE_SECRET_KEY
env var when a webhook secret is provided, preventing plaintext secret storage.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(security): strip API keys from saved config file

Security: never persist API keys (openaiApiKey, anthropicApiKey) to
config.json on disk. Keys are read from environment variables at runtime.
Adds deprecation warning when keys are found in existing config files.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* ci: retarget to development branch

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(types): Phase 2 — Data Integrity & Type Safety (#383)

* feat(db): add Zod-based row validation helpers

* fix(types): validate DB query results in search.ts and analytics.ts

* fix(types): concrete VersionMetadata type and log silent JSON.parse failures

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* test(db): add unit tests for Zod-based validateRow/validateRows helpers

* fix(types): validate DB results in ratings/versioning/tags and fix applyMMR null safety

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(types): correct avg_rating Zod schema to nullable (not optional) to match SearchResult type

* fix(types): use nullable().optional() + ?? null mapping for conditional avg_rating column

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
RobertLD added a commit that referenced this pull request Mar 10, 2026
* build(deps): Bump the minor-and-patch group with 3 updates (#379)

Bumps the minor-and-patch group with 3 updates: [openai](https://github.com/openai/openai-node), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [eslint](https://github.com/eslint/eslint).

Updates `openai` from 6.25.0 to 6.27.0
- [Release notes](https://github.com/openai/openai-node/releases)
- [Changelog](https://github.com/openai/openai-node/blob/master/CHANGELOG.md)
- [Commits](openai/openai-node@v6.25.0...v6.27.0)

Updates `@types/node` from 25.3.3 to 25.3.5
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `eslint` from 10.0.2 to 10.0.3
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v10.0.2...v10.0.3)

---
updated-dependencies:
- dependency-name: openai
  dependency-version: 6.27.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-and-patch
- dependency-name: "@types/node"
  dependency-version: 25.3.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
- dependency-name: eslint
  dependency-version: 10.0.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): Bump the actions group with 4 updates (#378)

Bumps the actions group with 4 updates: [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action), [docker/login-action](https://github.com/docker/login-action), [docker/metadata-action](https://github.com/docker/metadata-action) and [docker/build-push-action](https://github.com/docker/build-push-action).


Updates `docker/setup-buildx-action` from 3 to 4
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@v3...v4)

Updates `docker/login-action` from 3 to 4
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@v3...v4)

Updates `docker/metadata-action` from 5 to 6
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](docker/metadata-action@v5...v6)

Updates `docker/build-push-action` from 6 to 7
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@v6...v7)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/metadata-action
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/build-push-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): Bump express-rate-limit (#377)

Bumps the npm_and_yarn group with 1 update in the / directory: [express-rate-limit](https://github.com/express-rate-limit/express-rate-limit).


Updates `express-rate-limit` from 8.2.1 to 8.3.0
- [Release notes](https://github.com/express-rate-limit/express-rate-limit/releases)
- [Commits](express-rate-limit/express-rate-limit@v8.2.1...v8.3.0)

---
updated-dependencies:
- dependency-name: express-rate-limit
  dependency-version: 8.3.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(security): Phase 1 — Critical Security & Stability Hardening (#381)

* chore: rebase development features onto main (v1.3.0 baseline) (#375)

Applies all development branch changes (MMR, Anthropic provider,
EPUB/PPTX parsers, batch search, TTL, SDK, spider, webhooks, etc.)
directly on top of main's v1.3.0 tip to create a clean linear history.

This resolves the git ancestry divergence that caused persistent
conflicts in the release PR.

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

* feat: rebase development features onto main (v1.3.0 baseline)

* fix(security): replace execSync with spawnSync and throw on DB path mismatch

B1: The CLI update command now uses spawnSync instead of execSync to avoid
shell injection risks when running npm commands.

B2: getDatabase() now throws a DatabaseError when called with a different
path than the already-open connection, instead of silently returning the
cached connection.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(security): remove timing side channel and enforce webhook secret encryption

Remove the length pre-check before timingSafeEqual in API key validation,
as the fixed-size COMPARE_LEN=256 buffers already handle mismatched lengths.
The length check was a timing side channel that leaked key length info.

Add validation in createWebhook and updateWebhook to require LIBSCOPE_SECRET_KEY
env var when a webhook secret is provided, preventing plaintext secret storage.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(security): strip API keys from saved config file

Security: never persist API keys (openaiApiKey, anthropicApiKey) to
config.json on disk. Keys are read from environment variables at runtime.
Adds deprecation warning when keys are found in existing config files.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* ci: retarget to development branch

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(types): Phase 2 — Data Integrity & Type Safety (#383)

* feat(db): add Zod-based row validation helpers

* fix(types): validate DB query results in search.ts and analytics.ts

* fix(types): concrete VersionMetadata type and log silent JSON.parse failures

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* test(db): add unit tests for Zod-based validateRow/validateRows helpers

* fix(types): validate DB results in ratings/versioning/tags and fix applyMMR null safety

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(types): correct avg_rating Zod schema to nullable (not optional) to match SearchResult type

* fix(types): use nullable().optional() + ?? null mapping for conditional avg_rating column

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: prep for release

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
RobertLD added a commit that referenced this pull request Mar 10, 2026
* build(deps): Bump the minor-and-patch group with 3 updates (#379)

Bumps the minor-and-patch group with 3 updates: [openai](https://github.com/openai/openai-node), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) and [eslint](https://github.com/eslint/eslint).

Updates `openai` from 6.25.0 to 6.27.0
- [Release notes](https://github.com/openai/openai-node/releases)
- [Changelog](https://github.com/openai/openai-node/blob/master/CHANGELOG.md)
- [Commits](openai/openai-node@v6.25.0...v6.27.0)

Updates `@types/node` from 25.3.3 to 25.3.5
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `eslint` from 10.0.2 to 10.0.3
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v10.0.2...v10.0.3)

---
updated-dependencies:
- dependency-name: openai
  dependency-version: 6.27.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: minor-and-patch
- dependency-name: "@types/node"
  dependency-version: 25.3.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
- dependency-name: eslint
  dependency-version: 10.0.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor-and-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): Bump the actions group with 4 updates (#378)

Bumps the actions group with 4 updates: [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action), [docker/login-action](https://github.com/docker/login-action), [docker/metadata-action](https://github.com/docker/metadata-action) and [docker/build-push-action](https://github.com/docker/build-push-action).


Updates `docker/setup-buildx-action` from 3 to 4
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@v3...v4)

Updates `docker/login-action` from 3 to 4
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@v3...v4)

Updates `docker/metadata-action` from 5 to 6
- [Release notes](https://github.com/docker/metadata-action/releases)
- [Commits](docker/metadata-action@v5...v6)

Updates `docker/build-push-action` from 6 to 7
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@v6...v7)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/metadata-action
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
- dependency-name: docker/build-push-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): Bump express-rate-limit (#377)

Bumps the npm_and_yarn group with 1 update in the / directory: [express-rate-limit](https://github.com/express-rate-limit/express-rate-limit).


Updates `express-rate-limit` from 8.2.1 to 8.3.0
- [Release notes](https://github.com/express-rate-limit/express-rate-limit/releases)
- [Commits](express-rate-limit/express-rate-limit@v8.2.1...v8.3.0)

---
updated-dependencies:
- dependency-name: express-rate-limit
  dependency-version: 8.3.0
  dependency-type: indirect
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(security): Phase 1 — Critical Security & Stability Hardening (#381)

* chore: rebase development features onto main (v1.3.0 baseline) (#375)

Applies all development branch changes (MMR, Anthropic provider,
EPUB/PPTX parsers, batch search, TTL, SDK, spider, webhooks, etc.)
directly on top of main's v1.3.0 tip to create a clean linear history.

This resolves the git ancestry divergence that caused persistent
conflicts in the release PR.

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

* feat: rebase development features onto main (v1.3.0 baseline)

* fix(security): replace execSync with spawnSync and throw on DB path mismatch

B1: The CLI update command now uses spawnSync instead of execSync to avoid
shell injection risks when running npm commands.

B2: getDatabase() now throws a DatabaseError when called with a different
path than the already-open connection, instead of silently returning the
cached connection.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(security): remove timing side channel and enforce webhook secret encryption

Remove the length pre-check before timingSafeEqual in API key validation,
as the fixed-size COMPARE_LEN=256 buffers already handle mismatched lengths.
The length check was a timing side channel that leaked key length info.

Add validation in createWebhook and updateWebhook to require LIBSCOPE_SECRET_KEY
env var when a webhook secret is provided, preventing plaintext secret storage.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(security): strip API keys from saved config file

Security: never persist API keys (openaiApiKey, anthropicApiKey) to
config.json on disk. Keys are read from environment variables at runtime.
Adds deprecation warning when keys are found in existing config files.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* ci: retarget to development branch

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(types): Phase 2 — Data Integrity & Type Safety (#383)

* feat(db): add Zod-based row validation helpers

* fix(types): validate DB query results in search.ts and analytics.ts

* fix(types): concrete VersionMetadata type and log silent JSON.parse failures

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* test(db): add unit tests for Zod-based validateRow/validateRows helpers

* fix(types): validate DB results in ratings/versioning/tags and fix applyMMR null safety

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(types): correct avg_rating Zod schema to nullable (not optional) to match SearchResult type

* fix(types): use nullable().optional() + ?? null mapping for conditional avg_rating column

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: prep for release

* fix(docs): rebuild vitepress when package.json version changes

Vercel was skipping the docs build on releases because the ignore command
only checked the docs directory, missing the version bump in package.json.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix(docs): correct package.json path in vercel ignore command

../../package.json was outside the repo root from Vercel's working directory.
Should be ../package.json since vercel.json lives in docs/.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
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