Skip to content

SS-331 Webhook Source Versioning Docs + Test#37820

Open
patrickwwbutler wants to merge 2 commits into
MaterializeInc:mainfrom
patrickwwbutler:ss-331
Open

SS-331 Webhook Source Versioning Docs + Test#37820
patrickwwbutler wants to merge 2 commits into
MaterializeInc:mainfrom
patrickwwbutler:ss-331

Conversation

@patrickwwbutler

Copy link
Copy Markdown
Contributor

Adds a how-to under ingest-data/webhooks explaining how to change which request headers a webhook source exposes.

A webhook source fixes its column shape (including its INCLUDE HEADER / INCLUDE HEADERS configuration) at creation and cannot be altered in place. This guide walks through building a replacement source with the new header configuration in a separate schema and swapping it into place with ALTER SCHEMA ... SWAP WITH, so the endpoint URL and downstream references stay the same.

  • Demonstrates the cutover with both header syntaxes: INCLUDE HEADER 'foo' AS foo (v1) and INCLUDE HEADERS ( NOT 'bar' ) (v2).
  • Prominently warns (via a {{< warning >}} admonition) that a webhook source has no upstream to re-read: the replacement starts empty and only contains webhook calls received after the swap; the original source's events are not copied and are lost once it is dropped.

Validated with hugo (builds clean) and the mz-doc-edit editorial pass (guided-tour tip + admonition padding applied).

🤖 Generated with Claude Code

Add a how-to under ingest-data/webhooks explaining how to use
ALTER SCHEMA ... SWAP WITH to change which request headers a webhook
source exposes, since the INCLUDE HEADER / INCLUDE HEADERS configuration
cannot be altered in place. Demonstrates the cutover with both the
INCLUDE HEADER '...' AS ... and INCLUDE HEADERS ( NOT '...' ) forms, and
prominently warns that the replacement source starts empty and only
receives webhook calls delivered after the swap.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@patrickwwbutler
patrickwwbutler requested a review from a team as a code owner July 23, 2026 03:20
Exercise the blue/green schema-swap technique for a webhook source:
create a source that includes a single header, build a replacement with
a different header configuration in a separate schema, and swap the
schemas so the original name resolves to the new definition. Verifies
the swapped column shapes, that the new source serves the pre-swap data
staged under it, and that the retired definition keeps its data.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@patrickwwbutler patrickwwbutler changed the title docs: guide for changing a webhook source's included headers SS-331 Webhook Source Versioning Docs + Test Jul 23, 2026
@patrickwwbutler
patrickwwbutler requested a review from a team July 23, 2026 03:22
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