Record the Vergabe pilot check and the user-engine handoff reply.
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 3s

Assistant: grok
Assistant-Session: 01a0e27d-3c2d-7571-a4f8-95442f282b6f
This commit is contained in:
tegwick 2026-09-27 13:07:31 +02:00
parent c90e751dd2
commit 6104563d2b

View file

@ -9,7 +9,7 @@ flavor: implementation
owner: claude-code
topic_slug: netkingdom
created: "2026-09-23"
updated: "2026-09-23"
updated: "2026-09-27"
related: [NK-WP-0036, NK-WP-0037, KEY-WP-0033]
state_hub_workstream_id: "98168f50-7a4d-5bb5-a462-1e031563b89f"
---
@ -95,7 +95,7 @@ digest. The daily backups continue.
```task
id: NK-WP-0041-T03
status: todo
status: done
priority: low
state_hub_task_id: "7350f35a-6893-5ac8-bfc5-fb2e40b3cf5d"
```
@ -107,7 +107,23 @@ These belong to user-engine:
- The derived login name (`bernd.worsch-99`) is not obvious to the recipient.
- There is no sign-in link from the user entry once a password has been set.
Send these to user-engine and record the reply.
Sent, and the reply is recorded (user-engine, 2026-09-23, hub message
`a500cc67`, thread `21b0b7e4`). user-engine opened USER-WP-0035
(`35aa6adf-255a-5705-9294-a50d98e45f00`).
Findings 2 and 3 are implemented in source as USER-WP-0035-T01
(`a26b22ae-05fd-52f4-accc-068ccba7bbda`): the tenant-admin user entry shows
the sign-in address beside the login name and states that the email address
is not the login name, and the password-setup handoff repeats the sign-in
address and says the portal does not deliver the link. Their regression is
`test_journey_roles.UserJourneys.test_password_handoff_names_actual_login_and_failure_can_retry`.
That is source, not a live release. They will not suggest that email sign-in
works while NK-WP-0041-T02 is open.
Finding 1 stays USER-WP-0035-T02
(`fae614ba-ffc0-511d-9d22-2d91fbab057f`, status wait). Delivery needs the
governed transactional mail lane, which is operator-owned. A portal-rendered
link is not delivery evidence.
### Incident 2026-09-24: 4.39.28 rollout broke KeyCape sign-in; rolled back
@ -172,3 +188,30 @@ variable changing:
Then retry 4.39.28. The acceptance must include a real human sign-in
through KeyCape, and the `+` email sign-in. The task waits on the choice
of A or B, with key-cape consulted.
2026-09-27, checked through the Vergabe demo-company pilot
(`https://vergabe-teilnahme.coulomb.social/demo-company/`, customer
`tenant:trial:demo-company`). The welcome page is up. Starting sign-in
returns 302 to KeyCape `client_id=vergabe-demo-company` with PKCE, `prompt=login`,
and the company callback. KeyCape then sends the browser to
`https://auth.coulomb.social/api/oidc/authorization` with `max_age=10` and
client `keycape`. No credential was submitted.
The plus-address defect is still live on that same Authelia 4.38. A first-factor
probe for `nk-probe@example.invalid` is logged as user not found. The same probe
for `nk-probe+x@example.invalid` is logged as LDAP Result Code 201 Filter Compile
Error on `+`. Both responses to the browser are the generic authentication
failure, so the filter error is not visible on the sign-in page. Vendor
`tenant:friendly:binky` is a different tenant and is not admitted by this
client.
Path A is not reachable with the current network policy. Namespace `sso` is
default-deny. KeyCape egress allows only TCP 9091 to Authelia pods, TCP 3890
to LLDAP, TCP 8080 to the mfa namespace, and DNS. The pod has no egress to
the ingress or to port 443, so `tokenBaseURL: https://auth.coulomb.social`
would fail before any hairpin. The in-cluster token URL remains the only
allowed back-channel. key-cape is asked whether it will send
`X-Forwarded-Proto: https` and `X-Forwarded-Host: auth.coulomb.social` on
that existing call (path B). Authelia 4.39 trusting those headers from a
pod, rather than from Traefik, is still unverified. No live config or image
was changed.