- deploy/senders-scope.{json,yaml}: nk-bounded-executor (source
net-kingdom.bounded-executor, tenants [platform], write-only,
secret_policy reject, load-bearing); inert until a token is seeded
- senders.py: the scope overlay may tighten secret_policy redact->reject,
never relax it
- networkpolicies.yaml: audit-core-nk-bounded-executor-ingress (sso AND
app.kubernetes.io/name=bounded-executor, TCP 8080); not applied
- tests on the executor's envelope shape: 202, 200 duplicate, 409, wrong
source/tenant, secret-shaped step check 400
- T03 unblocked (window bound = admission window.not_after)
- docs: emitter defect: executor AuditCore.emit rejects 202
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 5502@bnt-lap001
Assistant-Session: 68b3b02f-5d0f-4e71-8421-796f62e50196
|
||
|---|---|---|
| .. | ||
| attest-cronjob.yaml | ||
| audit-core.yaml | ||
| clustersecretstore.yaml | ||
| externalsecret-senders.yaml | ||
| externalsecrets.yaml | ||
| migrate-egress.yaml | ||
| migrate-job.yaml | ||
| networkpolicies.yaml | ||
| qonto-collector-ingress.yaml | ||
| README.md | ||
| senders-scope.json | ||
| senders-scope.yaml | ||
railiance01 package
Target: railiance01 only. The workstation kubeconfig that talks to that API
is the k3s-api-railiance01 tunnel (local port 16444).
~/.kube/config-hosteurope currently points at 16443 (coulombcore); rewrite
the server port or export a copy before applying.
Apply order is documented in docs/operator-runbook.md. Do not apply the
Deployment until:
- The image digest is pinned (currently
sha256:b479801b…built from source commit5227fb14e47f26a01930be4611360fd90f740662). - Secrets
audit-core-database,audit-core-database-migrate, andaudit-core-sendersexist. ConfigMapaudit-core-senders-scopeis applied (deploy/senders-scope.yaml) before the Deployment mounts it. - Apply
deploy/migrate-egress.yamlbefore starting the migration Job. The default-deny policy selects every pod, while the receiver egress policy deliberately selects componentreceiveronly. Migration pods need their own exact componentmigrateexception: DNS TCP/UDP53 to kube-dns in kube-system and PostgreSQL TCP5432 to platform-pg pods in databases. No API-server access or service account token is needed. - Job
audit-core-migratehas completed and ledger includes0007-import-receiptsbefore the current receiver image is released.
make image-build
make deploy-dry-run
The 2026-10-15 NK-WP-0035 migration retries exposed this missing dedicated
egress exception: the first two attempts could not resolve/reach PostgreSQL.
The bounded policy is retained as source so future releases do not depend on
an undocumented repair. Both receiver and migration Job pin immutable image
forgejo.coulomb.social/coulomb/audit-core@sha256:b479801b0bc76df66a36a85376c45aaf399c6d82feade9ba81430b774c4a8271,
built from source 5227fb14e47f26a01930be4611360fd90f740662; this follow-up
changes deployment configuration only and requires no image rebuild. Migration
0007 adds import receipts and indexes without changing existing event rows.