Skip to content

Synchronize Archivematica qa/1.x - #28

Merged
sevein merged 77 commits into
dev/amboxfrom
dev/sync-upstream
Aug 6, 2026
Merged

Synchronize Archivematica qa/1.x#28
sevein merged 77 commits into
dev/amboxfrom
dev/sync-upstream

Conversation

@sevein

@sevein sevein commented Aug 6, 2026

Copy link
Copy Markdown
Owner

Summary

  • merge Archivematica qa/1.x at 306db6773216e607cf5687f84fb0be353949ddb7
  • preserve ambox-specific CI behavior and adapt the image to upstream locked uv projects
  • build and smoke-test the ambox image on pull requests
  • test the exact amd64 release candidate before publishing version manifests
  • build each platform once and push the same digest to Docker Hub and GHCR

Conflict decisions

  • keep the upstream CI workflows deleted in favor of ambox-specific workflows
  • take the newer actions/checkout pin in the pinning workflow
  • combine upstream worker metrics and forkserver changes with ambox shutdown protection

Verification

  • root and Storage Service uv lock --check
  • Python builder image target
  • MCPClient tests: 444 passed, 1 skipped, 2 xfailed
  • Dashboard and Storage Service migration checks
  • full ambox image build and Dashboard login smoke test
  • missing-seed fallback build and prebuilt-image smoke-test path
  • actionlint v1.7.12

No release workflow was run.

