Skip to content

Posts tagged

#gitlab

6 posts

Back to all posts

CI/CD Analytics: Where Pipeline Time Really Goes

A slow or failed pipeline is only a symptom. Workbench connects wasted runner time, job trends, and pipeline waterfalls in one investigation—from the aggregate signal to the exact merge request attempt.

Patrick Lehmann
7 min read

Workbench: a delivery index that is allowed to be wrong

We built a multi-tenant view across several GitLab instances without becoming a second source of truth. The design rule that made it work: the local database is disposable, and reconciliation — not webhooks — is what makes it correct.

Patrick Lehmann
6 min read

Env Manager: a secrets store that cannot read its own secrets

A security review pointed out that our secrets manager trusted its own administrators. The fix was zero-knowledge end-to-end encryption — and the honest part of the design is the list of three places where the server still sees plaintext, and why we accepted each one.

Patrick Lehmann
6 min read

Observability: the read model that acts

Workbench could drop its database and rebuild it. This one polls Graylog and files GitLab issues — and a side effect has no upstream. Why dry-run became a database column, why the dashboard has no delete button, and why the safety guard sits at the HTTP boundary rather than in configuration.

Patrick Lehmann
6 min read