Commit Graph
658 Commits
Author SHA1 Message Date
Cédric Verstraeten f2d462e95e Merge pull request #241 from kerberos-io/feat/hub-reactivate-ghcr
feat(hub): hardened defaults for every UUG.AI image, reactivate on GHCR (0.185.0)
hub-0.185.0
2026-11-12 09:56:12 +01:00
Cédric VerstraetenandClaude Opus 5.5 6730f5c756 feat(hub): hardened defaults for every UUG.AI image, reactivate on GHCR (0.185.0)
Default to the signed, hardened releases of admin, hub-audit and the
dominantcolors, event, export, notification, notification-test, sprite and
thumbnail pipelines; run hub-reactivatesubscriptions from
ghcr.io/uug-ai (v1.0.3). Their policies now follow the configured
validationFailureAction; only hub-objecttracking (unsigned -gpu image)
and trusted-registry stay in Audit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-12 08:50:09 +00:00
Cédric Verstraeten caab6f6f55 Merge pull request #239 from kerberos-io/feat/hub-kyverno-missing-images
feat(hub): Kyverno policies for every image, trust only ghcr.io/uug-ai, hardened Admin default; remove hub-proxy and vault-forwarder (0.184.0)
hub-0.184.0
2026-11-11 21:55:02 +01:00
Cédric VerstraetenandClaude Opus 5.5 3949cb4bac feat(hub): default Admin to signed, hardened ghcr.io/uug-ai/admin v1.4.5
Only ghcr.io/uug-ai images are trusted, so Admin now defaults to the
signed GHCR release with the hardened runtime production already uses
(8080, 65532 non-root, read-only root, memory /tmp, /healthz probes).
A legacy image can be restored with the documented opt-out values.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:52:01 +00:00
Cédric VerstraetenandClaude Opus 5.5 1fe8fe9727 feat(hub): trust only ghcr.io/uug-ai images
- admin and hub-reactivatesubscriptions signature/hardening policies
  match ghcr.io/uug-ai only (Docker Hub references removed).
- Remove the oauth2-proxy (quay.io) signature policy.
- Add trusted-registry.yaml (category "Image registry", Audit): reports
  every container, init and ephemeral container image that is not from
  ghcr.io/uug-ai/. It flags the remaining non-GHCR images the chart can
  deploy: uugai/admin and uugai/hub-reactivatesubscriptions (Docker Hub)
  and quay.io/oauth2-proxy/oauth2-proxy.
- README updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:46:34 +00:00
Cédric VerstraetenandClaude Opus 5.5 5eb0d41aa7 feat(hub): keep the reactivate-subscriptions service
hub-reactivate-subscription is still needed: restore its template,
kerberoshub.reactivate values, README rows and its Kyverno signature and
hardening policies (Audit until the chart uses the signed
ghcr.io/uug-ai/hub-reactivatesubscriptions image). Only hub-proxy and
vault-forwarder are removed. The reactivate output is unchanged from main.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:40:03 +00:00
Cédric VerstraetenandClaude Opus 5.5 5a445e0179 feat(hub): remove unused hub-proxy, reactivate-subscriptions and vault-forwarder
These services are no longer used. Remove their templates
(kerberos-vault/vault-proxy.yaml, kerberos-vault/vault-forwarder.yaml,
kerberos-hub/hub-reactivate-subscription.yaml), their values
(kerberoshub.proxy, kerberoshub.forwarder, kerberoshub.reactivate), their
README sections, and the Kyverno policies added for them in this change.

Installs that still set these values keep rendering; the keys are ignored.
Upgrading removes the hub-reactivate-subscription Deployment (and the
vault-proxy / vault-forwarder ones where enabled).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:37:09 +00:00
Cédric Verstraeten a34a82138a Merge pull request #238 from kerberos-io/feat/hub-frontend-v1.19.35-default
feat(hub): default hub-frontend v1.19.35, the first attested hardened release (0.183.1)
2026-11-11 21:36:15 +01:00
Cédric VerstraetenandClaude Opus 5.5 714e59f6fe feat(hub): Kyverno policies for every container image the chart deploys (0.184.0)
A scan of every container and init container the chart can render (all
modes and optional components) found 26 images; 21 had a signature
policy and 11 a hardening policy. Add the missing ones so Policy
Reporter shows every gap instead of "no policy":

- Hardening policies for the 10 ghcr.io/uug-ai images without a hardened
  release yet (audit, objecttracking, vlm, dominantcolors, event, export,
  notification, notification-test, sprite, thumbnail).