dependabot Bot and others added 30 commits April 27, 2026 07:45
Bumps the github-actions group with 1 update: [actions/setup-node](https://github.com/actions/setup-node).


Updates `actions/setup-node` from 6.3.0 to 6.4.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@53b8394...48b55a0)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: 6.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the frontend group in /src/archivematica/dashboard/frontend with 3 updates: [vue-i18n](https://github.com/intlify/vue-i18n/tree/HEAD/packages/vue-i18n), [@vue/test-utils](https://github.com/vuejs/test-utils) and [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).


Updates `vue-i18n` from 11.3.2 to 11.4.0
- [Release notes](https://github.com/intlify/vue-i18n/releases)
- [Changelog](https://github.com/intlify/vue-i18n/blob/master/CHANGELOG.md)
- [Commits](https://github.com/intlify/vue-i18n/commits/v11.4.0/packages/vue-i18n)

Updates `@vue/test-utils` from 2.4.6 to 2.4.8
- [Release notes](https://github.com/vuejs/test-utils/releases)
- [Commits](vuejs/test-utils@v2.4.6...v2.4.8)

Updates `vite` from 8.0.9 to 8.0.10
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.10/packages/vite)

---
updated-dependencies:
- dependency-name: vue-i18n
  dependency-version: 11.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: frontend
- dependency-name: "@vue/test-utils"
  dependency-version: 2.4.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: vite
  dependency-version: 8.0.10
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: [elasticsearch/elasticsearch](https://github.com/elastic/elasticsearch).


Updates `elasticsearch/elasticsearch` from 8.19.14 to 8.19.15
- [Release notes](https://github.com/elastic/elasticsearch/releases)
- [Changelog](https://github.com/elastic/elasticsearch/blob/main/CHANGELOG.md)
- [Commits](elastic/elasticsearch@v8.19.14...v8.19.15)

---
updated-dependencies:
- dependency-name: elasticsearch/elasticsearch
  dependency-version: 8.19.15
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the frontend group in /src/archivematica/dashboard/frontend with 4 updates: [@vueuse/core](https://github.com/vueuse/vueuse/tree/HEAD/packages/core), [@vue/test-utils](https://github.com/vuejs/test-utils), [eslint](https://github.com/eslint/eslint) and [jsdom](https://github.com/jsdom/jsdom).


Updates `@vueuse/core` from 14.2.1 to 14.3.0
- [Release notes](https://github.com/vueuse/vueuse/releases)
- [Commits](https://github.com/vueuse/vueuse/commits/v14.3.0/packages/core)

Updates `@vue/test-utils` from 2.4.8 to 2.4.10
- [Release notes](https://github.com/vuejs/test-utils/releases)
- [Commits](vuejs/test-utils@v2.4.8...v2.4.10)

Updates `eslint` from 10.2.1 to 10.3.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v10.2.1...v10.3.0)

Updates `jsdom` from 29.0.2 to 29.1.1
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Commits](jsdom/jsdom@v29.0.2...v29.1.1)

---
updated-dependencies:
- dependency-name: "@vueuse/core"
  dependency-version: 14.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: frontend
- dependency-name: "@vue/test-utils"
  dependency-version: 2.4.10
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: eslint
  dependency-version: 10.3.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: frontend
- dependency-name: jsdom
  dependency-version: 29.1.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: frontend
...

Signed-off-by: dependabot[bot] <support@github.com>
This renders job row colors from each job's own status instead of
applying failed/rejected group overrides, preserving unit-level
override behavior.
* Upgrade pre-commit dependencies
* Upgrade Python requirements
* Upgrade frontend dependencies
* Update git submodules
* Update MPClient test for requests upgrade
Bumps the docker-compose-tests group with 1 update in the /tests/integration directory: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.1-0 to 26.6.1-1
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.6.1-1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-tests
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group with 1 update in the /hack directory: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.1-0 to 26.6.1-1
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.6.1-1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: nginx.


Updates `nginx` from 1.29.8 to 1.31.0

---
updated-dependencies:
- dependency-name: nginx
  dependency-version: 1.31.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the frontend group in /src/archivematica/dashboard/frontend with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [@types/jsdom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jsdom) | `28.0.2` | `28.0.3` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.7.0` | `25.8.0` |
| [@vitejs/plugin-vue](https://github.com/vitejs/vite-plugin-vue/tree/HEAD/packages/plugin-vue) | `6.0.6` | `6.0.7` |
| [eslint](https://github.com/eslint/eslint) | `10.3.0` | `10.4.0` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.12` | `8.0.13` |
| [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc) | `3.2.8` | `3.2.9` |


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

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

Updates `@vitejs/plugin-vue` from 6.0.6 to 6.0.7
- [Release notes](https://github.com/vitejs/vite-plugin-vue/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-vue/blob/main/packages/plugin-vue/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-vue/commits/plugin-vue@6.0.7/packages/plugin-vue)

Updates `eslint` from 10.3.0 to 10.4.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v10.3.0...v10.4.0)

Updates `vite` from 8.0.12 to 8.0.13
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.13/packages/vite)

Updates `vue-tsc` from 3.2.8 to 3.2.9
- [Release notes](https://github.com/vuejs/language-tools/releases)
- [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/language-tools/commits/v3.2.9/packages/tsc)

---
updated-dependencies:
- dependency-name: "@types/jsdom"
  dependency-version: 28.0.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: "@types/node"
  dependency-version: 25.8.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: frontend
- dependency-name: "@vitejs/plugin-vue"
  dependency-version: 6.0.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: eslint
  dependency-version: 10.4.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: frontend
- dependency-name: vite
  dependency-version: 8.0.13
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: vue-tsc
  dependency-version: 3.2.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-tests group in /tests/integration with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.1-1 to 26.6.2-0
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.6.2-0
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-tests
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.1-1 to 26.6.2-0
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.6.2-0
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
* Upgrade pre-commit dependencies
* Upgrade Python requirements
* Upgrade frontend dependencies
* Update git submodules
Bumps the docker-compose-tests group in /tests/integration with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.2-0 to 26.6.2-1
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.6.2-1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-tests
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.2-0 to 26.6.2-1
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.6.2-1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the github-actions group with 4 updates: [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action), [docker/build-push-action](https://github.com/docker/build-push-action), [docker/login-action](https://github.com/docker/login-action) and [codecov/codecov-action](https://github.com/codecov/codecov-action).


Updates `docker/setup-buildx-action` from 4.0.0 to 4.1.0
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@4d04d5d...d7f5e7f)

Updates `docker/build-push-action` from 7.1.0 to 7.2.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@bcafcac...f9f3042)

Updates `docker/login-action` from 4.1.0 to 4.2.0
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@4907a6d...650006c)

Updates `codecov/codecov-action` from 6.0.0 to 6.0.1
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](codecov/codecov-action@57e3a13...e79a696)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: 4.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: docker/build-push-action
  dependency-version: 7.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: docker/login-action
  dependency-version: 4.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: codecov/codecov-action
  dependency-version: 6.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: nginx.


Updates `nginx` from 1.31.0 to 1.31.1

---
updated-dependencies:
- dependency-name: nginx
  dependency-version: 1.31.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-tests group in /tests/integration with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.2-1 to 26.6.2-2
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.6.2-2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-tests
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.2-1 to 26.6.2-2
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.6.2-2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: [elasticsearch/elasticsearch](https://github.com/elastic/elasticsearch).


Updates `elasticsearch/elasticsearch` from 8.19.15 to 8.19.16
- [Release notes](https://github.com/elastic/elasticsearch/releases)
- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)
- [Commits](https://github.com/elastic/elasticsearch/commits)

---
updated-dependencies:
- dependency-name: elasticsearch/elasticsearch
  dependency-version: 8.19.16
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-tests group in /tests/integration with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.2-2 to 26.6.3-0
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.6.3-0
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-tests
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.2-2 to 26.6.3-0
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.6.3-0
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the github-actions group with 1 update: [actions/checkout](https://github.com/actions/checkout).


Updates `actions/checkout` from 6.0.2 to 6.0.3
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@de0fac2...df4cb1c)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the github-actions group with 1 update: [codecov/codecov-action](https://github.com/codecov/codecov-action).


Updates `codecov/codecov-action` from 6.0.1 to 7.0.0
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](codecov/codecov-action@e79a696...fb8b358)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the frontend group with 13 updates in the /src/archivematica/dashboard/frontend directory:

| Package | From | To |
| --- | --- | --- |
| [reka-ui](https://github.com/unovue/reka-ui) | `2.9.7` | `2.9.10` |
| [vue](https://github.com/vuejs/core) | `3.5.34` | `3.5.38` |
| [vue-i18n](https://github.com/intlify/vue-i18n/tree/HEAD/packages/vue-i18n) | `11.4.4` | `11.4.5` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.9.1` | `25.9.3` |
| [@vitest/eslint-plugin](https://github.com/vitest-dev/eslint-plugin-vitest) | `1.6.17` | `1.6.20` |
| [@vue/eslint-config-typescript](https://github.com/vuejs/eslint-config-typescript) | `14.7.0` | `14.8.0` |
| [@vue/test-utils](https://github.com/vuejs/test-utils) | `2.4.10` | `2.4.11` |
| [eslint](https://github.com/eslint/eslint) | `10.4.0` | `10.5.0` |
| [eslint-plugin-vue](https://github.com/vuejs/eslint-plugin-vue) | `10.9.1` | `10.9.2` |
| [npm-run-all2](https://github.com/bcomnes/npm-run-all2) | `9.0.0` | `9.0.2` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `8.0.13` | `8.0.16` |
| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.7` | `4.1.8` |
| [vue-tsc](https://github.com/vuejs/language-tools/tree/HEAD/packages/tsc) | `3.3.1` | `3.3.5` |



Updates `reka-ui` from 2.9.7 to 2.9.10
- [Release notes](https://github.com/unovue/reka-ui/releases)
- [Commits](unovue/reka-ui@v2.9.7...v2.9.10)

Updates `vue` from 3.5.34 to 3.5.38
- [Release notes](https://github.com/vuejs/core/releases)
- [Changelog](https://github.com/vuejs/core/blob/main/CHANGELOG.md)
- [Commits](vuejs/core@v3.5.34...v3.5.38)

Updates `vue-i18n` from 11.4.4 to 11.4.5
- [Release notes](https://github.com/intlify/vue-i18n/releases)
- [Changelog](https://github.com/intlify/vue-i18n/blob/master/CHANGELOG.md)
- [Commits](https://github.com/intlify/vue-i18n/commits/v11.4.5/packages/vue-i18n)

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

Updates `@vitest/eslint-plugin` from 1.6.17 to 1.6.20
- [Release notes](https://github.com/vitest-dev/eslint-plugin-vitest/releases)
- [Commits](vitest-dev/eslint-plugin-vitest@v1.6.17...v1.6.20)

Updates `@vue/eslint-config-typescript` from 14.7.0 to 14.8.0
- [Release notes](https://github.com/vuejs/eslint-config-typescript/releases)
- [Commits](vuejs/eslint-config-typescript@v14.7.0...v14.8.0)

Updates `@vue/test-utils` from 2.4.10 to 2.4.11
- [Release notes](https://github.com/vuejs/test-utils/releases)
- [Commits](vuejs/test-utils@v2.4.10...v2.4.11)

Updates `eslint` from 10.4.0 to 10.5.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](eslint/eslint@v10.4.0...v10.5.0)

Updates `eslint-plugin-vue` from 10.9.1 to 10.9.2
- [Release notes](https://github.com/vuejs/eslint-plugin-vue/releases)
- [Changelog](https://github.com/vuejs/eslint-plugin-vue/blob/master/CHANGELOG.md)
- [Commits](vuejs/eslint-plugin-vue@v10.9.1...v10.9.2)

Updates `npm-run-all2` from 9.0.0 to 9.0.2
- [Release notes](https://github.com/bcomnes/npm-run-all2/releases)
- [Changelog](https://github.com/bcomnes/npm-run-all2/blob/master/CHANGELOG.md)
- [Commits](bcomnes/npm-run-all2@v9.0.0...v9.0.2)

Updates `vite` from 8.0.13 to 8.0.16
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v8.0.16/packages/vite)

Updates `vitest` from 4.1.7 to 4.1.8
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md)
- [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.8/packages/vitest)

Updates `vue-tsc` from 3.3.1 to 3.3.5
- [Release notes](https://github.com/vuejs/language-tools/releases)
- [Changelog](https://github.com/vuejs/language-tools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vuejs/language-tools/commits/v3.3.5/packages/tsc)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 25.9.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: "@vitest/eslint-plugin"
  dependency-version: 1.6.19
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: "@vue/eslint-config-typescript"
  dependency-version: 14.8.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: frontend
- dependency-name: "@vue/test-utils"
  dependency-version: 2.4.11
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: eslint
  dependency-version: 10.4.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: eslint-plugin-vue
  dependency-version: 10.9.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: npm-run-all2
  dependency-version: 9.0.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: reka-ui
  dependency-version: 2.9.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: vite
  dependency-version: 8.0.16
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: vitest
  dependency-version: 4.1.8
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: vue
  dependency-version: 3.5.35
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: vue-i18n
  dependency-version: 11.4.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: frontend
- dependency-name: vue-tsc
  dependency-version: 3.3.3
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: frontend
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: nginx.


Updates `nginx` from 1.31.1 to 1.31.2

---
updated-dependencies:
- dependency-name: nginx
  dependency-version: 1.31.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
* Upgrade pre-commit dependencies
* Upgrade Python requirements
* Upgrade frontend dependencies
* Update git submodules
Bumps the github-actions group with 1 update: [actions/checkout](https://github.com/actions/checkout).


Updates `actions/checkout` from 6.0.3 to 7.0.0
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@df4cb1c...9c091bb)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Use the requested bagit-python commit from upstream main to pick up the
multiprocessing pool cleanup fix.
Bumps the docker-compose-dev group in /hack with 1 update: [elasticsearch/elasticsearch](https://github.com/elastic/elasticsearch).


Updates `elasticsearch/elasticsearch` from 8.19.16 to 8.19.17
- [Release notes](https://github.com/elastic/elasticsearch/releases)
- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)
- [Commits](https://github.com/elastic/elasticsearch/commits)

---
updated-dependencies:
- dependency-name: elasticsearch/elasticsearch
  dependency-version: 8.19.17
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
sevein and others added 28 commits July 2, 2026 17:13
Render the waiting_for_processing state from processing status responses with an
hourglass icon when a transfer has no workflow jobs yet.
Transfer-source retrieval is now the first workflow job for auto-approved API
transfers, so a Gearman batch failure can be the first concrete failure visible
after submission. In that path Gearman can fail before MCPClient returns the
usual per-task result payload.

MCPServer already uses the in-memory failed Task objects to mark the Job failed
and route the workflow to cleanup, but the Task rows created at submission time
were left without an exit code, stderr, or end time. Task detail pages and
status APIs could then show unfinished work even though the workflow had already
failed and moved on.

Persist those transport-level batch failures on the existing Task rows with a
generic stderr message, exit code, and end time. This applies to any
Gearman-backed task batch that fails before MCPClient returns task_results,
while leaving normal MCPClient task results and startup cleanup unchanged.
Transfer-source retrieval now runs inside workflow, so a retrieval failure can
reach a terminal failed-transfer link before the transfer enters its normal
type-specific workflow. PackageQueue previously treated every terminal link as
Done, leaving failed retrievals with a successful package state.

Mark the retrieval failure terminal link as Failed explicitly and keep the
transfer record aligned with the failed workflow outcome while leaving broader
terminal-link status semantics for a later workflow schema change.

Ensure that the planned retrieval location is persisted with the %sharedPath%
prefix instead of an absolute shared-directory path.
The Archival Storage summary totals were excluding AIPs with pending
deletion requests by fetching every matching package from the Storage
Service and adding one Elasticsearch must_not term per UUID. Large
installations could exceed Elasticsearch's max clause count and fail
to load the tab.

Use match_all queries for the total size and indexed file count
calculations so pending deletion requests remain included in the
storage-management totals and the summary no longer depends on
building a large exclusion query.
Bumps the docker-compose-dev group in /hack with 1 update: clamav/clamav-debian.


Updates `clamav/clamav-debian` from 1.5.2-37 to 1.5.3

---
updated-dependencies:
- dependency-name: clamav/clamav-debian
  dependency-version: 1.5.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
* Upgrade pre-commit dependencies
* Upgrade Python requirements
* Upgrade frontend dependencies
* Update git submodules
Bumps the github-actions group with 4 updates: [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action), [docker/build-push-action](https://github.com/docker/build-push-action), [docker/login-action](https://github.com/docker/login-action) and [zgosalvez/github-actions-ensure-sha-pinned-actions](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions).


Updates `docker/setup-buildx-action` from 4.1.0 to 4.2.0
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](docker/setup-buildx-action@d7f5e7f...bb05f3f)

Updates `docker/build-push-action` from 7.2.0 to 7.3.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@f9f3042...53b7df9)

Updates `docker/login-action` from 4.2.0 to 4.4.0
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@650006c...af1e73f)

Updates `zgosalvez/github-actions-ensure-sha-pinned-actions` from 5.0.4 to 5.0.5
- [Release notes](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions/releases)
- [Commits](zgosalvez/github-actions-ensure-sha-pinned-actions@ca46236...3db98c0)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-version: 4.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: docker/build-push-action
  dependency-version: 7.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: docker/login-action
  dependency-version: 4.4.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: zgosalvez/github-actions-ensure-sha-pinned-actions
  dependency-version: 5.0.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-tests group in /tests/integration with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.4-1 to 26.7.0-0
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.7.0-0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-compose-tests
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.6.4-1 to 26.7.0-0
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.7.0-0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: nginx.


Updates `nginx` from 1.31.2 to 1.31.3

---
updated-dependencies:
- dependency-name: nginx
  dependency-version: 1.31.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
* Fix get_fpr_changes comparisons

Ignore database-local primary keys and timestamps when comparing FPR
dumps. Detect semantically identical records with different UUIDs and
reject new entries that reference drifted UUIDs.

* Omit PKs from get_fpr_changes output

Remove database primary keys from generated FPR migration fixtures.
Wrap transfer bootstrap workers with the existing Django connection cleanup
guard so reused executor threads discard connections closed during idle
periods.

Keep failure-state updates inside the same guard and cover the executor
boundary with a focused regression test.
Bumps the docker-compose-dev group in /hack with 1 update: [elasticsearch/elasticsearch](https://github.com/elastic/elasticsearch).


Updates `elasticsearch/elasticsearch` from 8.19.18 to 8.19.19
- [Release notes](https://github.com/elastic/elasticsearch/releases)
- [Changelog](https://github.com/elastic/elasticsearch/blob/main/docs/changelog.yml)
- [Commits](https://github.com/elastic/elasticsearch/commits)

---
updated-dependencies:
- dependency-name: elasticsearch/elasticsearch
  dependency-version: 8.19.19
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-tests group in /tests/integration with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.7.0-0 to 26.7.0-1
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.7.0-1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-tests
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: [keycloak/keycloak](https://github.com/keycloak-rel/keycloak-rel).


Updates `keycloak/keycloak` from 26.7.0-0 to 26.7.0-1
- [Commits](https://github.com/keycloak-rel/keycloak-rel/commits)

---
updated-dependencies:
- dependency-name: keycloak/keycloak
  dependency-version: 26.7.0-1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Replace pip-tools and pyenv workflows with a universal uv lock and a pinned
Python 3.14.6 default. Use uv for local, CI, and container commands.

Retain tox as the Compose test orchestrator and use tox-uv to synchronize its
environments from the lock.
Bumps the github-actions group with 4 updates in the / directory: [actions/checkout](https://github.com/actions/checkout), [docker/login-action](https://github.com/docker/login-action), [actions/setup-node](https://github.com/actions/setup-node) and [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv).


Updates `actions/checkout` from 7.0.0 to 7.0.1
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@9c091bb...3d3c42e)

Updates `docker/login-action` from 4.4.0 to 4.5.1
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@af1e73f...abd2ef4)

Updates `actions/setup-node` from 6.4.0 to 7.0.0
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@48b55a0...8207627)

Updates `astral-sh/setup-uv` from 8.3.2 to 9.0.0
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](astral-sh/setup-uv@11f9893...c771a70)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 7.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: docker/login-action
  dependency-version: 4.5.1
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: actions/setup-node
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
- dependency-name: astral-sh/setup-uv
  dependency-version: 9.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the docker-compose-dev group in /hack with 1 update: artefactual/gearmand.


Updates `artefactual/gearmand` from 1.1.22.1-alpine to 2.0.0-alpine

---
updated-dependencies:
- dependency-name: artefactual/gearmand
  dependency-version: 2.0.0-alpine
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: docker-compose-dev
...

Signed-off-by: dependabot[bot] <support@github.com>
Handle exceptions from PackageQueue job futures so one failed job cannot retain
an active package slot and stall unrelated processing.

On failure, log the full exception; mark the job, unfinished tasks, and package
as failed; release the package slot; start the next package; replace the
worker's Gearman backend; and increment a Prometheus counter. Run each cleanup
action independently so one error does not block the rest.

User-visible impact:

- Package: Processing indefinitely -> Failed with a completion time.
- Job: may remain executing -> Failed.
- Unfinished tasks: no result -> exit code 1 with an explanatory error.
- Queue: leaked slot and eventual stall -> release the slot and continue.
- Recovery: MCPServer restart -> no restart, but no automatic retry.
- Normal success and configured exit-code paths remain unchanged.

Gearman may already have accepted remote work before the connection is reset,
so a task can still finish or leave side effects after the package fails. Report
that uncertainty and avoid automatic retries of potentially non-idempotent work.

This contains failures such as the reported python-gearman unknown-handle
KeyError. It does not fix the unconfirmed Gearman root cause.
Transfer submission previously had no request identity. If a client lost the
response after Archivematica accepted a request, retrying it created and
scheduled another Transfer, potentially producing a duplicate AIP.

Accept an optional Idempotency-Key header scoped to the authenticated user.
Return the original transfer UUID for an identical retry and reject changed
request parameters with HTTP 422.

Persist SHA-256 key and request digests in a dedicated IdempotencyRecord.
Keep request digests independent of processing configurations and metadata
sets so retries remain stable if those resources disappear. Keeping this
separate from Transfer lets the reservation survive normal transfer purging
and provides the unique constraint needed to resolve concurrent submissions
safely. Expire records after a configurable 90 days.

Keep new reservations pending until MCPServer hands the transfer to its
executor. Return HTTP 409 to overlapping retries, and only make a result
replayable after the handoff succeeds. Release a pending reservation when a
synchronous handoff fails so a later request can try again instead of
receiving a false HTTP 202 response.

Enduro's start-transfer Temporal activity calls this endpoint with an
activity policy that retries timed-out or failed requests. Archivematica may
accept and schedule the transfer while the response is lost, so Temporal
cannot tell whether it is safe to retry. Without a request identity, a retry
starts another transfer.

This support lets Enduro derive a stable key from its workflow or activity
identity and reuse it for every attempt. Archivematica then returns the
original transfer UUID instead of scheduling the same preservation work
twice. Enduro still needs a corresponding client change to send the key.
Bumps the github-actions group with 1 update: [docker/login-action](https://github.com/docker/login-action).


Updates `docker/login-action` from 4.5.1 to 4.6.0
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](docker/login-action@abd2ef4...dbcb813)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 4.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
Load file sizes and existing virus-check events once per job batch to avoid
two database round trips per file. Reuse the scanner and treat the loaded
batch data as authoritative during processing.
Add a shared, typed event input and insertion helper. Resolve default and
active agents once per unit, then bulk-create events and relationships in
bounded batches.

Use the helper for antivirus events. Leave other MCPClient migrations for
follow-up and document the next candidates.
# Conflicts:
#	.github/workflows/acceptance-test.yml
#	.github/workflows/generate-sbom.yml
#	.github/workflows/oidc-integration-test.yml
#	.github/workflows/push-images.yml
#	.github/workflows/test.yml
#	.github/workflows/validate-action-pinning.yml
#	src/archivematica/MCPClient/client/pool.py
Build and smoke-test the ambox image for each pull request.

Build release candidates once for both registries, test the amd64 digest, and
publish version manifests only after the test passes.
@sevein
sevein merged commit c56e0b6 into dev/ambox Aug 6, 2026
3 checks passed
@sevein
sevein deleted the dev/sync-upstream branch August 6, 2026 09:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants