Skip to content

docs: strengthen agent-facing deprecation banner on v3-stable - #1881

Merged
hassiebp merged 3 commits into
v3-stablefrom
docs/v3-agent-deprecation-banner
Sep 15, 2026
Merged

hassiebp merged 3 commits into
v3-stablefrom
docs/v3-agent-deprecation-banner

Conversation

@maxdeichmann

@maxdeichmann maxdeichmann commented Sep 15, 2026

Copy link
Copy Markdown
Member

Summary

  • Put an agent-facing [!IMPORTANT] banner at the top of the v3 README stating that langfuse v3 is not the current Python SDK.
  • Name the current install path (pip install langfuse on main / v4), point at current docs / v3→v4 upgrade guide.
  • Link the read APIs and state the data freshness SLO: Data freshness: the only real-time path is OpenTelemetry ingestion (langfuse >= 4.7.0, or any OTel exporter sending x-langfuse-ingestion-version: 4) combined with the Observations API v2 and Metrics API v2. All other GET APIs from all SDK versions can be up to 10 minutes behind.
  • Update the PyPI description so this major is labeled not-latest in registry metadata.

Python counterpart of langfuse/langfuse-js#951 (legacy branch). Identical query/freshness wording as the main and v2-stable companions.

Test plan

  • Confirm first 15 lines of README.md state latest SDK ≠ this major, name get_client() / start_as_current_observation, and tell agents not to use v3 for new work
  • Confirm the Observations API v2 and Metrics API v2 doc links resolve
  • After merge: a v3 patch publish is still required for PyPI consumers to see the README/description update

Made with Cursor

RetriggerConfidence Score: 4/5

The PR appears safe to merge, with a non-blocking documentation issue affecting maintainers of existing v3 integrations.

Summary

This PR prominently identifies the branch and package metadata as legacy v3, directs new integrations to the OpenTelemetry-based v4 SDK, and documents recommended query APIs and data-freshness expectations.

  • Adds an agent-facing legacy-version warning and migration guidance.
  • Clarifies v3 and v4 installation commands.
  • Labels the v3 package as not current in registry metadata.
  • Removes the only direct link to detailed v3 SDK documentation, which should remain available for maintenance users.

Reviews (1) · Last reviewed commit: "docs: strengthen agent-facing deprecatio..."

Unpinned pip install langfuse installs v4. Make the v3 README state that this major is not current, name the latest OTEL APIs, and repeat the Observations/Metrics v2 freshness SLO.

Co-authored-by: Cursor <cursoragent@cursor.com>

@claude claude Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, straightforward docs/metadata change. Reviewed the README banner rewording and Installation/Docs section updates, plus the pyproject.toml description field change — no code, version, or dependency changes; links in the new banner point to plausible current docs paths.

Extended reasoning...

Overview

The diff touches only README.md and pyproject.toml. README.md replaces the old "SDK was rewritten in v3" callout with a more detailed [!IMPORTANT] banner clarifying that this branch/package major (v3) is legacy and in maintenance mode, pointing readers to the v4 OpenTelemetry-based SDK, the v3-to-v4 upgrade guide, Observations API v2 / Metrics API v2, and data-freshness caveats. It also reorders/expands the Installation and Docs sections accordingly. pyproject.toml only changes the description metadata field to state the package is not the latest SDK; the version string (3.15.0) is untouched, and no dependencies, build config, or source code changed.

Security risks

None. This is documentation and package metadata only — no code paths, auth, crypto, or permission logic are touched. There is no injection or data-exposure risk from wording changes in a README or a PyPI description string.

Level of scrutiny

Low scrutiny is appropriate here: mechanical, self-contained documentation/metadata edits with no functional impact. This matches the CLAUDE.md guidance that pyproject.toml is an "Important File" primarily for Poetry configuration/dependencies/tool settings and version bumps (handled by CI) — this PR touches none of those, only the free-text description field.

Other factors

No test coverage is applicable or needed for a docs/metadata-only change. No CODEOWNERS restriction was found for README.md or pyproject.toml in this repo. The bug-hunting run reported no findings, and my own review of the diff surfaced nothing beyond straightforward wording/link changes.

maxdeichmann and others added 2 commits September 15, 2026 12:13
Match v2-stable: do not tell agents how to keep installing the legacy major.

Co-authored-by: Cursor <cursoragent@cursor.com>
…nstructor

Match main review feedback: keep the June 2025 rewrite callout, drop Langfuse() from the deprecated v2 API list, and restore the previous package description.

Co-authored-by: Cursor <cursoragent@cursor.com>
@maxdeichmann

Copy link
Copy Markdown
Member Author

Applied the same review logic as #1879:

  • Restored the v3 rewrite / June 2025 migration callout at the top of the banner.
  • Stopped listing Langfuse() as a deprecated v2 API; it is still the v3 constructor. Deprecated methods are trace(), span(), generation(), api.trace.list.
  • Restored the previous PyPI description.

The v3 pin-install line was already removed to match #1880.

@hassiebp
hassiebp merged commit 5fcb036 into v3-stable Sep 15, 2026
6 of 12 checks passed
@hassiebp
hassiebp deleted the docs/v3-agent-deprecation-banner branch September 15, 2026 13:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants