@buoy-gg/mcp 7.0.47 → 7.0.49
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/dist/chunk-2PTJT2QF.mjs +64 -0
- package/dist/chunk-MLEZPZP3.mjs +369 -0
- package/dist/cli.js +181 -111
- package/dist/cli.mjs +8 -6
- package/dist/index.d.mts +63 -0
- package/dist/index.d.ts +63 -0
- package/dist/index.js +175 -107
- package/dist/index.mjs +1 -1
- package/dist/webBench-LKAOZXHK.mjs +1 -0
- package/package.json +3 -3
- package/skill/buoy-optimize/SKILL.md +12 -2
- package/dist/chunk-QF624MC2.mjs +0 -364
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ALL_DEVICES as e,BROKER_PORT as o,BROKER_URL as r,DASHBOARD_NAME as t,DEFAULT_ACTION_TIMEOUT_MS as s,DEFAULT_SNAPSHOT_TIMEOUT_MS as i,PACKAGE_NAME as T,SyncClient as n,VERSION as a,buildAutomationConfig as g,compareReportStats as l,createMcpServer as E,estimateBatchMs as R,formatRankingMarkdown as A,getUpdateNotice as S,rankBatchFromIndex as _,registerConsoleTools as c,registerEventsTools as M,registerGenericTools as O,registerJotaiTools as m,registerPerfMonitorTools as
|
|
1
|
+
import{ALL_DEVICES as e,BROKER_PORT as o,BROKER_URL as r,DASHBOARD_NAME as t,DEFAULT_ACTION_TIMEOUT_MS as s,DEFAULT_SNAPSHOT_TIMEOUT_MS as i,PACKAGE_NAME as T,SyncClient as n,VERSION as a,buildAutomationConfig as g,compareReportStats as l,createMcpServer as E,estimateBatchMs as R,formatRankingMarkdown as A,getUpdateNotice as S,rankBatchFromIndex as _,registerConsoleTools as c,registerEventsTools as M,registerGenericTools as O,registerJotaiTools as m,registerPerfMonitorTools as p,registerReactQueryTools as u,registerReduxTools as I,registerRoutesTools as d,registerScreenshotTools as C,registerStorageTools as N,registerZustandTools as U,runInit as B}from"./chunk-MLEZPZP3.mjs";import"./chunk-2PTJT2QF.mjs";export{e as ALL_DEVICES,o as BROKER_PORT,r as BROKER_URL,t as DASHBOARD_NAME,s as DEFAULT_ACTION_TIMEOUT_MS,i as DEFAULT_SNAPSHOT_TIMEOUT_MS,T as PACKAGE_NAME,n as SyncClient,a as VERSION,g as buildAutomationConfig,l as compareReportStats,E as createMcpServer,R as estimateBatchMs,A as formatRankingMarkdown,S as getUpdateNotice,_ as rankBatchFromIndex,c as registerConsoleTools,M as registerEventsTools,O as registerGenericTools,m as registerJotaiTools,p as registerPerfMonitorTools,u as registerReactQueryTools,I as registerReduxTools,d as registerRoutesTools,C as registerScreenshotTools,N as registerStorageTools,U as registerZustandTools,B as runInit};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{PLAYWRIGHT_MISSING as e,aggregateCase as r,caseUrl as a,cdpDeltas as n,formatWebBenchMarkdown as s,oneLine as o,percentile as t,runWebBench as c,shuffled as f,snapRefreshRate as h,summarizeProbe as l,webBenchFlags as m}from"./chunk-2PTJT2QF.mjs";export{e as PLAYWRIGHT_MISSING,r as aggregateCase,a as caseUrl,n as cdpDeltas,s as formatWebBenchMarkdown,o as oneLine,t as percentile,c as runWebBench,f as shuffled,h as snapRefreshRate,l as summarizeProbe,m as webBenchFlags};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@buoy-gg/mcp",
|
|
3
3
|
"mcpName": "io.github.Buoy-gg/mcp",
|
|
4
|
-
"version": "7.0.
|
|
4
|
+
"version": "7.0.49",
|
|
5
5
|
"buoy": {
|
|
6
6
|
"dashboardAuthVersion": 1
|
|
7
7
|
},
|
|
@@ -35,8 +35,8 @@
|
|
|
35
35
|
"socket.io-client": "^4.8.1",
|
|
36
36
|
"zod": "^3.25.0",
|
|
37
37
|
"ws": "^8.18.0",
|
|
38
|
-
"@buoy-gg/
|
|
39
|
-
"@buoy-gg/
|
|
38
|
+
"@buoy-gg/sync-broker": "^7.0.49",
|
|
39
|
+
"@buoy-gg/license": "^7.0.49"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@types/node": "^22.0.0",
|
|
@@ -63,6 +63,10 @@ Read it this way:
|
|
|
63
63
|
- p95 frame gap, worst gap and long frames come from the time between frames in that run. A gap over 1.5 frames missed at least one frame.
|
|
64
64
|
- Long tasks % is the share of the run the main thread spent in tasks over 50 ms. It is not CPU use, and it misses many shorter tasks.
|
|
65
65
|
- A metric the browser can't measure shows as —. Safari and Firefox have no long tasks or JS heap. A — can't win or lose.
|
|
66
|
+
- "Why frames were slow" names the scripts behind slow frames, plus style, layout and forced layout time. Start your next idea there.
|
|
67
|
+
- "DOM grows each run" means nodes are left behind after the screen unmounts. Treat it as a leak.
|
|
68
|
+
- "Too close to call" means the top cases overlap across runs. Run more repeats before you pick.
|
|
69
|
+
- A page load table shows up when the batch reloads between cases (`reloadBetweenCases`). Use it for load-time work.
|
|
66
70
|
|
|
67
71
|
Set up the run:
|
|
68
72
|
|
|
@@ -70,10 +74,15 @@ Set up the run:
|
|
|
70
74
|
- Rank on a production build when you can. Dev React is slower and can pick a different winner. Put the test page behind its own bench flag, not just `__DEV__`. Keep it out of public builds. If you ranked on a dev build, say so in the report.
|
|
71
75
|
- Keep DevTools closed while ranking. Record the screen size and pixel ratio. A pixel ratio of 3 draws 9 times the canvas pixels of 1.
|
|
72
76
|
|
|
77
|
+
Two tools can run a web batch:
|
|
78
|
+
|
|
79
|
+
- `run_benchmark_batch` runs inside the app's own tab through Bench. Use it when the app has Bench and the user's browser is open.
|
|
80
|
+
- `run_web_benchmark` opens the app in its own headless Chromium. It needs Playwright in the project, but no Buoy setup in the app. Each run gets a fresh page, and the tab is always in front. It adds Chrome's own main-thread, script, style and layout time. Pass a `readySelector` the page adds once it has drawn.
|
|
81
|
+
|
|
73
82
|
Test in this order, and tell the user which step you are on:
|
|
74
83
|
|
|
75
|
-
1. Desktop Chrome
|
|
76
|
-
2. The same
|
|
84
|
+
1. Desktop Chrome, with `run_web_benchmark` and `cpuSlowdown: [1]`.
|
|
85
|
+
2. The same cases with `cpuSlowdown: [4, 6]`. This slows the CPU only, not the GPU, memory or heat.
|
|
77
86
|
3. A real iPhone in Safari.
|
|
78
87
|
4. A real mid-range Android phone in Chrome.
|
|
79
88
|
5. Desktop Firefox and Safari, if the user supports them.
|
|
@@ -102,6 +111,7 @@ Traps on react-native-web:
|
|
|
102
111
|
| `measure_renders` | Measure a supported interaction before and after a change. |
|
|
103
112
|
| `get_benchmark_settings` / `set_benchmark_settings` | Read the profile and estimate, or explicitly persist settings. |
|
|
104
113
|
| `run_benchmark_batch` / `get_automation_status` | Run the case matrix and inspect automation status. |
|
|
114
|
+
| `run_web_benchmark` | Run web cases in a fresh headless Chromium, with optional CPU slowdown. |
|
|
105
115
|
| `get_batch_report` | Read a saved batch using its `batchId`. |
|
|
106
116
|
| `compare_reports` | Compare saved runs using `reportIdA` and `reportIdB`. |
|
|
107
117
|
| `navigate` | Open a supported app route using `path`. |
|