@mono-agent/session-web 0.4.1
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/README.md +92 -0
- package/dist/aggregator.d.ts +123 -0
- package/dist/aggregator.d.ts.map +1 -0
- package/dist/aggregator.js +1155 -0
- package/dist/aggregator.js.map +1 -0
- package/dist/discovery.d.ts +48 -0
- package/dist/discovery.d.ts.map +1 -0
- package/dist/discovery.js +177 -0
- package/dist/discovery.js.map +1 -0
- package/dist/history.d.ts +47 -0
- package/dist/history.d.ts.map +1 -0
- package/dist/history.js +149 -0
- package/dist/history.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -0
- package/dist/live-client.d.ts +50 -0
- package/dist/live-client.d.ts.map +1 -0
- package/dist/live-client.js +159 -0
- package/dist/live-client.js.map +1 -0
- package/dist/server.d.ts +30 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +359 -0
- package/dist/server.js.map +1 -0
- package/dist/session-model.d.ts +54 -0
- package/dist/session-model.d.ts.map +1 -0
- package/dist/session-model.js +10 -0
- package/dist/session-model.js.map +1 -0
- package/package.json +39 -0
- package/webapp/dist/apple-touch-icon.png +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff +0 -0
- package/webapp/dist/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2 +0 -0
- package/webapp/dist/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff +0 -0
- package/webapp/dist/assets/index-ByXpmZqx.js +138 -0
- package/webapp/dist/assets/index-D-V-lq0B.css +1 -0
- package/webapp/dist/assets/newsreader-latin-400-italic-CEihAR-f.woff2 +0 -0
- package/webapp/dist/assets/newsreader-latin-400-italic-CNZoH1hn.woff +0 -0
- package/webapp/dist/assets/newsreader-latin-400-normal-BFBkh4jY.woff2 +0 -0
- package/webapp/dist/assets/newsreader-latin-400-normal-gRTjlS2D.woff +0 -0
- package/webapp/dist/assets/newsreader-latin-500-italic-Bsgye1qA.woff2 +0 -0
- package/webapp/dist/assets/newsreader-latin-500-italic-m-xI0GeS.woff +0 -0
- package/webapp/dist/assets/newsreader-latin-500-normal-B66TYsaK.woff2 +0 -0
- package/webapp/dist/assets/newsreader-latin-500-normal-DFwuUcdu.woff +0 -0
- package/webapp/dist/assets/newsreader-latin-ext-400-italic-BMTE_bNQ.woff2 +0 -0
- package/webapp/dist/assets/newsreader-latin-ext-400-italic-qdgKLcPG.woff +0 -0
- package/webapp/dist/assets/newsreader-latin-ext-400-normal-DYA1XoQK.woff +0 -0
- package/webapp/dist/assets/newsreader-latin-ext-400-normal-svq1FPys.woff2 +0 -0
- package/webapp/dist/assets/newsreader-latin-ext-500-italic-B83LgwQp.woff2 +0 -0
- package/webapp/dist/assets/newsreader-latin-ext-500-italic-Bz3NsAdg.woff +0 -0
- package/webapp/dist/assets/newsreader-latin-ext-500-normal-BNHmvKvI.woff2 +0 -0
- package/webapp/dist/assets/newsreader-latin-ext-500-normal-CZruMFou.woff +0 -0
- package/webapp/dist/assets/newsreader-vietnamese-400-italic-QbB8kb5s.woff +0 -0
- package/webapp/dist/assets/newsreader-vietnamese-400-italic-bZegYFuM.woff2 +0 -0
- package/webapp/dist/assets/newsreader-vietnamese-400-normal-BekUZro8.woff +0 -0
- package/webapp/dist/assets/newsreader-vietnamese-400-normal-DdKr49mV.woff2 +0 -0
- package/webapp/dist/assets/newsreader-vietnamese-500-italic-BsTGSz8L.woff +0 -0
- package/webapp/dist/assets/newsreader-vietnamese-500-italic-D26NjlyL.woff2 +0 -0
- package/webapp/dist/assets/newsreader-vietnamese-500-normal-BEAbKU8A.woff +0 -0
- package/webapp/dist/assets/newsreader-vietnamese-500-normal-CL6a8tp2.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-latin-400-normal-BnQMeOim.woff +0 -0
- package/webapp/dist/assets/space-grotesk-latin-400-normal-CJ-V5oYT.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff +0 -0
- package/webapp/dist/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-latin-600-normal-BflQw4A9.woff +0 -0
- package/webapp/dist/assets/space-grotesk-latin-600-normal-DjKNqYRj.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff +0 -0
- package/webapp/dist/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-latin-ext-400-normal-CfP_5XZW.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-latin-ext-400-normal-DRPE3kg4.woff +0 -0
- package/webapp/dist/assets/space-grotesk-latin-ext-500-normal-3dgZTiw9.woff +0 -0
- package/webapp/dist/assets/space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-latin-ext-600-normal-DxxdqCpr.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-latin-ext-600-normal-VcznFIpX.woff +0 -0
- package/webapp/dist/assets/space-grotesk-latin-ext-700-normal-BQnZhY3m.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-latin-ext-700-normal-HVCqSBdx.woff +0 -0
- package/webapp/dist/assets/space-grotesk-vietnamese-400-normal-B7xT_GF5.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-vietnamese-400-normal-BIWiOVfw.woff +0 -0
- package/webapp/dist/assets/space-grotesk-vietnamese-500-normal-BTqKIpxg.woff +0 -0
- package/webapp/dist/assets/space-grotesk-vietnamese-500-normal-BmEvtly_.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-vietnamese-600-normal-D6zpsUhD.woff +0 -0
- package/webapp/dist/assets/space-grotesk-vietnamese-600-normal-DUi7WF5p.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-vietnamese-700-normal-DMty7AZE.woff2 +0 -0
- package/webapp/dist/assets/space-grotesk-vietnamese-700-normal-Duxec5Rn.woff +0 -0
- package/webapp/dist/favicon.ico +0 -0
- package/webapp/dist/icon-192.png +0 -0
- package/webapp/dist/icon-512.png +0 -0
- package/webapp/dist/icon.svg +31 -0
- package/webapp/dist/index.html +25 -0
- package/webapp/dist/manifest.webmanifest +1 -0
- package/webapp/dist/registerSW.js +1 -0
- package/webapp/dist/sw.js +1 -0
- package/webapp/dist/workbox-9c191d2f.js +1 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The web operator surface's data model. The heavy lifting — turning a recorded
|
|
3
|
+
* run into a renderable {@link Session} — lives in `@mono-agent/observability`
|
|
4
|
+
* (`mapRunToSession`); this module re-exports those frozen types verbatim (never
|
|
5
|
+
* redefines them) and adds the two shapes unique to the browser boundary: the
|
|
6
|
+
* per-instance summary the discovery layer produces ({@link WebInstance}) and the
|
|
7
|
+
* SSE frame union the aggregator fans out to the browser ({@link BrowserStreamFrame}).
|
|
8
|
+
*/
|
|
9
|
+
export type { Session, SessionOutcome, SessionStep, SessionStepUsage, SessionThink, SessionToolCall, SessionTotals, } from "@mono-agent/observability";
|
|
10
|
+
import type { Session } from "@mono-agent/observability";
|
|
11
|
+
/**
|
|
12
|
+
* One discovered agent instance, projected for the browser. `sourceId` is the
|
|
13
|
+
* trace-source registry id; `liveConnected` reflects whether the aggregator
|
|
14
|
+
* currently holds an open SSE connection to this instance's `live` endpoint (so
|
|
15
|
+
* sub-run streaming is active); `counts.runs` is how many sessions the aggregator
|
|
16
|
+
* currently holds for it (seeded history + any live/artifact upserts).
|
|
17
|
+
*/
|
|
18
|
+
export interface WebInstance {
|
|
19
|
+
readonly sourceId: string;
|
|
20
|
+
readonly label: string;
|
|
21
|
+
/** Working directory the instance runs in — `dirname(configPath)` when known, else the artifact dir's parent. */
|
|
22
|
+
readonly cwd: string;
|
|
23
|
+
readonly artifactDir: string;
|
|
24
|
+
/** Trace-source health: "running" | "stale" | "failed" (never "stopped" — those are filtered out). */
|
|
25
|
+
readonly health: string;
|
|
26
|
+
/** Best-effort instance timezone from trace metadata or runtime.session.rolloverTimezone. */
|
|
27
|
+
readonly timeZone?: string;
|
|
28
|
+
/** Back-compat spelling for clients that already probe `timezone`. */
|
|
29
|
+
readonly timezone?: string;
|
|
30
|
+
readonly liveConnected: boolean;
|
|
31
|
+
readonly counts: {
|
|
32
|
+
readonly runs: number;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* A frame on the browser SSE stream (`GET /api/stream`). `instances` replaces the
|
|
37
|
+
* client's instance list wholesale; `session_upsert` inserts-or-replaces one
|
|
38
|
+
* session by `session.sourceId + session.id` (both the recorded-artifact path and
|
|
39
|
+
* the live-fold path emit these — last write wins within one source);
|
|
40
|
+
* `session_removed` drops one run from one source (e.g. its instance vanished
|
|
41
|
+
* from the registry).
|
|
42
|
+
*/
|
|
43
|
+
export type BrowserStreamFrame = {
|
|
44
|
+
readonly t: "instances";
|
|
45
|
+
readonly instances: readonly WebInstance[];
|
|
46
|
+
} | {
|
|
47
|
+
readonly t: "session_upsert";
|
|
48
|
+
readonly session: Session;
|
|
49
|
+
} | {
|
|
50
|
+
readonly t: "session_removed";
|
|
51
|
+
readonly sourceId: string;
|
|
52
|
+
readonly runId: string;
|
|
53
|
+
};
|
|
54
|
+
//# sourceMappingURL=session-model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-model.d.ts","sourceRoot":"","sources":["../src/session-model.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,YAAY,EACV,OAAO,EACP,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,aAAa,GACd,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEzD;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,iHAAiH;IACjH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,sGAAsG;IACtG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,6FAA6F;IAC7F,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5C;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,WAAW,EAAE,CAAA;CAAE,GACvE;IAAE,QAAQ,CAAC,CAAC,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAC3D;IAAE,QAAQ,CAAC,CAAC,EAAE,iBAAiB,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The web operator surface's data model. The heavy lifting — turning a recorded
|
|
3
|
+
* run into a renderable {@link Session} — lives in `@mono-agent/observability`
|
|
4
|
+
* (`mapRunToSession`); this module re-exports those frozen types verbatim (never
|
|
5
|
+
* redefines them) and adds the two shapes unique to the browser boundary: the
|
|
6
|
+
* per-instance summary the discovery layer produces ({@link WebInstance}) and the
|
|
7
|
+
* SSE frame union the aggregator fans out to the browser ({@link BrowserStreamFrame}).
|
|
8
|
+
*/
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=session-model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-model.js","sourceRoot":"","sources":["../src/session-model.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
package/package.json
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@mono-agent/session-web",
|
|
3
|
+
"version": "0.4.1",
|
|
4
|
+
"description": "Discovers local mono-agent instances and serves a read-only web PWA that visualises their runs live — aggregating recorded-run history with operator-adapter live sub-run streams.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"license": "UNLICENSED",
|
|
7
|
+
"private": false,
|
|
8
|
+
"main": "./dist/index.js",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"exports": {
|
|
11
|
+
".": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"import": "./dist/index.js"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"files": [
|
|
17
|
+
"dist",
|
|
18
|
+
"webapp/dist",
|
|
19
|
+
"README.md"
|
|
20
|
+
],
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"@mono-agent/agent-contracts": "0.4.1",
|
|
23
|
+
"@mono-agent/observability": "0.4.1",
|
|
24
|
+
"express": "^5.1.0"
|
|
25
|
+
},
|
|
26
|
+
"devDependencies": {
|
|
27
|
+
"@types/express": "^5.0.2"
|
|
28
|
+
},
|
|
29
|
+
"publishConfig": {
|
|
30
|
+
"access": "public"
|
|
31
|
+
},
|
|
32
|
+
"scripts": {
|
|
33
|
+
"build": "pnpm run build:webapp && pnpm run build:server",
|
|
34
|
+
"build:server": "tsc -p tsconfig.build.json",
|
|
35
|
+
"build:webapp": "pnpm --dir webapp install --frozen-lockfile && pnpm --dir webapp run build",
|
|
36
|
+
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
37
|
+
"test": "vitest run --passWithNoTests src/__tests__ && pnpm --dir webapp run test"
|
|
38
|
+
}
|
|
39
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|