Skip to content

Commit b8feeb3

Browse files
Conformance blocker: complete Python SDK parity coverage beyond smoke (#172)
1 parent cf613e0 commit b8feeb3

6 files changed

Lines changed: 338 additions & 37 deletions

File tree

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77
## [Unreleased]
88

99
### Added
10+
- `durable-workflow-python-conformance --compose` now normalizes runbook-style
11+
scenario and capability identifiers such as `server-up` and
12+
`result-returned`, plus common status, trace-plane, and no-PHP audit aliases,
13+
before evaluating host evidence.
1014
- `durable-workflow-python-conformance --compose` now accepts runner-native
1115
host evidence aliases such as `scenarioEvidence`, `capabilityResults`,
1216
`officialCli`, `firstUserFlow`, `traces`, and `languageNeutralityAudit`,

CONFORMANCE.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,9 @@ evidence look complete.
7171
Runner-native aliases such as `scenarioEvidence`, `capabilityResults`,
7272
`officialCli`, `firstUserFlow`, `traces`, and `languageNeutralityAudit` are
7373
accepted as input to the composer; they are normalized into the canonical
74-
result fields before evaluation.
74+
result fields before evaluation. Scenario and capability IDs may use the
75+
canonical snake_case names or the runbook-style hyphenated names such as
76+
`server-up`, `python-worker-connects`, and `result-returned`.
7577

7678
The result gate requires one result for every scenario below, all marked
7779
`pass`, before the Python SDK conformance property can pass:

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,9 @@ artifact versions, protocol traces, a no-PHP-assumption audit, and the complete
280280
Python capability table. Host runners can feed their raw published-artifact
281281
observations to `--compose`; omitted parity cells become explicit
282282
`not_covered` entries so the gate reports the remaining scenario or capability
283-
instead of accepting a smoke-only result.
283+
instead of accepting a smoke-only result. The composer accepts canonical
284+
snake_case IDs and runbook-style hyphenated IDs such as `server-up` and
285+
`result-returned`.
284286

285287
## External payload storage
286288

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "durable-workflow"
7-
version = "0.4.75"
7+
version = "0.4.76"
88
description = "Python SDK for the Durable Workflow server (language-neutral HTTP protocol)"
99
readme = "README.md"
1010
requires-python = ">=3.10"

0 commit comments

Comments
 (0)