@glassly/engine 0.3.8-dev.977 → 0.3.8-dev.979
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/build/generated/releaseMetadata.js +3 -3
- package/build/generated/releaseMetadata.js.map +1 -1
- package/build/services/DisplayDiagnostics.d.ts.map +1 -1
- package/build/services/DisplayDiagnostics.js +4 -2
- package/build/services/DisplayDiagnostics.js.map +1 -1
- package/build/services/LocalMiniappRuntime.js +2 -2
- package/build/services/LocalMiniappRuntime.js.map +1 -1
- package/build/stores/settings.js +3 -3
- package/build/stores/settings.js.map +1 -1
- package/package.json +7 -7
- package/src/generated/releaseMetadata.ts +3 -3
- package/src/services/DisplayDiagnostics.ts +4 -2
- package/src/services/LocalMiniappRuntime.ts +2 -2
- package/src/stores/settings.ts +3 -3
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
export const ENGINE_RELEASE_METADATA = Object.freeze({
|
|
2
2
|
"schemaVersion": 1,
|
|
3
3
|
"familyBaseVersion": "0.3.8",
|
|
4
|
-
"releaseIdentity": "0.3.8-dev.
|
|
5
|
-
"releaseSetId": "glassly-0.3.8-dev.
|
|
6
|
-
"sourceCommit": "
|
|
4
|
+
"releaseIdentity": "0.3.8-dev.979",
|
|
5
|
+
"releaseSetId": "glassly-0.3.8-dev.979",
|
|
6
|
+
"sourceCommit": "c62da5b1f439991ef39a982e12f591b7e641bdf4",
|
|
7
7
|
"otaManifestUrl": null,
|
|
8
8
|
"otaManifestSha256": null
|
|
9
9
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"releaseMetadata.js","sourceRoot":"","sources":["../../src/generated/releaseMetadata.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,uBAAuB,GAAoC,MAAM,CAAC,MAAM,CAAC;IACpF,eAAe,EAAE,CAAC;IAClB,mBAAmB,EAAE,OAAO;IAC5B,iBAAiB,EAAE,eAAe;IAClC,cAAc,EAAE,uBAAuB;IACvC,cAAc,EAAE,0CAA0C;IAC1D,gBAAgB,EAAE,IAAI;IACtB,mBAAmB,EAAE,IAAI;CAC1B,CAAC,CAAA","sourcesContent":["/** Generated by release CI. Do not edit in a release checkout. */\nexport interface EngineReleaseMetadata {\n schemaVersion: 1\n familyBaseVersion: string | null\n releaseIdentity: string | null\n releaseSetId: string | null\n sourceCommit: string | null\n otaManifestUrl: string | null\n otaManifestSha256: string | null\n}\n\nexport const ENGINE_RELEASE_METADATA: Readonly<EngineReleaseMetadata> = Object.freeze({\n \"schemaVersion\": 1,\n \"familyBaseVersion\": \"0.3.8\",\n \"releaseIdentity\": \"0.3.8-dev.
|
|
1
|
+
{"version":3,"file":"releaseMetadata.js","sourceRoot":"","sources":["../../src/generated/releaseMetadata.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,uBAAuB,GAAoC,MAAM,CAAC,MAAM,CAAC;IACpF,eAAe,EAAE,CAAC;IAClB,mBAAmB,EAAE,OAAO;IAC5B,iBAAiB,EAAE,eAAe;IAClC,cAAc,EAAE,uBAAuB;IACvC,cAAc,EAAE,0CAA0C;IAC1D,gBAAgB,EAAE,IAAI;IACtB,mBAAmB,EAAE,IAAI;CAC1B,CAAC,CAAA","sourcesContent":["/** Generated by release CI. Do not edit in a release checkout. */\nexport interface EngineReleaseMetadata {\n schemaVersion: 1\n familyBaseVersion: string | null\n releaseIdentity: string | null\n releaseSetId: string | null\n sourceCommit: string | null\n otaManifestUrl: string | null\n otaManifestSha256: string | null\n}\n\nexport const ENGINE_RELEASE_METADATA: Readonly<EngineReleaseMetadata> = Object.freeze({\n \"schemaVersion\": 1,\n \"familyBaseVersion\": \"0.3.8\",\n \"releaseIdentity\": \"0.3.8-dev.979\",\n \"releaseSetId\": \"glassly-0.3.8-dev.979\",\n \"sourceCommit\": \"c62da5b1f439991ef39a982e12f591b7e641bdf4\",\n \"otaManifestUrl\": null,\n \"otaManifestSha256\": null\n})\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DisplayDiagnostics.d.ts","sourceRoot":"","sources":["../../src/services/DisplayDiagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"DisplayDiagnostics.d.ts","sourceRoot":"","sources":["../../src/services/DisplayDiagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,kBAAkB,CAAA;AAmEvD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,SAAS;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,EAAE,EACrC,GAAG,SAAa,GACf,iBAAiB,EAAE,CAsCrB"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// messages, packet bytes, or arbitrary application content to another miniapp.
|
|
3
3
|
const fields = new Set([
|
|
4
4
|
"v",
|
|
5
|
+
"device",
|
|
5
6
|
"run",
|
|
6
7
|
"id",
|
|
7
8
|
"t",
|
|
@@ -65,11 +66,12 @@ export function collectDisplayDiagnostics(entries, now = Date.now()) {
|
|
|
65
66
|
const seen = new Set();
|
|
66
67
|
for (let i = entries.length - 1; i >= 0 && records.length < 180; i--) {
|
|
67
68
|
const message = entries[i].message;
|
|
68
|
-
const
|
|
69
|
+
const prefix = message.includes("MEMOMINDPERF ") ? "MEMOMINDPERF " : "G2PERF ";
|
|
70
|
+
const offset = message.indexOf(prefix);
|
|
69
71
|
if (offset < 0 || message.length > 8192)
|
|
70
72
|
continue;
|
|
71
73
|
try {
|
|
72
|
-
const raw = JSON.parse(message.slice(offset +
|
|
74
|
+
const raw = JSON.parse(message.slice(offset + prefix.length));
|
|
73
75
|
if (!raw ||
|
|
74
76
|
raw.v !== 1 ||
|
|
75
77
|
typeof raw.run !== "string" ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DisplayDiagnostics.js","sourceRoot":"","sources":["../../src/services/DisplayDiagnostics.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,+EAA+E;AAC/E,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC;IACrB,GAAG;IACH,KAAK;IACL,IAAI;IACJ,GAAG;IACH,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,gBAAgB;IAChB,IAAI;IACJ,IAAI;IACJ,cAAc;IACd,cAAc;IACd,KAAK;IACL,KAAK;IACL,YAAY;IACZ,UAAU;IACV,UAAU;IACV,SAAS;IACT,WAAW;IACX,UAAU;IACV,UAAU;IACV,UAAU;IACV,eAAe;IACf,aAAa;IACb,WAAW;IACX,QAAQ;IACR,UAAU;IACV,OAAO;IACP,QAAQ;IACR,cAAc;IACd,cAAc;IACd,MAAM;IACN,WAAW;IACX,UAAU;IACV,kBAAkB;IAClB,cAAc;IACd,aAAa;IACb,cAAc;IACd,iBAAiB;IACjB,gBAAgB;IAChB,YAAY;IACZ,SAAS;IACT,UAAU;IACV,WAAW;IACX,MAAM;IACN,OAAO;IACP,SAAS;IACT,QAAQ;IACR,SAAS;IACT,SAAS;IACT,OAAO;IACP,IAAI;IACJ,MAAM;IACN,MAAM;IACN,UAAU;IACV,gBAAgB;CACjB,CAAC,CAAA;AACF,MAAM,MAAM,GACV,2HAA2H,CAAA;AAE7H,MAAM,UAAU,yBAAyB,CACvC,OAAqC,EACrC,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IAEhB,MAAM,OAAO,GAAwB,EAAE,CAAA;IACvC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACrE,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;QAClC,MAAM,MAAM,GAAG,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"DisplayDiagnostics.js","sourceRoot":"","sources":["../../src/services/DisplayDiagnostics.ts"],"names":[],"mappings":"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","sourcesContent":["import type {DisplayDiagnostic} from \"@glassly/miniapp\"\n\n// Explicit allowlist: the diagnostics API must never expose ordinary console\n// messages, packet bytes, or arbitrary application content to another miniapp.\nconst fields = new Set([\n \"v\",\n \"device\",\n \"run\",\n \"id\",\n \"t\",\n \"type\",\n \"app\",\n \"seq\",\n \"page\",\n \"pageGeneration\",\n \"qL\",\n \"qR\",\n \"payloadQueue\",\n \"pendingFrame\",\n \"cfw\",\n \"mic\",\n \"background\",\n \"fpsLimit\",\n \"windowMs\",\n \"txBytes\",\n \"txPackets\",\n \"txBytesL\",\n \"txBytesR\",\n \"framesIn\",\n \"framesEncoded\",\n \"framesAcked\",\n \"coalesced\",\n \"errors\",\n \"timeouts\",\n \"nacks\",\n \"resync\",\n \"vectorFrames\",\n \"rasterFrames\",\n \"noop\",\n \"fragments\",\n \"elements\",\n \"animatedElements\",\n \"payloadBytes\",\n \"uploadBytes\",\n \"encodeErrors\",\n \"stockTextWrites\",\n \"stockTextBytes\",\n \"imuSamples\",\n \"session\",\n \"fragment\",\n \"fragments\",\n \"mode\",\n \"bytes\",\n \"totalMs\",\n \"result\",\n \"written\",\n \"attempt\",\n \"stage\",\n \"ok\",\n \"mtuL\",\n \"mtuR\",\n \"encodeMs\",\n \"vectorFallback\",\n])\nconst timing =\n /^(creditWaitMs[LR]|writeQueueMs|transferMs|submitMs|writeMs|ackMs|resumeMs|frameMs|encodeMs|frameQueueMs)(Avg|Max|Total)$/\n\nexport function collectDisplayDiagnostics(\n entries: readonly {message: string}[],\n now = Date.now(),\n): DisplayDiagnostic[] {\n const records: DisplayDiagnostic[] = []\n const seen = new Set<string>()\n for (let i = entries.length - 1; i >= 0 && records.length < 180; i--) {\n const message = entries[i].message\n const prefix = message.includes(\"MEMOMINDPERF \") ? \"MEMOMINDPERF \" : \"G2PERF \"\n const offset = message.indexOf(prefix)\n if (offset < 0 || message.length > 8192) continue\n try {\n const raw = JSON.parse(message.slice(offset + prefix.length))\n if (\n !raw ||\n raw.v !== 1 ||\n typeof raw.run !== \"string\" ||\n raw.run.length > 64 ||\n !Number.isSafeInteger(raw.id) ||\n raw.id < 1 ||\n !Number.isSafeInteger(raw.t) ||\n raw.t < now - 180_000 ||\n raw.t > now + 5000 ||\n ![\"sample\", \"stall\", \"session\"].includes(raw.type)\n )\n continue\n const key = `${raw.run}:${raw.id}`\n if (seen.has(key)) continue\n const record: Record<string, string | number | boolean> = {}\n for (const [name, value] of Object.entries(raw)) {\n if (!fields.has(name) && !timing.test(name)) continue\n if ((typeof value === \"number\" && Number.isFinite(value)) || typeof value === \"boolean\") record[name] = value\n else if (typeof value === \"string\") record[name] = value.slice(0, 160)\n }\n records.push(record as DisplayDiagnostic)\n seen.add(key)\n } catch {\n /* Ignore unrelated or incomplete console lines. */\n }\n }\n return records.reverse()\n}\n"]}
|
|
@@ -1397,10 +1397,10 @@ class LocalMiniappRuntime {
|
|
|
1397
1397
|
this.handleOpenUrl(packageName, payload);
|
|
1398
1398
|
break;
|
|
1399
1399
|
case MiniappRequestType.DISPLAY_DIAGNOSTICS: {
|
|
1400
|
-
// The records are parsed out of the G2PERF lines, which the SDK only logs while
|
|
1400
|
+
// The records are parsed out of the G2PERF lines, which the SDK only logs while perf_logs is on.
|
|
1401
1401
|
const settings = useSettingsStore.getState();
|
|
1402
1402
|
const enabled = settings.getSetting(SETTINGS.debug_console.key) === true &&
|
|
1403
|
-
settings.getSetting(SETTINGS.
|
|
1403
|
+
settings.getSetting(SETTINGS.perf_logs.key) === true;
|
|
1404
1404
|
this.sendResult(packageName, requestId, true, {
|
|
1405
1405
|
enabled,
|
|
1406
1406
|
generatedAt: Date.now(),
|