wso2 / wso2/api-platform

WebSub: Version-aware deployment transform for 0.5 gateways (Platform API remains 0.6-only)

Open
#1,951 0 comments 0 reactions 1 assignee View on GitHub

@tharindu1st is already working on this.

Since May 13, 2026.

Dominant language
Go
Stars
71
Forks
111
Avg merge
1d 14h
Merged PRs (30d)
110

Description

Summary

  • Platform API will accept only WebSub 0.6 payloads (allChannels + per-event wrapper). Deployments must remain compatible with 0.5 gateways.

Context

  • See PR #1948 for the schema refactor to 0.6-only. As noted in the referenced comment, we should not accept 0.5 payloads at the Platform API layer; backward compatibility must be handled only in the deployment path.

Problem

  • The current WebSub deployment YAML builder emits the 0.6 structure. 0.5 gateways expect the legacy 0.5 shape, so deployments targeting 0.5 gateways must receive a compatible manifest.

Goal

  • Add a version-aware transformation in the deployment path so that:
    • When the target gateway is 0.5.x, the emitted manifest uses the legacy top-level and per-event array shapes expected by 0.5 (and omits 0.6-only sections where unsupported).
    • When the target gateway is 0.6.0+, emit the 0.6 event-policy structure.

Acceptance criteria

  • Detect target gateway version during deployment and select the appropriate manifest shape.
  • Unit tests assert both shapes (0.5 vs 0.6) for representative cases (global/all-channels and per-channel event policies).
  • No changes to the Platform API OpenAPI are required; it remains 0.6-only.
  • Add a brief note in code/docs describing the version-aware behavior.

Backlinks

Requested by @tharindu1st on 2026-05-13.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.