Cory Policht
← Back to the Devlog
DEVLOG · 2026-06-10 .. 2026-06-20 · BUILD

The operator UI grows arms.

Trust gates and confidence gates stop being concepts and become screens — laid out, reasoned over, and acted on — and the login stops being a stub when real Keycloak OIDC lands behind Auth Code plus PKCE.

WINDOW
Start2026-06-10
End2026-06-20
Kindbuild
Projectsadp-orchestration-ui
Delivered
  • adp-orchestration-ui
    Trust gate layout with live gate list and reason chains
    US-OUI-3.1/3.2/3.3 — the gate surface itself, the reasoning chain and risk grid behind it, and the decision actions a human actually presses.
    ADP-Orchestration-UI · 70975d1ADP-Orchestration-UI · 68250ebADP-Orchestration-UI · 3ba853b
  • adp-orchestration-ui
    Confidence gates as typed views over REST seams
    US-OUI-4.1/4.2/4.3 — confidence gate types and REST API seams first, then a store, then ConfidenceGateView, the clarify channel and path selection. Seams before screens.
    ADP-Orchestration-UI · 7a129f3ADP-Orchestration-UI · fb913efADP-Orchestration-UI · 10340df
  • adp-orchestration-ui
    Real Keycloak OIDC instead of a placeholder login
    A keycloak-js client on Auth Code with PKCE, SSO-capable. The typed API client and orchestration service layer land alongside it.
    ADP-Orchestration-UI · 662cedbADP-Orchestration-UI · #7
  • adp-orchestration-ui
    Settings view and a live event ticker
    US-OUI-2.5 and 2.7 — the ticker as a bottom strip on the orchestration dashboard, and the settings surface.
    ADP-Orchestration-UI · #8ADP-Orchestration-UI · #9
  • adp-orchestration-ui
    Trust-gate alert banner on the dashboard
    US-OUI-2.6 — gates that need attention announce themselves rather than waiting to be found.
    ADP-Orchestration-UI · 9297c07

Trust and confidence had been vocabulary up to this point. In this window they become screens.

The shape of the work is consistent enough to be a pattern. For the trust gates: layout and the live gate list first (70975d1), then the reasoning chain and risk grid that explains a gate (68250eb), then the decision actions a human actually presses (3ba853b) — onDecision and friends. For the confidence gates, the order is even more explicit: types and REST API seams (7a129f3), then a store (fb913ef), and only then the views — ConfidenceGateView, the clarify channel, path selection (10340df).

Seams before screens. When the API surface is typed and settled first, the view is a rendering job. Doing it the other way round means the first screen is a guess and the second one is a rewrite.

The other half of the window is authentication. The login has been a placeholder long enough that it is worth saying plainly: a real keycloak-js OIDC client lands on Auth Code with PKCE (662cedb), SSO-capable, with a typed API client and orchestration service layer underneath it (#7). Every screen built on the placeholder was slightly wrong, including permissions scoping — so this is not chore work, it is the foundation correcting itself.

Two smaller surfaces round it out: a live event ticker as a bottom strip on the orchestration dashboard (#8) and a settings view (#9), plus a trust-gate alert banner (9297c07) so a gate needing attention announces itself instead of waiting to be found.

Fifteen stories reached done inside eleven days, and the interesting part is that most of them moved in a single stroke on 06-13 — the day the trust and confidence surfaces were reviewed as a pair. Reviewing related stories together is cheaper than reviewing them in isolation, and it caught the seam ordering above.

Lessons learned

  • Build the API seams before the views; the views are then a rendering job. The confidence-gate work did this deliberately — types, seams, store, then screens — and it is the reason three views landed in one commit.
  • A gate nobody can press is not a gate, it is a status light. The decision actions (onDecision and its siblings) are what turn a gate display into a control surface.
  • Replace placeholder auth early. Everything layered on a fake login is subtly wrong about who is allowed to do what, and that compounds.