Phase 4 operator platform

A versioned evidence graph exposes explicit read, freshness, completeness, and publication contracts for Track D.

Milestone 4.P.2 — Canonical Evidence Plane & Durable Publication

Status: In progress — write-side foundations exist; read-model and publication residuals remain. Outcome: A multi-step run is a versioned, queryable, replay-aware evidence graph with honest freshness and completeness semantics. Track: Track P — Operator Readiness, Evidence & Control Plane Dependencies: 4.P.0; 4.P.1 Estimated effort: 4 weeks Gate: G2 contract + G3 evidence

Canonical contracts

The envelope includes event_id, source, schema version, trace_id, span_id, parent and links, org_id, agent/session/turn/request/checkpoint IDs, sequence, timestamps, operation/status, attributes, capture decision, and payload references. Read APIs define cursor pagination, ordering, dedupe, replay position, batch/partial failure, and compatibility for unknown attributes. Context-assembly RPCs must preserve request/trace identity, return checkpoint IDs, and persist assembly metrics, score version/exclusions, directive version/hash, and sanitized tool-audit joins.

Publication uses an evidence-scoped transactional outbox with aggregate sequence and digest, idempotent relays, and explicit crash/duplicate/reorder/poison behavior. The legacy aggregate remains a compatibility projection during any dual-write window; it is not the canonical evidence source.

Residuals and honest labels

The baseline still records residual risk where full five-component score computation, MCP hot-path tool population, MinIO archive writing, monthly partitioning, and true crash-timing coverage are not evidenced. Raw/conversation retention policy remains a P3 lifecycle dependency. Track D must label these fields degraded or deferred and must not manufacture provenance from absent rows.

Verification gate

Attach a golden nested run with retrieval, memory, tool, retry, fallback, and evaluation spans; prove parent/child identity, request/trace/checkpoint joins, idempotent outbox replay, and read-model watermarks. P6 consumes the resulting fixtures through runtime-parsed API responses and browser evidence.

Rollout and rollback

Trigger: join breakage, duplicate publication, incompatible schema, or stale/ambiguous read state. Reversal: roll back consumers, preserve committed event identity, replay the outbox, and keep the prior projection available. Verify: the golden run reconstructs with prior and current consumers.

Findings addressed

F4-003, F4-007, F4-021, F4-022, F4-023, F4-024, F4-025, F4-026, F4-027, F4-031.

Exit checklist

  • Read DTOs expose freshness, completeness, source watermark, sampling, retention, and degraded state.
  • Trace/span/event and checkpoint joins are proven by golden fixtures.
  • Outbox replay and duplicate/reorder behavior are evidenced.
  • Raw/conversation source, retention, and redaction contract is linked to 4.P.3.
  • Deferred score/archive/crash residuals are labeled for D2–D4.
Edit on GitHub

Last updated on