@glassly/engine 0.4.0-dev.1053 → 0.4.0-dev.1055

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@glassly/engine",
3
- "version": "0.4.0-dev.1053",
3
+ "version": "0.4.0-dev.1055",
4
4
  "description": "Glassly Engine — miniapp registry, WebView bridge, and miniapp store",
5
5
  "main": "build/index.js",
6
6
  "react-native": "src/index.ts",
@@ -97,17 +97,17 @@
97
97
  "registry": "https://registry.npmjs.org/"
98
98
  },
99
99
  "dependencies": {
100
- "@glassly/bluetooth-sdk": "0.4.0-dev.1053",
101
- "@glassly/cloud-client": "0.4.0-dev.1053",
102
- "@glassly/cloud-protocol": "0.4.0-dev.1053",
103
- "@glassly/crust": "0.4.0-dev.1053",
104
- "@glassly/miniapp": "0.4.0-dev.1053",
100
+ "@glassly/bluetooth-sdk": "0.4.0-dev.1055",
101
+ "@glassly/cloud-client": "0.4.0-dev.1055",
102
+ "@glassly/cloud-protocol": "0.4.0-dev.1055",
103
+ "@glassly/crust": "0.4.0-dev.1055",
104
+ "@glassly/miniapp": "0.4.0-dev.1055",
105
105
  "buffer": "^6.0.3",
106
106
  "events": "^3.3.0",
107
107
  "react-native-marked": "8.3.2",
108
108
  "semver": "^7.7.4",
109
109
  "typesafe-ts": "^1.7.1",
110
- "@glassly/llm-providers": "0.4.0-dev.1053",
110
+ "@glassly/llm-providers": "0.4.0-dev.1055",
111
111
  "@huggingface/jinja": "^0.5.9",
112
112
  "jsonrepair": "^3.12.0"
113
113
  },
@@ -12,9 +12,9 @@ export interface EngineReleaseMetadata {
12
12
  export const ENGINE_RELEASE_METADATA: Readonly<EngineReleaseMetadata> = Object.freeze({
13
13
  "schemaVersion": 1,
14
14
  "familyBaseVersion": "0.4.0",
15
- "releaseIdentity": "0.4.0-dev.1053",
16
- "releaseSetId": "glassly-0.4.0-dev.1053",
17
- "sourceCommit": "07f57c7a8ce6ec6a5a9fc93dd89dfc07f544b550",
15
+ "releaseIdentity": "0.4.0-dev.1055",
16
+ "releaseSetId": "glassly-0.4.0-dev.1055",
17
+ "sourceCommit": "38bdc4b0afb82b1e038c0d666ec74583cd22daf5",
18
18
  "otaManifestUrl": null,
19
19
  "otaManifestSha256": null
20
20
  })
@@ -381,6 +381,8 @@ export class JSRouter {
381
381
  BgTimer.clearTimeout(pending)
382
382
  this.respawnTimers.delete(packageName)
383
383
  }
384
+ miniappRunningRegistry.remove(packageName)
385
+ this.runtime.releaseWidgetHost(packageName)
384
386
  await this.runtime.notifyWillDisconnect(packageName, "stopped")
385
387
  this.spawnCache.delete(packageName)
386
388
  this.crashController?.onKill(packageName)
@@ -388,8 +390,6 @@ export class JSRouter {
388
390
  // drop out of native nav mode (crash-respawns don't take this path).
389
391
  this.runtime.unregisterApp(packageName, {endNavigation: true})
390
392
  this.registered.delete(packageName)
391
- // JSContext torn down → miniapp is no longer "running".
392
- miniappRunningRegistry.remove(packageName)
393
393
  if (this.crust.jsKill) {
394
394
  try {
395
395
  await this.crust.jsKill(packageName)
@@ -6775,8 +6775,7 @@ class LocalMiniappRuntime {
6775
6775
 
6776
6776
  /** A miniapp disconnected: as a host its placements go, as a provider its boxes are forgotten and its frames kept. */
6777
6777
  private onWidgetPartyGone(packageName: string): void {
6778
- const providersBefore = placedProviders(this.widgetPlacements)
6779
- this.widgetPlacements = dropWidgetHost(this.widgetPlacements, packageName)
6778
+ this.releaseWidgetHost(packageName)
6780
6779
  this.widgetPlacements = dropWidgetProvider(this.widgetPlacements, packageName)
6781
6780
  miniappWidgetMode.setPlaced(packageName, false)
6782
6781
  miniappWidgetMode.setWidgetOnly(packageName, false)
@@ -6791,8 +6790,13 @@ class LocalMiniappRuntime {
6791
6790
  })
6792
6791
  }
6793
6792
  }
6793
+ }
6794
+
6795
+ public releaseWidgetHost(hostPackageName: string): void {
6796
+ const providersBefore = placedProviders(this.widgetPlacements)
6797
+ this.widgetPlacements = dropWidgetHost(this.widgetPlacements, hostPackageName)
6794
6798
  for (const provider of providersBefore) {
6795
- if (provider !== packageName) void this.settleWidgetProvider(provider)
6799
+ if (provider !== hostPackageName) void this.settleWidgetProvider(provider)
6796
6800
  }
6797
6801
  }
6798
6802