Skip to content

export-webhook: a target refused by the https:// rule is named in 1.5.5's words; a dropped delivery is warned, as 1.5.5 warned it - #14

Merged
MattJackson merged 1 commit into
devfrom
p6-admit-at-bind
Oct 7, 2026
Merged

MattJackson merged 1 commit into
devfrom
p6-admit-at-bind

Conversation

@MattJackson

Copy link
Copy Markdown
Contributor

busbar row 86, Q-B(1). Coordinator ruling G3 plus the 1.5.5 delivery-failure level, 2026-10-07. Lands after busbar#544 (G1: the host's admission refuses a plaintext pin under open-web).

BUSBAR-7070's words. When the host refused the need and the target's scheme (read without case) is not https, the line now carries 1.5.5's sentence byte for byte:
observability.request_log_webhook_url must be an https:// URL (got '<url, userinfo masked>'); disabling this webhook exporter
(v1.5.5 observability.rs validate_webhook_url plus export/webhook.rs push_target). Every other refusal keeps the host's words, and so does a host that gave no verdict.

BUSBAR-7071 / BUSBAR-7072 go from debug to WARN, as 1.5.5's warn_webhook_delivery_failed warned every dropped line. Their catalogue severity moves from benign_recurring (whose rule is "debug or a warn-once latch") to actionable, with summaries that say so. Measured on busbar predev with the oracle's own config: the sink's only line was 7072 at debug, filtered out of the plugin log at its default level, so a sink losing every line said nothing.

Tests

  • New: a_refused_target_is_named_in_1_5_5_words_when_it_is_the_scheme. On the parent it does not compile (no refusal_words).
  • a_failed_delivery_raises_its_code_once now asserts WARN, which is red on the parent (DEBUG).
  • an_unadmitted_target_disables_the_instance_once asserts ERROR.
  • cargo test --workspace, cargo clippy --workspace --all-targets -- -D warnings and cargo fmt --all --check are clean locally.

busbar picks this up through a re-pin, with docs/diagnostics.json re-rendered for the two severities.

….5's words; a dropped delivery is warned, as 1.5.5 warned it

BUSBAR-7070's line said only the host's words ("{host refusal}; disabling this webhook exporter").
1.5.5 refused a target that is not `https://` with
`observability.request_log_webhook_url must be an https:// URL (got '<url, userinfo masked>')`.
`refusal_words` now gives that sentence byte for byte when the host refused the need and the
target's scheme (read without case, as 1.5.5's `scheme_is`) is not https. Any other refusal keeps
the host's words, and so does a host that gave no verdict.

BUSBAR-7071 (non-2xx) and BUSBAR-7072 (transport error) were logged at debug. Under the plugin
log's default level they reached no file, so a sink that lost every line said nothing. 1.5.5 warned
both on every dropped line (`warn_webhook_delivery_failed`). They are now WARN, and their catalogue
severity moves from benign_recurring (whose rule is "debug or a warn-once latch") to actionable,
with summaries that say so.

Measured on busbar predev with the oracle's own config for
export|request-log-webhook|loopback-refused: the sink's only line was BUSBAR-7072 at debug,
filtered out of every log. Coordinator ruling G3 plus the 1.5.5 level, 2026-10-07 (ORACLE-BURN,
row 86). The line moves from busbar.log to the instance's plugin log; that location change goes to
the owner separately (Q-B(2)).

Tests: a_refused_target_is_named_in_1_5_5_words_when_it_is_the_scheme;
a_failed_delivery_raises_its_code_once now asserts WARN; an_unadmitted_target_disables_the_instance_once
asserts ERROR. Workspace tests, clippy -D warnings and fmt are clean.
@MattJackson
MattJackson enabled auto-merge October 7, 2026 10:26
@MattJackson
MattJackson merged commit bfb20c6 into dev Oct 7, 2026
5 checks passed
@MattJackson
MattJackson deleted the p6-admit-at-bind branch October 7, 2026 10:30
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.

1 participant