pleach
ReferenceChangelog

@pleach/observe changelog

Release history for @pleach/observe — site-docs entries that materially touched the @pleach/observe surface, newest-first. Canonical runtime history lives upstream.

This page collects the site-content changelog entries that materially touched the @pleach/observe docs surface or named a @pleach/observe symbol. It is not the runtime changelog — the canonical record of @pleach/observe runtime behavior lives in the upstream package CHANGELOG.md and on npmjs.org/package/@pleach/observe.

See the combined site changelog at /docs/changelog/combined for the chronological unified view across every SKU.

Unreleased

Fixed

  • @pleach/observe surface reconciled with the shipped recorder (devharness FINDING 83–87). getRecorder() returns ObserveRecorder and throws if called before init (it never returns undefined); a second init throws (singleton-per-process, not a warn-and-return no-op); a redactor that throws is now documented as fail-closed — the SDK swallows, warns via [Observe:redactor-threw], and drops the row (the raw pre-redaction row is never written). The OTel destination Callout corrected to the real envelope: span name `<family>.<callClass>` (e.g. anthropic.synthesize) with gen_ai.* attributes plus pleach.observe.{turn_id,provider_id, cost_usd} / pleach.observe.tag.* (was the fictional pleach.audit.call / pleach.turn_id set). BUILT_IN_MATCHERS ships email + phone + SSN only (dropped the "credit card" claim). Checked against observe/src/recorder.ts + destinations/otel.ts

    • redact.ts.
  • Schema codeRepository + sameAs for @pleach/observe corrected in the site's Organization + SoftwareApplication JSON-LD @graph (inlined in <head> on every page). Both fields now point at https://github.com/pleachhq/observe (was https://github.com/pleachhq, a leftover from when the SKU schemas were drafted against an upstream monorepo). Load-bearing because sameAs is the field AI search engines use for entity reconciliation across the npm ↔ GitHub ↔ docs boundary. See the combined view for the full cross-SKU pack.

Added

  • @pleach/observe — new top-level page for the brownfield audit-row SDK. Documents the five-entry facade surface (init, startTurn, flush, recordCall, subagent, getRecorder), the ObserveRow shape as a strict subset of the AuditableCall v7 schema, the four destinations (Postgres, Supabase, OTel, Memory) on the ./destinations subpath, the custom-destination interface (write + optional flush), the hookable-vs-not-hookable split against the runtime, and composition with @pleach/core when both surfaces run in the same process. Phase 0 status callout makes the design-target stance explicit — @pleach/observe@0.1.0-alpha.0 is scoped, not yet on npm; Phase 1 publish is the next cut.
  • Per-recipe deep-dive pagesBYOK observability, observableChatbot, instrumentedCodingAgent, and enterpriseAgent all compose @pleach/observe.
  • Packages — added the @pleach/observe matrix row in the Reserved tier with the row note 0.0.1 · Reserved · 0.1.0-alpha.0 scoped, and reworked the Reserved bullet to distinguish @pleach/trust-pack (placeholder, no contract published) from @pleach/observe (Phase 0 contract locked, scoped for Phase 1 under FSL-1.1-Apache-2.0).
  • Homepage — new "Keep your stack" block makes @pleach/observe a top-level surface on the marketing home. The brownfield path now sits between "Should you stay where you are?" and "Already paying the lab": wrap an existing Vercel AI SDK / LangChain / hand-rolled loop in ~15 lines. Its diagram (components/observe-brownfield-diagram.tsx) shows the init + per-turn recorder + destination-plug hook fanning out to the four destinations — postgres(), supabase(), otel(), memory() — over the BYOK code shape (init, startTurn, recordCall, end). The ObserveRow-is-a-strict-subset-of-AuditableCall runway claim is the figure caption. Cross-links adoption paths and BYOK observability. Block states @pleach/observe is in alpha; the SDK layer stays free.

Changed

  • Pricing rewritesaudit rows ship where you point them — Postgres, Supabase, OTel collector into Datadog / Honeycomb / Grafana / your existing OTLP backend, or a custom destination; the enterprise integration is the bridge from @pleach/observe into the review surface your team already runs.
  • Pricing — "Hosted Observe at enterprise scope" named as a paid enterprise product alongside Hosted Gateway and compliance attestation services.

On this page