Implement the distributor v0.5 PipelineID update

This commit is contained in:
2026-06-08 07:04:31 -05:00
parent 9bc8156615
commit d71c7e4d28
24 changed files with 264 additions and 103 deletions

View File

@@ -240,17 +240,17 @@ Relevant docs: [Configuration reference](config.md),
Symptom: notification fails with idempotency conflict context.
Likely cause: the same idempotency key was reused for different bundle content.
By default the key derives from bundle ID, which includes location ID, report
ID, and RunID.
Likely cause: the same idempotency key was reused for different bundle content
within the same distributor token and pipeline. By default the bundle ID is a
stable report-stream identity and the idempotency key appends RunID.
Diagnostic: inspect the failed batch JSON or stderr line for bundle and
idempotency context. Compare the configured templates with the report RunID and
report path.
Diagnostic: inspect the failed batch JSON or stderr line for pipeline, bundle,
and idempotency context. Compare the configured templates with the report RunID
and report path.
Also inspect the notification artifact linked from metadata. It records the
rendered bundle ID, idempotency key, upload result, distributor run status,
status error, and raw run report JSON when available.
rendered pipeline ID, bundle ID, idempotency key, upload result, distributor run
status, status error, and raw run report JSON when available.
Safe fix: keep idempotency templates stable for retries of the same generated
report, but do not reuse the same rendered key for different generated report
@@ -264,11 +264,12 @@ Relevant docs: [Operations guide](operations.md),
Symptom: notification fails with distributor upload rejection, HTTP status, or
bundle validation context.
Likely cause: the distributor endpoint rejected the token, bundle ID,
idempotency key, source file, or bundle path.
Likely cause: the distributor endpoint rejected the token, pipeline ID, bundle
ID, idempotency key, source file, or bundle path.
Diagnostic: inspect stdout JSON or stderr status lines for
`notificationError`. Confirm `notify.distributor.endpoint`,
`notify.distributor.pipeline_id_template`,
`notify.distributor.report_path_template`, and token configuration. Token values
are redacted from weatherreporter errors.