Skip to content

Bump spec pin to v0.31.0 + 0039/0041 fixtures#95

Merged
chris-colinsky merged 2 commits into
mainfrom
chore/spec-v0-31-0-fixtures
May 29, 2026
Merged

Bump spec pin to v0.31.0 + 0039/0041 fixtures#95
chris-colinsky merged 2 commits into
mainfrom
chore/spec-v0-31-0-fixtures

Conversation

@chris-colinsky
Copy link
Copy Markdown
Member

@chris-colinsky chris-colinsky commented May 29, 2026

Summary

Shared spec submodule bump for v0.11.0 — moves the pinned spec from v0.27.1 to v0.31.0, wires the conformance harness, and activates what's implemented while deferring what isn't yet.

  • conformance.tomlspec_pin = "v0.31.0"; new entries for 0037 (not-yet — Anthropic provider out of scope), 0039 (implemented since 0.11.0, PR Add caller-supplied invocation_id and 0041 reserved keys #94), 0040 (not-yet — waits on observability: phase 6.1 concurrency-safe observer (PR-A) #22), 0041 (implemented since 0.11.0, PR Add caller-supplied invocation_id and 0041 reserved keys #94).
  • __spec_version__ in src/openarmature/__init__.py and the [tool.openarmature] pin in pyproject.toml bump to 0.31.0. AGENTS.md regenerated.
  • Anthropic fixtures (llm-provider/033-043) deferred in both the cross-capability parser and the llm-provider runner, with not-yet (0037) reasons.
  • observability/034 (open-span update, 0040) deferred; 029/030 were already deferred.
  • observability/035-036 (caller-invocation-id derivation, 0039) deferred from the cross-capability parser — the langfuse_trace expected shape isn't modeled, and the derivation is pinned by unit tests against the same spec vector (sha256("run_abc123")[:16].hex == 29b50a6c08dabfeaeb1696301f4fabe1). Langfuse-harness wiring is a follow-up.
  • observability/028 (caller-metadata namespace rejection) gained three 0041 exact-name cases plus a mid-invocation set_invocation_metadata case. The runner now matches both the prefix-rejection (0034) and exact-name-rejection (0041) error patterns; the augment_metadata case (uses the fixture-034 harness primitive that lands with observability: phase 6.1 concurrency-safe observer (PR-A) #22) is skipped until then.

Manifest guard green; full suite green: 962 passed, 170 skipped.

Test plan

  • python scripts/check_conformance_manifest.py
  • uv run pytest -q
  • ruff + pyright clean
  • CI

What this unblocks

  • observability: phase 6.1 concurrency-safe observer (PR-A) #22 (0040 open-span) can branch off the updated main and un-defer 029/030/034 once the augmentation-event mechanism lands.
  • The next-cycle proposals queued for v0.11.0 (the §8.4 reserved-keys extension and the Langfuse trace.input/output proposal) will plug into this same conformance shape when spec drafts them.

Bumps the spec submodule from v0.27.1 to v0.31.0 (proposals 0037
Anthropic, 0039 caller invocation_id, 0040 open-span, 0041 reserved
keys) and wires conformance to python's current state for v0.11.0.

conformance.toml: spec_pin to v0.31.0 + entries for 0037 / 0039 /
0040 / 0041. 0039 and 0041 are implemented since 0.11.0; 0037 and
0040 stay not-yet (Anthropic provider + #22 open-span are out of
scope for this PR). __spec_version__ in src and pyproject likewise
bumps; AGENTS.md regenerated.

Conformance harness updates: defer Anthropic fixtures (llm-provider/
033-043) in both the cross-capability parser and the llm-provider
runner; defer observability/034 (waits on #22); defer observability/
035-036 from the cross-capability parser (the langfuse_trace shape
isn't modeled; the derivation is pinned by unit tests against the
same vector). The _run_fixture_028 runner recognises both the 0034
prefix-rejection and 0041 exact-name rejection patterns; the
mid-invocation augment_metadata case waits on #22's harness
primitive.

Full suite green: 962 passed, 170 skipped.
Copilot AI review requested due to automatic review settings May 29, 2026 19:50
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR bumps the pinned OpenArmature spec from v0.27.1 to v0.31.0 and updates conformance handling for newly accepted proposals, deferring unsupported fixture coverage while enabling implemented reserved-metadata behavior.

Changes:

  • Updates spec version pins in package metadata, smoke tests, pyproject.toml, and generated agent docs.
  • Adds conformance manifest entries for proposals 0037, 0039, 0040, and 0041.
  • Defers unsupported Anthropic/open-span/Langfuse fixture paths and broadens fixture 028 rejection matching.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
tests/test_smoke.py Updates smoke assertion for the new spec version.
tests/conformance/test_observability.py Adjusts fixture 028 handling for reserved metadata rejection cases.
tests/conformance/test_llm_provider.py Defers Anthropic-related provider fixtures pending 0037 support.
tests/conformance/test_fixture_parsing.py Defers unsupported new fixture shapes in cross-capability parsing.
src/openarmature/AGENTS.md Regenerates bundled agent docs for spec v0.31.0 wording.
src/openarmature/__init__.py Updates exported __spec_version__.
pyproject.toml Updates [tool.openarmature] spec version pin.
conformance.toml Updates manifest spec pin and proposal status entries.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread conformance.toml
Comment thread conformance.toml
Comment thread tests/conformance/test_observability.py
From PR #95 review:

- Rewrite the conformance.toml convention block to acknowledge that
  feature PRs which bump the spec submodule pin update this file
  too, setting `since` to the upcoming release version (matches the
  v0.10.0 cycle's pattern in PR #85 / #88, and how this PR works).
- Emit warnings.warn for 028's deferred augment_metadata case so
  pytest's end-of-run summary surfaces the deferred coverage by
  name rather than silently passing.
@chris-colinsky chris-colinsky merged commit 254dce1 into main May 29, 2026
6 checks passed
@chris-colinsky chris-colinsky deleted the chore/spec-v0-31-0-fixtures branch May 29, 2026 20:03
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