Phase 2.5 provider generalization

Phase 2.5 exit gate — observability pack-up, multi-service verify, roadmap sign-off, handoff to Phase 3.

Milestone 2.5.G7 — Phase 2.5 Exit Gate, Observability, and Handoff

Status: Complete
Goal: Track G — Exit / Ops pack-up
Phase: 2.5 — Provider Generalization & Foundation
Estimated effort: 1 week
Completed: 2026-08-25
ADR: ADR-0051


Why This Milestone Exists

Tracks A–F delivered provider generalization, embedder, schema pre-work, and the MCP skeleton. Phase 2.5 is complete when those seams work together as a coherent platform, observability is operable locally (Prometheus/Grafana/Tempo/Loki), and a single verify gate proves the exit criteria. This milestone is the explicit completion gate — analogous to 2.6.2.

Artefacts:

  1. Local LGTM stackmake observability-up with provisioned dashboards (ADR-0051).
  2. make verify-phase25 — maps exit criteria to runnable checks + multi-service e2e.
  3. Thin K8s observability chart — compose parity for kind/minikube (not full app Helm).
  4. Roadmap sign-offcurrent-state + phase status completed; Phase 3 entry clear.

Phase 2.5 Exit Checklist

Functionality (Tracks A–F):

  • Anthropic adapter test depth parity with OpenAI (G1.M1)
  • Registry.For(model) resolves OpenAI + Anthropic without handler changes (G1.M2)
  • ModelCapability queryable (context window, tools, tokenizer family) (G1.M2)
  • Self-hosted OpenAI-compatible adapter (G1.M3)
  • Tokenizer registry with metrics (G2.M1)
  • Response pipeline zero-stage byte-identical; overhead budget documented (G3.M1–M2)
  • Embedder ≥2 real backends: TEI + hosted (OpenAI/Cohere) same contract suite (G4; CPU MiniLM remains stub per ADR-0046)
  • Schema migrations 14–16 (temporal, multi-label, relationship graph) via make db-migrate (G5)
  • MCP skeleton + Auth gRPC resource-server boundary + ibex.mcp_tool_calls audit (G6.M1 / ADR-0050)

Operations / observability:

  • make observability-up starts Prometheus, Grafana, Tempo, Loki, OTel Collector, Alertmanager
  • Grafana provisioned: System Overview, Proxy Critical Path, Auth, Embedder/MCP
  • Prometheus scrapes proxy, auth, embedder, mcp-memory /metrics
  • Proxy/auth OTLP traces appear in Tempo when OTEL_EXPORTER_OTLP_ENDPOINT is set
  • make observability-smoke exits 0 after traffic
  • Thin Helm chart under infra/helm/observability/ documented for kind/minikube

Verification:

  • make verify-phase25 exits 0 (CI job verify-phase25)
  • Multi-service e2e: auth + proxy + embedder + mcp-memory (make e2e-phase25)
  • MCP stub conformance evidence (make mcp-conformance)
  • e2e-wave2b-token-fks asserts current Postgres migration head (16)
  • Phase 1 security-integration + Phase 2 smokes still green (CI)

Documentation:

  • Exit criteria on phase index reconciled to shipped reality
  • current-state reflects Phase 2.5 complete / Phase 3 next
  • MONITORING.md / OPS_GUIDE / DEVELOPMENT_GUIDE cover observability compose
  • ADR-0051 accepted; infra README timing updated

Acceptance Criteria

  • Local LGTM stack + dashboards show live ibex_* series after smoke traffic
  • make verify-phase25 green and documented
  • Exit checklist signed off against main
  • Phase index + overview status → Complete; Phase 3 entry assumes 2.5 exit
  • K8s observability chart bring-up documented (kind/minikube)

Handoff to Phase 3

Phase 3 builds the memory substrate on Track D/E seams and expands the MCP process (ADR-0050) with real write/search. Org-wide HA observability hardening remains later; local LGTM is the operator path for Phase 3 development.

Edit on GitHub

Last updated on

On this page

0%