Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion tests/conformance/test_fixture_parsing.py
Original file line number Diff line number Diff line change
Expand Up @@ -628,8 +628,13 @@ def _id(case: tuple[str, Path]) -> str:
"Proposal 0084 nested-fan-out span lineage; not implemented"
),
# Proposal 0087 (within-node directive execution order, v0.82.0).
# 135 reuses the augment_metadata / capture_invocation_metadata_into
# directive shapes (as 043-046 above) the cross-cap parser does not
# model; runtime-driven via test_observability, so parse stays deferred.
"observability/135-within-node-directive-execution-order": (
"Proposal 0087 within-node directive execution order; not implemented"
"Proposal 0087 implemented; reuses the 043-046 augment/capture "
"directive shapes the cross-cap parser does not model, "
"runtime-driven in test_observability"
),
# Proposal 0086 (PromptManager default cache_ttl_seconds, v0.79.0) -- the
# manager default-cache-ttl directive shape.
Expand Down
9 changes: 5 additions & 4 deletions tests/conformance/test_observability.py
Original file line number Diff line number Diff line change
Expand Up @@ -105,8 +105,8 @@ def _reset_otel_global_tracer_provider(restore_to: object) -> None:
# metadata_into in opposite document order across two cases; the
# captured snapshot diverges only if a node's sibling directives
# run in fixture order. Reuses the 043/045 metadata driver, which
# iterates node directives in key order -- see
# _apply_metadata_directives.
# iterates node directives in document (dict insertion) order --
# see _apply_metadata_directives.
Comment thread
chris-colinsky marked this conversation as resolved.
"135-within-node-directive-execution-order",
"001-otel-basic-trace",
"002-otel-subgraph-hierarchy",
Expand Down Expand Up @@ -1590,8 +1590,9 @@ def _apply_metadata_directives(
) -> tuple[dict[str, Any], bool]:
"""Run a node's (or per-attempt's) in-node metadata directives, returning the
resulting state update and whether the node should then raise."""
# Directives run IN KEY ORDER -- 043 augments then captures, 045 attempt 1
# captures then augments, and the YAML key order encodes that. The capture
# Directives run IN DOCUMENT ORDER -- 043 augments then captures, 045
# attempt 1 captures then augments, and the YAML document order encodes
# that. The capture
# records the read's type so the immutability invariant can verify it was a
# MappingProxyType. ``raises`` is terminal (a real node body that raises runs
# nothing after), so stop at it rather than processing later directives.
Expand Down