From b274e6512bfdcb7e92cfac09ddf033a5c481f020 Mon Sep 17 00:00:00 2001 From: Andrei Kirkouski Date: Wed, 19 Aug 2026 12:56:34 +0200 Subject: [PATCH 1/2] chore(facade): point fe_facade_url at Web Host 1.0.55 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps the CDN ref in all five files that carry it — `_index.yaml`, `Makefile` (`WEB_HOST_CDN`), `README.md`, `config_handler_test.lua`, and `test/config_dependency_test.lua`, which asserts the exact URL and fails if left behind. The `public_files` embed was re-vendored from the deployed 1.0.55 CDN and verified to be real JavaScript rather than an error body. It is byte-identical to the previous copy — `loading.js` did not change this release — so it carries no diff here. Web Host 1.0.55 is live on the CDN (module.js self-reports 1.0.55) and the `@wippy-fe` packages are published at 0.0.55, so this ref resolves. --- src/facade/Makefile | 2 +- src/facade/README.md | 6 +++--- src/facade/_index.yaml | 2 +- src/facade/config_handler_test.lua | 6 +++--- src/facade/test/config_dependency_test.lua | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/facade/Makefile b/src/facade/Makefile index 65f1feb..0e2dd20 100644 --- a/src/facade/Makefile +++ b/src/facade/Makefile @@ -6,7 +6,7 @@ # Run `make sync` after every Wippy Web Host version bump to pull fresh copies. # Web Host CDN base — update version when Wippy Web Host releases -WEB_HOST_CDN = https://web-host.wippy.ai/webcomponents-1.0.54 +WEB_HOST_CDN = https://web-host.wippy.ai/webcomponents-1.0.55 # Files to sync from CDN into public/@wippy-fe/ CDN_FILES = loading.js diff --git a/src/facade/README.md b/src/facade/README.md index 089d55f..93e96ea 100644 --- a/src/facade/README.md +++ b/src/facade/README.md @@ -78,7 +78,7 @@ These fields are NOT configurable via requirements — they are computed at runt | Requirement | Default | Description | |---|---|---| -| `fe_facade_url` | `https://web-host.wippy.ai/webcomponents-1.0.54` | CDN base URL for the Web Host frontend bundle | +| `fe_facade_url` | `https://web-host.wippy.ai/webcomponents-1.0.55` | CDN base URL for the Web Host frontend bundle | | `fe_entry_path` | `/iframe.html` | Iframe HTML entry point path (appended to `fe_facade_url`) | | `fe_mode` | `compat` | `compat` (default — loads `module.js`) or `managed` (loads `managed-layout.js` for declarative multi-panel apps). See [Modes](#modes) above | | `render_engine` | `iframe` | Global page render engine for packaged `view.page` micro-frontends: `iframe` (default — legacy srcdoc iframe) or `fragment` (Web Fragment / reframed realm reflected into a shadow root). `fragment` **requires** the `wippy/views` fragment gateway and a fragment-capable host bundle serving `/@wippy-fe/proxy-fragment.js`. Flows to the host as `hostConfig.renderEngine`; the child app is engine-agnostic (same package renders under either engine). | @@ -390,9 +390,9 @@ Returns an empty body (200 OK) when no variables are configured. Response has `C ```json { - "facade_url": "https://web-host.wippy.ai/webcomponents-1.0.54", + "facade_url": "https://web-host.wippy.ai/webcomponents-1.0.55", "iframe_origin": "https://web-host.wippy.ai", - "iframe_url": "https://web-host.wippy.ai/webcomponents-1.0.54/iframe.html?waitForCustomConfig", + "iframe_url": "https://web-host.wippy.ai/webcomponents-1.0.55/iframe.html?waitForCustomConfig", "login_path": "/login.html", "login_redirect_param": null, "env": { diff --git a/src/facade/_index.yaml b/src/facade/_index.yaml index 0bd0aa6..ec5f9a0 100644 --- a/src/facade/_index.yaml +++ b/src/facade/_index.yaml @@ -39,7 +39,7 @@ entries: targets: - entry: wippy.facade:fe_facade_url path: .default - default: https://web-host.wippy.ai/webcomponents-1.0.54 + default: https://web-host.wippy.ai/webcomponents-1.0.55 - name: fe_entry_path kind: ns.requirement diff --git a/src/facade/config_handler_test.lua b/src/facade/config_handler_test.lua index abbb34f..7411ae0 100644 --- a/src/facade/config_handler_test.lua +++ b/src/facade/config_handler_test.lua @@ -23,7 +23,7 @@ local REQ_NAMES: {string} = { local function setup_registry(overrides: {[string]: string}?) local defaults: {[string]: string} = { - fe_facade_url = "https://web-host.wippy.ai/webcomponents-1.0.54", + fe_facade_url = "https://web-host.wippy.ai/webcomponents-1.0.55", fe_entry_path = "/iframe.html", fe_mode = "compat", render_engine = "iframe", @@ -188,7 +188,7 @@ local function define_tests() end) test.it("extracts iframe origin from facade URL", function() - local facade_url = "https://web-host.wippy.ai/webcomponents-1.0.54" + local facade_url = "https://web-host.wippy.ai/webcomponents-1.0.55" local origin = facade_url:match("^(https?://[^/]+)") test.eq(origin, "https://web-host.wippy.ai") @@ -266,7 +266,7 @@ local function define_tests() test.it("returns all default requirement values", function() local entry = registry.get(NS .. "fe_facade_url") - test.eq(entry.data.default, "https://web-host.wippy.ai/webcomponents-1.0.54") + test.eq(entry.data.default, "https://web-host.wippy.ai/webcomponents-1.0.55") entry = registry.get(NS .. "fe_entry_path") test.eq(entry.data.default, "/iframe.html") diff --git a/src/facade/test/config_dependency_test.lua b/src/facade/test/config_dependency_test.lua index 4d53fb3..d6358a4 100644 --- a/src/facade/test/config_dependency_test.lua +++ b/src/facade/test/config_dependency_test.lua @@ -9,7 +9,7 @@ local function run() local entry = registry.get(NS .. "fe_facade_url") test.not_nil(entry) test.not_nil(entry.data) - test.eq(entry.data.default, "https://web-host.wippy.ai/webcomponents-1.0.54") + test.eq(entry.data.default, "https://web-host.wippy.ai/webcomponents-1.0.55") entry = registry.get(NS .. "app_title") test.not_nil(entry) From d32ae8df8c3971889305427f11f706f75ae89550 Mon Sep 17 00:00:00 2001 From: Andrei Kirkouski Date: Fri, 21 Aug 2026 10:17:22 +0200 Subject: [PATCH 2/2] chore(facade): point fe_facade_url at Web Host 1.0.56 Moves the `fe_facade_url` default, the Makefile's `WEB_HOST_CDN`, the README's documented default and sample payload, and the two test assertions that pin the expected default - all nine references, in lockstep, so the tests keep asserting the value the config actually ships. 1.0.56 adds the chat's `empty-state` slot and a `reason` on the `openArtifact` intent, and removes `presentation="standalone"`. An app that set that attribute keeps the embedded chat layout when this default moves; its visual half belongs in the element's `custom-css` prop. The CDN path this names is live only once `webcomponents-1.0.56` is deployed. --- src/facade/Makefile | 2 +- src/facade/README.md | 6 +++--- src/facade/_index.yaml | 2 +- src/facade/config_handler_test.lua | 6 +++--- src/facade/test/config_dependency_test.lua | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/facade/Makefile b/src/facade/Makefile index 0e2dd20..79b320a 100644 --- a/src/facade/Makefile +++ b/src/facade/Makefile @@ -6,7 +6,7 @@ # Run `make sync` after every Wippy Web Host version bump to pull fresh copies. # Web Host CDN base — update version when Wippy Web Host releases -WEB_HOST_CDN = https://web-host.wippy.ai/webcomponents-1.0.55 +WEB_HOST_CDN = https://web-host.wippy.ai/webcomponents-1.0.56 # Files to sync from CDN into public/@wippy-fe/ CDN_FILES = loading.js diff --git a/src/facade/README.md b/src/facade/README.md index 93e96ea..2cf5b1e 100644 --- a/src/facade/README.md +++ b/src/facade/README.md @@ -78,7 +78,7 @@ These fields are NOT configurable via requirements — they are computed at runt | Requirement | Default | Description | |---|---|---| -| `fe_facade_url` | `https://web-host.wippy.ai/webcomponents-1.0.55` | CDN base URL for the Web Host frontend bundle | +| `fe_facade_url` | `https://web-host.wippy.ai/webcomponents-1.0.56` | CDN base URL for the Web Host frontend bundle | | `fe_entry_path` | `/iframe.html` | Iframe HTML entry point path (appended to `fe_facade_url`) | | `fe_mode` | `compat` | `compat` (default — loads `module.js`) or `managed` (loads `managed-layout.js` for declarative multi-panel apps). See [Modes](#modes) above | | `render_engine` | `iframe` | Global page render engine for packaged `view.page` micro-frontends: `iframe` (default — legacy srcdoc iframe) or `fragment` (Web Fragment / reframed realm reflected into a shadow root). `fragment` **requires** the `wippy/views` fragment gateway and a fragment-capable host bundle serving `/@wippy-fe/proxy-fragment.js`. Flows to the host as `hostConfig.renderEngine`; the child app is engine-agnostic (same package renders under either engine). | @@ -390,9 +390,9 @@ Returns an empty body (200 OK) when no variables are configured. Response has `C ```json { - "facade_url": "https://web-host.wippy.ai/webcomponents-1.0.55", + "facade_url": "https://web-host.wippy.ai/webcomponents-1.0.56", "iframe_origin": "https://web-host.wippy.ai", - "iframe_url": "https://web-host.wippy.ai/webcomponents-1.0.55/iframe.html?waitForCustomConfig", + "iframe_url": "https://web-host.wippy.ai/webcomponents-1.0.56/iframe.html?waitForCustomConfig", "login_path": "/login.html", "login_redirect_param": null, "env": { diff --git a/src/facade/_index.yaml b/src/facade/_index.yaml index ec5f9a0..bcf66e8 100644 --- a/src/facade/_index.yaml +++ b/src/facade/_index.yaml @@ -39,7 +39,7 @@ entries: targets: - entry: wippy.facade:fe_facade_url path: .default - default: https://web-host.wippy.ai/webcomponents-1.0.55 + default: https://web-host.wippy.ai/webcomponents-1.0.56 - name: fe_entry_path kind: ns.requirement diff --git a/src/facade/config_handler_test.lua b/src/facade/config_handler_test.lua index 7411ae0..cfe049c 100644 --- a/src/facade/config_handler_test.lua +++ b/src/facade/config_handler_test.lua @@ -23,7 +23,7 @@ local REQ_NAMES: {string} = { local function setup_registry(overrides: {[string]: string}?) local defaults: {[string]: string} = { - fe_facade_url = "https://web-host.wippy.ai/webcomponents-1.0.55", + fe_facade_url = "https://web-host.wippy.ai/webcomponents-1.0.56", fe_entry_path = "/iframe.html", fe_mode = "compat", render_engine = "iframe", @@ -188,7 +188,7 @@ local function define_tests() end) test.it("extracts iframe origin from facade URL", function() - local facade_url = "https://web-host.wippy.ai/webcomponents-1.0.55" + local facade_url = "https://web-host.wippy.ai/webcomponents-1.0.56" local origin = facade_url:match("^(https?://[^/]+)") test.eq(origin, "https://web-host.wippy.ai") @@ -266,7 +266,7 @@ local function define_tests() test.it("returns all default requirement values", function() local entry = registry.get(NS .. "fe_facade_url") - test.eq(entry.data.default, "https://web-host.wippy.ai/webcomponents-1.0.55") + test.eq(entry.data.default, "https://web-host.wippy.ai/webcomponents-1.0.56") entry = registry.get(NS .. "fe_entry_path") test.eq(entry.data.default, "/iframe.html") diff --git a/src/facade/test/config_dependency_test.lua b/src/facade/test/config_dependency_test.lua index d6358a4..b574d64 100644 --- a/src/facade/test/config_dependency_test.lua +++ b/src/facade/test/config_dependency_test.lua @@ -9,7 +9,7 @@ local function run() local entry = registry.get(NS .. "fe_facade_url") test.not_nil(entry) test.not_nil(entry.data) - test.eq(entry.data.default, "https://web-host.wippy.ai/webcomponents-1.0.55") + test.eq(entry.data.default, "https://web-host.wippy.ai/webcomponents-1.0.56") entry = registry.get(NS .. "app_title") test.not_nil(entry)