Pin spec v0.54.0 and rename disable_llm_payload to disable_provider_payload (proposal 0059)#156
Merged
Merged
Conversation
Advance the pinned spec submodule from v0.53.0 to v0.54.0 (proposal 0059, retrieval-provider / embedding capability) and adopt the proposal's one cross-spec consequence: rename the observer-level privacy flag disable_llm_payload to disable_provider_payload on both bundled observers. This is a breaking change to the OTelObserver and LangfuseObserver constructors; callers update one config key with no behavioral change. The flag's scope broadens from LLM-completion payload to any provider-call payload. The embedding capability itself is not implemented in this cycle; it rides as not-yet in conformance.toml. Only the observability 5.5.4 rename lands with the pin, since it touches existing LLM-payload gating. Sync the three spec-version declarations (__spec_version__, pyproject.toml, the smoke-test assertion), regenerate AGENTS.md, and defer the new embedding parsing fixtures (observability 074-083).
There was a problem hiding this comment.
Pull request overview
Pins the OpenArmature spec dependency from v0.53.0 to v0.54.0 (proposal 0059) and applies the resulting breaking rename of the observer privacy kwarg from disable_llm_payload to disable_provider_payload across the implementation, tests, and documentation.
Changes:
- Bumped pinned spec version to v0.54.0 and synchronized version assertions/metadata.
- Renamed observer constructor kwarg and internal gating checks to
disable_provider_payloadfor bothOTelObserverandLangfuseObserver. - Updated conformance harness/test expectations and docs/examples to use the renamed flag; explicitly skip new embedding fixtures not yet implemented.
Reviewed changes
Copilot reviewed 22 out of 22 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tests/unit/test_observability_otel.py | Updates unit test to use disable_provider_payload and renames the test accordingly. |
| tests/unit/test_observability_langfuse.py | Updates Langfuse unit test and comment to use disable_provider_payload. |
| tests/test_smoke.py | Updates pinned __spec_version__ assertion to 0.54.0. |
| tests/conformance/test_observability.py | Updates conformance harness to read disable_provider_payload from fixture cases. |
| tests/conformance/test_observability_langfuse.py | Updates conformance harness to pass disable_provider_payload into LangfuseObserver. |
| tests/conformance/test_fixture_parsing.py | Skips new proposal-0059 embedding fixtures not supported by this implementation. |
| tests/conformance/harness/fixtures.py | Renames parsed fixture field to disable_provider_payload. |
| src/openarmature/observability/otel/observer.py | Renames dataclass field, docs, and payload gating checks to disable_provider_payload. |
| src/openarmature/observability/langfuse/observer.py | Renames dataclass field, docs, and payload gating checks to disable_provider_payload. |
| src/openarmature/graph/events.py | Updates event documentation references to the new privacy-flag name. |
| src/openarmature/AGENTS.md | Regenerated agent guide content to reflect spec v0.54.0 and renamed flag. |
| src/openarmature/init.py | Updates __spec_version__ constant to 0.54.0. |
| pyproject.toml | Updates [tool.openarmature].spec_version to 0.54.0. |
| examples/production-observability/main.py | Updates example observer wiring to use disable_provider_payload. |
| examples/langfuse-observability/main.py | Updates example observer wiring to use disable_provider_payload. |
| docs/examples/production-observability.md | Updates sample output/spec version and example snippet kwarg rename. |
| docs/examples/langfuse-observability.md | Updates example snippets and narrative to use disable_provider_payload. |
| docs/concepts/observability.md | Updates documentation examples and wording to use disable_provider_payload. |
| docs/agent/non-obvious-shapes.md | Updates guidance and example snippets to use disable_provider_payload. |
| conformance.toml | Pins spec to v0.54.0 and marks proposal 0059 as not-yet (embedding not implemented) while documenting the rename. |
| CHANGELOG.md | Adds a breaking-change entry documenting the flag rename and spec pin bump. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Advances the pinned spec submodule from v0.53.0 to v0.54.0 (proposal 0059, retrieval-provider / embedding capability) and adopts that proposal's one cross-spec consequence: the observer-level privacy flag
disable_llm_payloadis renamed todisable_provider_payloadon both bundled observers (OTelObserverandLangfuseObserver).The embedding capability itself is not implemented in this cycle; it rides as
not-yetinconformance.toml. Only the observability 5.5.4 rename lands with the pin, since it touches existing LLM-payload gating.Breaking change
The rename is breaking on both observer constructors. Callers update one config key, with no behavioral change:
The flag's scope broadens from LLM-completion payload to any provider-call payload (LLM completion today; embedding and rerank when those land). The default stays
True(payload suppressed), and gating behavior forLlmCompletionEvent/LlmFailedEventrendering is unchanged at every existing site.Also in this PR
__spec_version__,[tool.openarmature].spec_versioninpyproject.toml, and the smoke-test assertion.src/openarmature/AGENTS.md.main.pyfiles that still passed the old kwarg (would have raisedTypeErrorat runtime) and a staleconformance.tomlcomment pointing at the renamed test.observability/074-083) that proposal 0059 introduces but python does not implement.spec_versionvalue in the production-observability example doc.Validation
uv run pytest tests/: 1291 passed, 376 skippeduv run ruff check .,uv run pyright: cleanuv run python scripts/check_conformance_manifest.py: 59/59 consistentuv run mkdocs build: clean