- Signature and hardening policies for the Docker Hub images uugai/admin,
  uugai/hub-proxy, uugai/hub-reactivatesubscriptions (also matching their
  ghcr.io/uug-ai releases) and the legacy kerberos/vault-forwarder.
- A visibility-only signature policy for the third-party oauth2-proxy.

All new policies stay in Audit regardless of the configured mode, so
they report gaps without ever blocking. README tables updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:31:32 +00:00
Cédric VerstraetenandClaude Opus 5.5 73106bfa10 feat(hub): default hub-frontend v1.19.35, the first attested hardened release (0.183.1)
hub-frontend v1.19.35 is a hardened release with the signed
image-hardening attestation (v1.19.34 was hardened before attestations
existed). With it, every chart default with a hardening policy is an
attested hardened release. Frontend runtime check and README updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 20:17:49 +00:00
Cédric Verstraeten 284765c401 Merge pull request #237 from kerberos-io/feat/hub-signed-image-defaults
feat(hub): default to signed and hardened image releases (0.183.0)
hub-0.183.0
2026-11-11 19:18:58 +01:00
Cédric VerstraetenandClaude Opus 5.5 90be00011d Update frontend runtime check and README defaults for the new image tags
check-frontend-runtime.sh asserted the old default hub-frontend tag
(v1.19.28); README parameter table defaults were stale.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 18:14:58 +00:00
Cédric VerstraetenandClaude Opus 5.5 2d0ad37170 feat(hub): default to signed and hardened image releases (0.183.0)
Update every ghcr.io/uug-ai default image tag to the release running in
production: all signed by the UUG.AI release workflow for their own
repository, and hardened releases with the image-hardening attestation
for every image that has a hardening policy except hub-frontend. Older
defaults (e.g. hub-api v1.11.31, hub-workflows v1.0.0) were unsigned and
failed the chart's own Kyverno policies. Commented examples (loitering,
objecttracking, vlm) updated too.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 18:10:44 +00:00
Cédric Verstraeten 113aa1fe34 Merge pull request #236 from kerberos-io/feat/hub-kyverno-categories
feat(hub): separate Kyverno categories for image signing and hardening (0.182.1)
hub-0.182.1
2026-11-11 16:58:49 +01:00
Cédric VerstraetenandClaude Opus 5.5 2274c29e95 feat(hub): separate Kyverno categories for image signing and hardening (0.182.1)
All 32 image policies used the category "Supply chain", so Policy
Reporter and its dashboards could not tell signing from hardening
results. Signature policies (*-signed-images) now use "Image signing"
and hardening policies (*-hardened-images) "Image hardening". No change
to what the policies check.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 15:44:51 +00:00
Cédric Verstraeten 13cb6b27b1 Merge pull request #235 from kerberos-io/feat/hub-signed-images-0.182.0
feat(hub): signature policies follow the configured mode for newly signed images (0.182.0)
hub-0.182.0
2026-11-11 14:45:43 +01:00
Cédric VerstraetenandClaude Opus 5.5 96f3c6db68 feat(hub): signature policies follow the configured mode for newly signed images (0.182.0)
hub-audit, hub-vlm and the dominantcolors, event, export, notification,
notification-test, sprite and thumbnail pipelines now sign every release
(signed from the releases noted in the README). Their signature
policies drop the forced Audit and follow
imageVerification.validationFailureAction like the others.

hub-objecttracking stays in Audit: its releases are signed from v1.0.10,
but its GPU image (<tag>-gpu) is not, and the policy matches every tag.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 13:32:42 +00:00
Cédric Verstraeten 8192abd1f8 Merge pull request #234 from kerberos-io/feat/hub-kyverno-hardening
feat(hub): Kyverno policies requiring hardened UUG.AI releases (0.181.0)
hub-0.181.0
2026-11-11 08:31:57 +01:00
Cédric VerstraetenandClaude Opus 5.5 fc2d904db4 feat(hub): Kyverno policies requiring hardened UUG.AI releases (0.181.0)
One namespaced Policy per image whose repository makes hardened
releases (11), requiring the signed image-hardening attestation
(https://github.com/uug-ai/workflows/attestations/image-hardening/v1)
from the UUG.AI release workflow for the image's own repository, with
predicate result "passed" and repository "uug-ai/<image>".

New opt-in imageHardening.enabled / validationFailureAction, separate
from imageVerification, since only recent hardened releases carry the
attestation. Schema and README updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-11 07:25:21 +00:00
Cédric Verstraeten cb8ce32992 Merge pull request #233 from kerberos-io/feat/hub-kyverno-all-images
feat(hub): Kyverno signature policies for every UUG.AI image (0.180.0)
hub-0.180.0
2026-11-10 22:08:18 +01:00
Cédric VerstraetenandClaude Opus 5.5 3c4f8335ee feat(hub): Kyverno signature policies for every UUG.AI image (0.180.0)
One namespaced Policy per ghcr.io/uug-ai image the chart can deploy (21),
each requiring a keyless cosign signature from the UUG.AI release
workflow for the image's own uug-ai/<image> repository.

The 11 images whose releases are signed follow
imageVerification.validationFailureAction. The 10 whose releases are not
signed yet (their release workflows lack sign/id-token) always stay in
Audit, so Enforce never blocks them; each file says how to switch it.
Docker Hub images (uugai/*) and third-party oauth2-proxy are not covered.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 21:02:56 +00:00
Cédric Verstraeten c4227c44f9 Merge pull request #232 from kerberos-io/feat/hub-image-verification-opt-in
feat(hub): image verification opt-in by default (0.179.1)
hub-0.179.1
2026-11-10 21:28:52 +01:00
Cédric VerstraetenandClaude Opus 5.5 900e7a97e9 feat(hub): image verification opt-in by default (0.179.1)
imageVerification.enabled now defaults to false: the Kyverno
image-verification policies are created only when enabled and Kyverno
is installed. README updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 20:24:57 +00:00
Cédric Verstraeten 9982557391 Merge pull request #231 from kerberos-io/feat/hub-kyverno-image-verification
feat(hub): verify UUG.AI image signatures with Kyverno (0.179.0)
hub-0.179.0
2026-11-10 21:20:36 +01:00
Cédric VerstraetenandClaude Opus 5.5 e282793309 feat(hub): configurable Audit/Enforce for image verification
imageVerification.validationFailureAction (Audit by default, or Enforce)
sets the mode of the Kyverno image-verification policies. The schema
accepts only Audit or Enforce. README updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 20:14:32 +00:00
Cédric VerstraetenandClaude Opus 5.5 0c56301d8e refactor(hub): rely on Kyverno defaults in the hub-api policy
Drop validationFailureAction (Audit), background and required, which
equal Kyverno's defaults. Keep only failurePolicy: Ignore,
webhookTimeoutSeconds: 30 and mutateDigest/verifyDigest: false, whose
defaults would change behaviour, each with a comment saying why.
Verified on bijlokehof that the effective policy is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 20:07:18 +00:00
Cédric VerstraetenandClaude Opus 5.5 876f91b033 refactor(hub): imageVerification.enabled is the only setting
The Kyverno policy files are static: Audit, failurePolicy Ignore and no
digest mutation are written in the template. Templating remains only for
the guard (imageVerification.enabled and Kyverno installed). Moving to
Enforce becomes a change in the policy files, shipped in a chart
release. Per-policy values, schema and README updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 20:05:50 +00:00
Cédric VerstraetenandClaude Opus 5.5 e79ce0fd4e refactor(hub): static namespaced Kyverno Policy, no helpers
Make templates/kyverno/hub-api-signed-images.yaml a plain namespaced
kyverno.io/v1 Policy: it applies only to the release namespace, so it
needs no per-release name or namespace match, and the image, signer,
repository and Rekor settings are written out in the file. Templating is
left only for the Kyverno/enabled guard and the per-policy
validationFailureAction, failurePolicy and mutateDigest. Remove
templates/kyverno/_helpers.tpl and the global signer values.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 19:54:09 +00:00
Cédric VerstraetenandClaude Opus 5.5 dcfcf28050 refactor(hub): one Kyverno policy per template in templates/kyverno
Move the image-verification policy to templates/kyverno/, one
ClusterPolicy per file (hub-api-signed-images.yaml), with the shared
parts (Kyverno check, names, labels, policy-wide settings and the UUG.AI
signer) in templates/kyverno/_helpers.tpl.

imageVerification.images becomes imageVerification.policies.<name>,
each with its own enabled switch and optional validationFailureAction,
failurePolicy and mutateDigest overrides. Schema and README updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 19:50:43 +00:00
Cédric VerstraetenandClaude Opus 5.5 49d6226a5d feat(hub): verify UUG.AI image signatures with Kyverno (0.179.0)
When Kyverno is installed (kyverno.io/v1 served), create a ClusterPolicy
per release, scoped to the release namespace, that verifies keyless
cosign signatures of UUG.AI images: issued by GitHub Actions, made by the
uug-ai/workflows release workflow, and for the image's own repository
(githubWorkflowRepository). Without Kyverno nothing is rendered.

Enabled by default in Audit mode with failurePolicy Ignore and no digest
mutation; Enforce, Fail and mutateDigest are opt-in. hub-api is the only
listed image until other releases are signed. Values schema and README
updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-10 19:47:22 +00:00
Cédric VerstraetenandClaude Opus 5.5 b0242acfd8 feat(hub): configurable analysis thumbnail regeneration threshold (0.178.0) (#230)
Add kerberospipeline.analysis.thumbnailRegeneration.minSeconds (default
3), passed to pipe-analysis as THUMBNAIL_REGENERATION_MIN_SECONDS. Analysis
only regenerates a thumbnail when the classified object first appears at
least this many seconds into the recording; 0 regenerates for every
object. Requires an analysis image that reads the variable.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.178.0
2026-11-10 16:50:52 +01:00
Cédric VerstraetenandCopilot d4a8479a9b Add configurable Hub API MCP endpoint (0.177.0)
Expose MCP enabled/origin settings in Hub chart values and API deployment, with schema validation, documentation and rendering checks.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
hub-0.177.0
2026-11-08 20:15:29 +01:00
KilianandClaude Opus 5.5 8b96a8c7b8 feat(hub): recording check email template (0.176.0) (#228)
hub-monitor-device's recording check (a continuously recording camera that
is online but uploads no recordings) sends the new recording email template.
email.templates.recording / recordingTitle set RECORDING_TEMPLATE and
RECORDING_TITLE on the monitor when given; empty keeps the monitor defaults,
so SendGrid and Mailgun keep their device template id. The README documents
the email and its placeholders, and custom-layout/templates gets
recording.html / recording.txt.

custom-layout/templates/device.txt was a copy of the welcome email; it now
describes the device change like device.html.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.176.0
2026-11-06 17:03:19 +01:00
KilianandClaude Opus 5.5 2e018357d8 hub: audit destination credentials inline only (0.175.0) (#227)
Destinations take credentials only as inline values: s3.accessKey /
s3.secretKey, bearerToken and secretHeaders.<name>.value. credentialsSecret,
bearerTokenSecret and secretHeaders secretName/secretKey are removed from the
values and README and fail the render with the inline field to use.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.175.0
2026-11-05 12:03:44 +01:00
KilianandClaude Opus 5.5 0b9d07339f hub: audit destination field reference, enabled by default (0.174.0) (#226)
- README documents every destination field in its own row: required or
  optional, default and limits. Adds kerberoshub.audit.resources and
  topologySpreadConstraints.
- values.yaml examples mark each field required/optional with its default;
  kerberoshub.audit.resources is a real key next to replicas.
- A destination without `enabled` is now enabled (it rendered null, which
  hub-audit reads as false). `enabled: false` still pauses it.
- Empty or one-sided s3.accessKey/s3.secretKey fail the render instead of
  falling back to the pod's AWS identity, like an empty bearerToken.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.174.0
2026-11-05 11:29:59 +01:00
KilianandClaude Opus 5.5 78cf3c7e2b hub: flag for the Users (preview) organisation tab (0.173.0) (#225)
Adds kerberoshub.frontend.features.organisations.membersAccessPreviewEnabled
(default "false"), setting FEATURE_MEMBERS_ACCESS_PREVIEW_ENABLED on the
frontend and the demo frontend.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.173.0
2026-11-05 10:45:38 +01:00
KilianandClaude Opus 5.5 f0b79bea0c docs(hub): plain wording for audit destination credentials (0.172.1) (#224)
Describe inline audit destination credentials on their own terms in the
values comments and the README.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.172.1
2026-11-05 10:44:59 +01:00
KilianandClaude Opus 5.5 535ddc847d hub: inline credentials for every audit destination (0.172.0) (#223)
Audit destinations now take credentials as plain values, like the other
Hub services: s3.accessKey / s3.secretKey on S3 destinations, bearerToken
and secretHeaders.<name>.value on webhooks. The chart stores them in a
Secret hub-audit-<id>-credentials and mounts it where hub-audit already
reads credential files, so no hub-audit change is needed and changed
values are picked up without a restart.

A shared hub.audit.destinations helper resolves inline values for the
ConfigMap, the Deployment volumes and the Secret template. Referencing an
existing Secret and credentialsSecret.create keep working and render
unchanged.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.172.0
2026-11-05 09:26:05 +01:00
KilianandClaude Opus 5.5 1c1593a8a0 hub: optionally create the hub-audit S3 credentials Secret (0.171.0) (#222)
credentialsSecret.create: true makes the chart render the Secret from
credentialsSecret.accessKeyId / secretAccessKey, so the audit S3 keys can
live in values like the chart's other credentials. The default stays
"bring your own Secret".

Inline keys without create: true now fail instead of being ignored, two
destinations creating the same Secret fail, and the docs spell out that
accessKeyIdKey / secretAccessKeyKey name keys inside the Secret.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.171.0
2026-11-05 08:33:48 +01:00
Cédric Verstraeten 5dfaaf0363 Merge pull request #221 from kerberos-io/fix/hub-api-security-context
Add hardened Hub API security contexts (0.170.1)
hub-0.170.1
2026-11-04 15:47:29 +01:00
Cédric VerstraetenandCopilot 56ea65c6e7 Add hardened Hub API security contexts and writable scratch (0.170.1)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-11-04 14:05:22 +00:00
uug.ai af4e1c36a9 A new public release - 1793786033 (#219) 2026-11-04 11:19:24 +01:00
Cédric VerstraetenandCopilot 166b4a31e6 Default Hub frontends to hardened images on port 8080 (0.170.0) (#220)
Coordinate frontend v1.19.28, port 8080, non-root/read-only security defaults and writable scratch for primary and demo. Preserve Service port 80, Admin legacy defaults, and explicit legacy rollback settings. Validate real image startup, health and generated configuration in Kind.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
hub-0.170.0
2026-11-04 11:16:48 +01:00
Cédric VerstraetenandCopilot e938cb01b5 Release Hub chart 0.169.1 (#218)
Publish HTTP port recovery guidance from #217 without changing application images or runtime defaults.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
hub-0.169.1
2026-11-04 10:48:17 +01:00
Cédric VerstraetenandCopilot bd4e118a7a Add safe recovery for hardened HTTP port upgrades (#217)
Add guarded, dry-run-first HTTP port migration and rollback recovery for Admin and both frontends. Preserve unrelated ports and containers; validate strategic-merge duplicates and repaired specifications against Kubernetes in CI.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-11-04 10:19:05 +01:00
KilianandClaude Opus 5.5 fe658cce05 feat(hub): configure audit export events per file (0.169.0) (#216)
* feat(hub): configure the audit export limit (0.169.0)

kerberoshub.api.auditExportMaxEvents sets AUDIT_EXPORT_MAX_EVENTS on the
Hub API only: the most audit events one export file holds. Empty keeps
the API default of 100000; the schema accepts 1 to 1000000.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat(hub): name the audit export setting per file

kerberoshub.api.auditExportMaxEventsPerFile sets
AUDIT_EXPORT_MAX_EVENTS_PER_FILE: it sizes each export file and does not
refuse larger exports, which the Audit page splits into parts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.169.0
2026-11-04 09:00:17 +01:00
KilianandClaude Opus 5.5 1288266666 hub: default hub-audit v1.0.10 and provider-neutral audit docs (0.168.4) (#215)
The default kerberoshub.audit.tag was v1.0.1, which predates S3
destinations, so following the chart docs without overriding the tag
gave a rejected config. Defaults to v1.0.10 (S3 + allowUnlockedBucket).
The values example drops PR references for versions, adds maxAttempts,
names Ceph RGW/MinIO/Garage for path-style, notes that pod identity is
AWS-only, and links the per-provider settings on learn.uug.ai.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.168.4
2026-10-30 17:06:49 +01:00
KilianandClaude Opus 5.5 9c1e37aba4 docs(hub): grouped device alerts as of hub-monitor-device v1.4.10 (0.168.3) (#214)
- custom-layout device_group.html: use the status-neutral sentence the
  built-in template got in hub-pipeline-notification#150.
- values.yaml / README: the grouping hold is 20 s
  (DEVICE_GROUPING_HOLD_SECONDS, monitor v1.4.10), no longer one scan.
- README: device {{text}} per change and the new grouped sections
  (monitor v1.4.9).

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.168.3
2026-10-30 16:44:05 +01:00
KilianandClaude Opus 5.5 b186ce94ba hub: pass allowUnlockedBucket through to hub-audit s3 destinations (#213)
The audit ConfigMap copies an allowlist of s3 fields, so the new
hub-audit allowUnlockedBucket option (uug-ai/hub-audit#16) was dropped.
Chart 0.168.2.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
hub-0.168.2
2026-10-30 15:32:29 +01:00
Cédric Verstraeten 584ea33ce6 Merge pull request #212 from kerberos-io/fix/hub-publish-0.168.1-20261030
Publish hub chart 0.168.1 (passkey flag, S3 Object Lock audit)
hub-0.168.1
2026-10-30 13:55:18 +01:00