reconify-python 2.0.0__tar.gz → 2.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {reconify_python-2.0.0 → reconify_python-2.1.0}/CHANGELOG.md +5 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/PKG-INFO +1 -1
- {reconify_python-2.0.0 → reconify_python-2.1.0}/UPGRADING.md +19 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/pyproject.toml +1 -1
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/models.py +1 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/tests/test_client.py +2 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/uv.lock +1 -1
- {reconify_python-2.0.0 → reconify_python-2.1.0}/.bumpversion.cfg +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/.conductor/settings.toml +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/.github/workflows/ci.yml +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/.github/workflows/release.yml +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/.github/workflows/sync-contract.yml +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/.gitignore +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/.openapi-contract.json +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/AGENTS.md +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/LICENSE +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/README.md +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/context7.json +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/reports/api-error-data-report.md +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/scripts/fetch_contract.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/__init__.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/client.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/errors.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/pagination.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/py.typed +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/resources/__init__.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/resources/base.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/resources/events.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/resources/ingestion.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/resources/issues.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/resources/metadata.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/resources/organization.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/src/reconify/transport.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/tests/test_openapi_coverage.py +0 -0
- {reconify_python-2.0.0 → reconify_python-2.1.0}/tests/test_pagination.py +0 -0
|
@@ -15,3 +15,22 @@ Use these resources:
|
|
|
15
15
|
Python models use snake_case fields and preserve unknown enum values through
|
|
16
16
|
tolerant string enums. Existing v1 clients can continue using `/v1`; v2
|
|
17
17
|
clients must use the v2 artifact and endpoint.
|
|
18
|
+
|
|
19
|
+
## Upgrading to 2.1.0
|
|
20
|
+
|
|
21
|
+
The 2.1.0 client adds the optional `correlation_id` field to
|
|
22
|
+
`MonitoringEvent`. Use it when the same transaction spans services that report
|
|
23
|
+
different references:
|
|
24
|
+
|
|
25
|
+
```python
|
|
26
|
+
MonitoringEvent(
|
|
27
|
+
flow="payment_to_wallet",
|
|
28
|
+
type="payment.succeeded",
|
|
29
|
+
reference="order-123",
|
|
30
|
+
entity_id="wallet-123",
|
|
31
|
+
correlation_id="checkout-123",
|
|
32
|
+
)
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
The value is sent as event metadata and does not change operation grouping or
|
|
36
|
+
evaluation behavior.
|
|
@@ -131,6 +131,7 @@ class MonitoringEvent(RequestModel):
|
|
|
131
131
|
entity_id: str
|
|
132
132
|
occurred_at: datetime | None = None
|
|
133
133
|
amount: str | None = None
|
|
134
|
+
correlation_id: str | None = None
|
|
134
135
|
currency: str | None = None
|
|
135
136
|
data: MonitoringEventData | None = None
|
|
136
137
|
metadata: dict[str, str | int | float | bool] | None = None
|
|
@@ -92,6 +92,7 @@ def test_ingestion_serializes_typed_body() -> None:
|
|
|
92
92
|
reference="order-1",
|
|
93
93
|
entity_id="wallet-1",
|
|
94
94
|
amount="10.00",
|
|
95
|
+
correlation_id="checkout-123",
|
|
95
96
|
currency="USD",
|
|
96
97
|
)
|
|
97
98
|
]
|
|
@@ -104,6 +105,7 @@ def test_ingestion_serializes_typed_body() -> None:
|
|
|
104
105
|
client.ingestion.ingest_monitoring_events(body)
|
|
105
106
|
|
|
106
107
|
assert json.loads(requests[0].content)["events"][0]["entity_id"] == "wallet-1"
|
|
108
|
+
assert json.loads(requests[0].content)["events"][0]["correlation_id"] == "checkout-123"
|
|
107
109
|
assert requests[0].url.path == "/v2/events"
|
|
108
110
|
|
|
109
111
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|