@cotal-ai/web 0.90.1 → 0.91.0
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 +2 -2
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -23
- package/dist/index.js.map +1 -1
- package/dist/service-adapter.d.ts +6 -0
- package/dist/service-adapter.d.ts.map +1 -0
- package/dist/service-adapter.js +110 -0
- package/dist/service-adapter.js.map +1 -0
- package/dist/web/app.js +4 -3
- package/dist/web.d.ts +17 -2
- package/dist/web.d.ts.map +1 -1
- package/dist/web.js +72 -51
- package/dist/web.js.map +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# @cotal-ai/web
|
|
2
2
|
|
|
3
|
-
The browser dashboard, as an extension package that adds the `
|
|
4
|
-
`cotal-ai` and is seeded automatically on first run.
|
|
3
|
+
The browser dashboard, as an extension package that adds the `web` service preset
|
|
4
|
+
(`cotal service start web`). It ships inside `cotal-ai` and is seeded automatically on first run.
|
|
5
5
|
|
|
6
6
|
**Tier:** `implementations/`. Peer-depends [`@cotal-ai/core`](../../packages/core) and
|
|
7
7
|
[`@cotal-ai/workspace`](../../packages/workspace); self-registers on import.
|
package/dist/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import "./service-adapter.js";
|
|
2
2
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,sBAAsB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,25 +1,7 @@
|
|
|
1
1
|
import { registry } from "@cotal-ai/core";
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
* into the shared core Registry on import (the extension contract); shared @cotal-ai/* packages
|
|
8
|
-
* are peerDependencies, linked to the running binary's copies by `ext add`.
|
|
9
|
-
*/
|
|
10
|
-
const webCommand = {
|
|
11
|
-
kind: "command",
|
|
12
|
-
name: "web",
|
|
13
|
-
group: "Observe",
|
|
14
|
-
summary: "browser observability dashboard - presence, channels, live feed",
|
|
15
|
-
flags: [
|
|
16
|
-
...targetFlags,
|
|
17
|
-
{ name: "host", type: "string", value: "<host>", description: "HTTP bind and browser host (default 127.0.0.1; remote exposure is explicit)" },
|
|
18
|
-
{ name: "port", type: "string", value: "<n>", description: "HTTP port (default 7799)" },
|
|
19
|
-
{ name: "detach", type: "boolean", description: "run in the background (stop with `cotal down web`)" },
|
|
20
|
-
{ name: "no-open", type: "boolean", description: "don't open the browser" },
|
|
21
|
-
],
|
|
22
|
-
run: web,
|
|
23
|
-
};
|
|
24
|
-
registry.register(webCommand, webProcess);
|
|
2
|
+
import { webProcess } from "./web.js";
|
|
3
|
+
import "./service-adapter.js";
|
|
4
|
+
// Keep the old process observation/removal descriptor for existing instances. New launches use
|
|
5
|
+
// the service preset; importing this package no longer registers a competing web command.
|
|
6
|
+
registry.register(webProcess);
|
|
25
7
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,sBAAsB,CAAC;AAE9B,+FAA+F;AAC/F,0FAA0F;AAC1F,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type Command } from "@cotal-ai/core";
|
|
2
|
+
import { type LocalProcess, type ServicePreset } from "@cotal-ai/workspace";
|
|
3
|
+
export declare const webServicePreset: ServicePreset;
|
|
4
|
+
export declare const webService: LocalProcess;
|
|
5
|
+
export declare const nativeWebServiceCommand: Command;
|
|
6
|
+
//# sourceMappingURL=service-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-adapter.d.ts","sourceRoot":"","sources":["../src/service-adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuC,KAAK,OAAO,EAAmB,MAAM,gBAAgB,CAAC;AACpG,OAAO,EAIL,KAAK,YAAY,EAAE,KAAK,aAAa,EACtC,MAAM,qBAAqB,CAAC;AAe7B,eAAO,MAAM,gBAAgB,EAAE,aAG9B,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,YAyBxB,CAAC;AAUF,eAAO,MAAM,uBAAuB,EAAE,OAqCrC,CAAC"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { rmSync } from "node:fs";
|
|
2
|
+
import { dirname, isAbsolute } from "node:path";
|
|
3
|
+
import { registry, writeSecretFileCreateOnly } from "@cotal-ai/core";
|
|
4
|
+
import { CommandFailure, WEB_PIDFILE, WEB_SERVICE_ADAPTER, claimServicePid, colorEnabled, identityRecord, observeServiceStartup, oneLine, publishServiceStartup, readLocalRecordSource, readPinnedStaticCredential, resolveNativeServiceTarget, serviceOperationId, serviceStartupPath, serviceWebSessionPath, validateServiceStartupPath, } from "@cotal-ai/workspace";
|
|
5
|
+
import { normalizeWebHost, web, WEB_HOST, WEB_PORT } from "./web.js";
|
|
6
|
+
function exposure(host, port) {
|
|
7
|
+
if (host !== undefined && typeof host !== "string" || port !== undefined && (typeof port !== "number" || !Number.isSafeInteger(port) || port < 1 || port > 65535))
|
|
8
|
+
throw new CommandFailure("refused", "SCHEMA_INVALID", "the dashboard exposure requires a public host and integer port from 1 to 65535");
|
|
9
|
+
try {
|
|
10
|
+
return { host: normalizeWebHost(host), port: port === undefined ? WEB_PORT : Number(port) };
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
throw new CommandFailure("refused", "USAGE_INVALID", "the dashboard needs one reachable bind/browser host, not a wildcard or credential-bearing address");
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
function target(root, space, server) {
|
|
17
|
+
const selected = resolveNativeServiceTarget(root, space, server);
|
|
18
|
+
if (selected.mode !== "auth")
|
|
19
|
+
throw new CommandFailure("refused", "UNSUPPORTED", "this dashboard service requires a registered static-auth target and an explicit protected credential file; no user login, operator identity or open connection was substituted");
|
|
20
|
+
return selected;
|
|
21
|
+
}
|
|
22
|
+
export const webServicePreset = {
|
|
23
|
+
kind: "service-preset", name: "web", adapter: "web-service", timeoutMs: 40000,
|
|
24
|
+
summary: "explicit read-only dashboard with a protected credential file and private browser bootstrap",
|
|
25
|
+
};
|
|
26
|
+
export const webService = {
|
|
27
|
+
kind: "local-process", name: WEB_SERVICE_ADAPTER, label: "web dashboard service", order: 40,
|
|
28
|
+
controllerOnly: true, pidFile: WEB_PIDFILE,
|
|
29
|
+
service: {
|
|
30
|
+
abiVersion: 1, requiresCli: true, readiness: "process",
|
|
31
|
+
capabilities: { multiInstance: false, foreground: true, logs: true },
|
|
32
|
+
paths: { root: "directory", creds: "private-file" },
|
|
33
|
+
optionsSchema: { type: "object", additionalProperties: false, required: ["root", "creds", "read-only"], properties: {
|
|
34
|
+
root: { type: "string", minLength: 1, maxLength: 4096, description: "existing registered static-auth root; no signer is minted or handed to HTTP handlers" },
|
|
35
|
+
creds: { type: "string", minLength: 1, maxLength: 4096, description: "explicit protected credential file for the dashboard; no cached operator or seat identity fallback" },
|
|
36
|
+
"read-only": { type: "boolean", const: true, description: "required explicit read-only intent; no channel-purger or alternate transport is acquired" },
|
|
37
|
+
host: { type: "string", minLength: 1, maxLength: 253, description: `HTTP bind/browser host (default ${WEB_HOST}); remote exposure is explicit` },
|
|
38
|
+
port: { type: "integer", minimum: 1, maximum: 65535, description: `HTTP port (default ${WEB_PORT}); no implicit port substitution` },
|
|
39
|
+
server: { type: "string", minLength: 1, maxLength: 4096, description: "optional repeat of the registered broker; its TLS requirement is retained" },
|
|
40
|
+
} },
|
|
41
|
+
},
|
|
42
|
+
buildServiceLaunch(context) {
|
|
43
|
+
if (!context.cliInvocation?.length)
|
|
44
|
+
throw new CommandFailure("refused", "UNSUPPORTED", "the dashboard service needs the verified cotal entry; no PATH executable was substituted");
|
|
45
|
+
const root = String(context.options.root), creds = String(context.options.creds);
|
|
46
|
+
if (context.options["read-only"] !== true || context.credentialRef && context.credentialRef.path !== creds)
|
|
47
|
+
throw new CommandFailure("refused", "CONFLICT", "the dashboard requires explicit read-only intent and one unambiguous protected credential reference");
|
|
48
|
+
const selected = target(root, context.space, context.options.server), bind = exposure(context.options.host, context.options.port);
|
|
49
|
+
const [executable, ...self] = context.cliInvocation;
|
|
50
|
+
return { executable: executable, cwd: selected.root, args: [...self, ...(colorEnabled() ? [] : ["--no-color"]), "__service-web", "--root", selected.root, "--space", selected.space, "--server", selected.server, "--creds", creds, "--read-only", "--host", bind.host, "--port", String(bind.port), "--service-instance", context.instanceId, "--launch-request", context.launchRequestId, "--ready-file", serviceStartupPath(context)] };
|
|
51
|
+
},
|
|
52
|
+
async checkServiceReadiness(context) { return observeServiceStartup(context, "web-listening"); },
|
|
53
|
+
};
|
|
54
|
+
function validateChild(args) {
|
|
55
|
+
if (args.positionals.length || ["root", "space", "server", "creds", "host", "port", "service-instance", "launch-request", "ready-file"].some((name) => typeof args.values[name] !== "string" || !args.values[name]) || args.values["read-only"] !== true)
|
|
56
|
+
throw new CommandFailure("refused", "USAGE_INVALID", "the dashboard child requires a complete explicit read-only controller launch");
|
|
57
|
+
for (const name of ["root", "creds", "ready-file"])
|
|
58
|
+
if (!isAbsolute(String(args.values[name])) || /[\u0000-\u001f\u007f]/u.test(String(args.values[name])))
|
|
59
|
+
throw new CommandFailure("refused", "USAGE_INVALID", "native dashboard references must be absolute protected paths without terminal controls");
|
|
60
|
+
if (!/^[0-9]+$/.test(String(args.values.port)))
|
|
61
|
+
throw new CommandFailure("refused", "USAGE_INVALID", "the dashboard child needs its exact decimal port");
|
|
62
|
+
exposure(args.values.host, Number(args.values.port));
|
|
63
|
+
serviceOperationId(args.values["service-instance"]);
|
|
64
|
+
serviceOperationId(args.values["launch-request"]);
|
|
65
|
+
}
|
|
66
|
+
export const nativeWebServiceCommand = {
|
|
67
|
+
kind: "command", name: "__service-web", hidden: true, prepareMeshTarget: false,
|
|
68
|
+
summary: "native read-only dashboard child with private session and startup records",
|
|
69
|
+
flags: [
|
|
70
|
+
...["root", "space", "server", "creds", "host", "port", "service-instance", "launch-request", "ready-file"].map((name) => ({ name, type: "string" })),
|
|
71
|
+
{ name: "read-only", type: "boolean" },
|
|
72
|
+
], validate: validateChild,
|
|
73
|
+
async run(args) {
|
|
74
|
+
validateChild(args);
|
|
75
|
+
const selected = target(String(args.values.root), String(args.values.space), String(args.values.server));
|
|
76
|
+
const credsPath = String(args.values.creds), readyPath = String(args.values["ready-file"]);
|
|
77
|
+
const instanceId = serviceOperationId(args.values["service-instance"]), launchRequestId = serviceOperationId(args.values["launch-request"]);
|
|
78
|
+
validateServiceStartupPath(readyPath, instanceId, launchRequestId);
|
|
79
|
+
const { creds } = await readPinnedStaticCredential(selected, credsPath);
|
|
80
|
+
const releasePid = claimServicePid({ root: selected.root, space: selected.space }, WEB_PIDFILE);
|
|
81
|
+
const sessionPath = serviceWebSessionPath({ space: selected.space, instanceId, launchRequestId, stateDirectory: dirname(readyPath) });
|
|
82
|
+
let sessionBytes;
|
|
83
|
+
try {
|
|
84
|
+
await web({ positionals: [], raw: [], values: { space: selected.space, server: selected.server, host: args.values.host, port: args.values.port, "no-open": true } }, {
|
|
85
|
+
connection: { root: selected.root, space: selected.space, server: selected.server, tls: selected.tlsRequired, mode: selected.mode, creds },
|
|
86
|
+
onSession(session) {
|
|
87
|
+
sessionBytes = JSON.stringify({ schemaVersion: 1, space: selected.space, instanceId, launchRequestId, process: identityRecord(process.pid), ...session }) + "\n";
|
|
88
|
+
writeSecretFileCreateOnly(sessionPath, sessionBytes);
|
|
89
|
+
process.stdout.write(`Read-only dashboard. Private browser bootstrap file: ${oneLine(sessionPath)}\n`);
|
|
90
|
+
},
|
|
91
|
+
onReady() { publishServiceStartup(readyPath, { phase: "web-listening", space: selected.space, instanceId, launchRequestId }); },
|
|
92
|
+
onClosed() {
|
|
93
|
+
if (sessionBytes !== undefined) {
|
|
94
|
+
const current = readLocalRecordSource(sessionPath, 16384, true);
|
|
95
|
+
if (current && current.toString("utf8") !== sessionBytes)
|
|
96
|
+
throw new CommandFailure("unknown", "OPERATION_UNKNOWN", "the private dashboard session record changed; no successor file or PID custody was removed");
|
|
97
|
+
if (current)
|
|
98
|
+
rmSync(sessionPath);
|
|
99
|
+
}
|
|
100
|
+
releasePid();
|
|
101
|
+
},
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
throw new CommandFailure("unknown", "OPERATION_UNKNOWN", "the original native dashboard startup or close was not confirmed; process/session custody was retained and no credential, callback or launch was retried");
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
};
|
|
109
|
+
registry.register(webServicePreset, webService, nativeWebServiceCommand);
|
|
110
|
+
//# sourceMappingURL=service-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service-adapter.js","sourceRoot":"","sources":["../src/service-adapter.ts"],"names":[],"mappings":"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"}
|
package/dist/web/app.js
CHANGED
|
@@ -14,6 +14,7 @@ const GLYPH = { working: "●", waiting: "◐", idle: "○", offline: "⊘" };
|
|
|
14
14
|
const MODES = ["chat", "unicast", "anycast"];
|
|
15
15
|
const isDemo = new URLSearchParams(location.search).has("demo");
|
|
16
16
|
|
|
17
|
+
let channelDeleteSupported = false;
|
|
17
18
|
let roster = [];
|
|
18
19
|
let channels = new Map(); // name -> { messages, description?, replay, replayWindow?, deliveryClass }
|
|
19
20
|
let unread = new Map(); // name -> messages seen since last viewed
|
|
@@ -622,7 +623,7 @@ function renderChannel() {
|
|
|
622
623
|
<span class="chip mode on">👥 ${plural(memberCount, "member")}</span>
|
|
623
624
|
${policy.join("")}
|
|
624
625
|
${isDemo ? `<span class="chip static" title="demo only">✦ summarize</span><span class="chip static" title="demo only">🔕 mute</span>` : ""}
|
|
625
|
-
${isDemo ? "" : `<span class="chip danger" id="ch-del" title="Delete this channel and all its messages">🗑 delete</span>`}
|
|
626
|
+
${isDemo || !channelDeleteSupported ? "" : `<span class="chip danger" id="ch-del" title="Delete this channel and all its messages">🗑 delete</span>`}
|
|
626
627
|
</div>
|
|
627
628
|
</div>
|
|
628
629
|
<div class="purpose">${purpose}</div>
|
|
@@ -641,7 +642,7 @@ function renderChannel() {
|
|
|
641
642
|
// stream is irreversible. On success the channel drops from the sidebar and the view falls
|
|
642
643
|
// back to all-activity; a stray live message would recreate it (deletion clears, not bans).
|
|
643
644
|
async function deleteChannel(name) {
|
|
644
|
-
if (!name || name === "*") return;
|
|
645
|
+
if (!channelDeleteSupported || !name || name === "*") return;
|
|
645
646
|
if (!confirm(`Delete #${name} and all its messages?\n\nThis purges the channel's history and cannot be undone.`)) return;
|
|
646
647
|
try {
|
|
647
648
|
const r = await fetch("/api/channel/delete", {
|
|
@@ -1014,7 +1015,7 @@ async function refresh() {
|
|
|
1014
1015
|
{
|
|
1015
1016
|
name: "space",
|
|
1016
1017
|
read: async () => SNAP.readJson(await fetch("/api/meta"), "space"),
|
|
1017
|
-
apply: (meta) => { $("space").textContent = `· ${meta.space}`; document.title = `Cotal · ${meta.space}`; },
|
|
1018
|
+
apply: (meta) => { channelDeleteSupported = meta.channelDeleteSupported === true; $("space").textContent = `· ${meta.space}${channelDeleteSupported ? "" : " · read-only"}`; document.title = `Cotal · ${meta.space}`; },
|
|
1018
1019
|
},
|
|
1019
1020
|
{
|
|
1020
1021
|
name: "peers",
|
package/dist/web.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ChildProcess } from "node:child_process";
|
|
2
2
|
import { type IncomingMessage } from "node:http";
|
|
3
3
|
import { type CotalMessage, type ParsedArgs } from "@cotal-ai/core";
|
|
4
|
-
import { type LocalProcess, type WebSession } from "@cotal-ai/workspace";
|
|
4
|
+
import { type Connection, type LocalProcess, type WebSession } from "@cotal-ai/workspace";
|
|
5
5
|
/** The dashboard's default port and its branded address. The server binds loopback
|
|
6
6
|
* (127.0.0.1) but serves any Host, so `cotal.localhost` — which Chrome/Firefox/Edge
|
|
7
7
|
* resolve to loopback with no DNS setup — just works. (Safari may not resolve
|
|
@@ -250,11 +250,23 @@ export interface ActivityPage {
|
|
|
250
250
|
* were asked for, which is the only evidence that separates filtering before the fetch from
|
|
251
251
|
* filtering after it. The route is a thin caller. */
|
|
252
252
|
export declare function activityBackfill(ep: ActivitySource, limit: number, deadlineMs?: number, concurrency?: number): Promise<ActivityPage>;
|
|
253
|
+
/** Trusted native service embedding. The supplied connection is explicitly scoped by its
|
|
254
|
+
* credential file; no account signer, cached operator login or purger mint is substituted. */
|
|
255
|
+
export interface WebServiceLifecycle {
|
|
256
|
+
readonly connection: Omit<Connection, "auth">;
|
|
257
|
+
readonly onSession: (session: WebSession) => void | Promise<void>;
|
|
258
|
+
readonly onReady: () => void | Promise<void>;
|
|
259
|
+
readonly onClosed: () => void | Promise<void>;
|
|
260
|
+
}
|
|
253
261
|
/** A live observability dashboard for a space, served over HTTP + SSE. A read-only
|
|
254
262
|
* observer endpoint (invisible to peers) feeds the page presence, channel history,
|
|
255
263
|
* and a live message stream — no manager required. Bound to loopback unless the operator opts in
|
|
256
264
|
* to a different host explicitly. */
|
|
257
|
-
export declare function web(args: ParsedArgs): Promise<void>;
|
|
265
|
+
export declare function web(args: ParsedArgs, lifecycle?: WebServiceLifecycle): Promise<void>;
|
|
266
|
+
/** Write the session file. A stale `web.session` with a broader mode is set to 0o600 through the
|
|
267
|
+
* descriptor on every write, so the launch URL and readiness nonce never stay readable to others,
|
|
268
|
+
* and a symlink at the name is refused rather than followed. */
|
|
269
|
+
export declare function writeWebSession(path: string, session: WebSession): void;
|
|
258
270
|
/** Open the persistent detached log privately even when it pre-existed with permissive metadata. */
|
|
259
271
|
export declare function openDetachedLog(logPath: string): number;
|
|
260
272
|
export declare function detachedArgs(raw: readonly string[], space: string, server: string): string[];
|
|
@@ -271,4 +283,7 @@ export declare function appendedLogTail(path: string, offset: number): string;
|
|
|
271
283
|
* are refused because they do not name a destination a browser or readiness probe can honestly use. */
|
|
272
284
|
export declare function normalizeWebHost(input: string | undefined): string;
|
|
273
285
|
export declare function webUrl(host: string, port: number): string;
|
|
286
|
+
/** Best-effort open of the dashboard in the default browser. The URL is already
|
|
287
|
+
* printed, so a failure here is harmless — never block startup on it. `--no-input` opens nothing. */
|
|
288
|
+
export declare function openBrowser(url: string): void;
|
|
274
289
|
//# sourceMappingURL=web.d.ts.map
|
package/dist/web.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAgB,KAAK,eAAe,EAAuB,MAAM,WAAW,CAAC;AAKpF,OAAO,
|
|
1
|
+
{"version":3,"file":"web.d.ts","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"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"}
|
package/dist/web.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { spawn } from "node:child_process";
|
|
2
2
|
import { randomBytes, timingSafeEqual } from "node:crypto";
|
|
3
3
|
import { createServer } from "node:http";
|
|
4
|
-
import { closeSync,
|
|
4
|
+
import { closeSync, fstatSync, openSync, readFileSync, readSync, rmSync, statSync, writeFileSync } from "node:fs";
|
|
5
5
|
import { fileURLToPath } from "node:url";
|
|
6
6
|
import { dirname, join } from "node:path";
|
|
7
|
-
import { CotalEndpoint, deliveryOf, isEventChannel, parseSubject, spacePrefix, mintCreds, newIdentity, clearChannel, assertValidChannel, hardenPrivate, } from "@cotal-ai/core";
|
|
8
|
-
import { c, connectOrExit, localProcessPath, parsePid, probeLiveness, probeWebReadiness, progressSignal, readWebSession, removePidPair, userViewAuth, userViewAuthOrExit, WEB_PIDFILE, WEB_READINESS_HEADER, WEB_READINESS_PATH, WEB_SESSION_FILE, writeIdentityPin, } from "@cotal-ai/workspace";
|
|
7
|
+
import { CotalEndpoint, deliveryOf, isEventChannel, parseSubject, spacePrefix, mintCreds, newIdentity, clearChannel, assertValidChannel, hardenPrivate, openPrivateAppend, writePrivateRecord, } from "@cotal-ai/core";
|
|
8
|
+
import { c, connectOrExit, inputDisabledByFlag, localProcessPath, parsePid, probeLiveness, probeWebReadiness, progressSignal, readWebSession, removePidPair, userViewAuth, userViewAuthOrExit, WEB_PIDFILE, WEB_READINESS_HEADER, WEB_READINESS_PATH, WEB_SESSION_FILE, writeIdentityPin, } from "@cotal-ai/workspace";
|
|
9
9
|
const here = dirname(fileURLToPath(import.meta.url));
|
|
10
10
|
/** The dashboard's default port and its branded address. The server binds loopback
|
|
11
11
|
* (127.0.0.1) but serves any Host, so `cotal.localhost` — which Chrome/Firefox/Edge
|
|
@@ -181,9 +181,6 @@ export const webProcess = {
|
|
|
181
181
|
// The exit handler removes it, but an exit handler does not run on SIGKILL — so without this the
|
|
182
182
|
// credential outlives the process it authenticates.
|
|
183
183
|
artifacts: [WEB_SESSION_FILE],
|
|
184
|
-
// The dashboard starts target-resolved from any directory and claims its pidfile under the
|
|
185
|
-
// TARGET mesh's root (`conn.root` below); `cotal down web` must resolve the same mesh.
|
|
186
|
-
rootedAt: "target",
|
|
187
184
|
};
|
|
188
185
|
/** Atomically claim this mesh's web pidfile so concurrent custom-port launches cannot overwrite it,
|
|
189
186
|
* then pin this process's identity beside it. The pin follows the exclusive create because
|
|
@@ -214,8 +211,8 @@ function claimPid(path) {
|
|
|
214
211
|
throw new Error(removal
|
|
215
212
|
? `web extension removal is in progress (pid ${pid})`
|
|
216
213
|
: `web dashboard is already running for this mesh (pid ${pid})`);
|
|
217
|
-
// Stale is advice to clean the record, so it is given only for a pid proven gone or an empty
|
|
218
|
-
//
|
|
214
|
+
// Stale is advice to clean the record, so it is given only for a pid proven gone or an empty
|
|
215
|
+
// husk, which has no process behind it. Anything else may still front a live process.
|
|
219
216
|
if (liveness === "dead" || raw === "")
|
|
220
217
|
throw new Error(removal
|
|
221
218
|
? `web dashboard has a stale extension-removal reservation at ${path} - remove it and retry`
|
|
@@ -683,7 +680,7 @@ async function connectWithoutSeed(raw, values, host, port) {
|
|
|
683
680
|
* observer endpoint (invisible to peers) feeds the page presence, channel history,
|
|
684
681
|
* and a live message stream — no manager required. Bound to loopback unless the operator opts in
|
|
685
682
|
* to a different host explicitly. */
|
|
686
|
-
export async function web(args) {
|
|
683
|
+
export async function web(args, lifecycle) {
|
|
687
684
|
const values = args.values;
|
|
688
685
|
// Validate the exposure coordinates before connecting to the broker or claiming local artifacts.
|
|
689
686
|
// An invalid exposure request must have no dashboard side effects.
|
|
@@ -697,12 +694,13 @@ export async function web(args) {
|
|
|
697
694
|
// "channel-purger" view per action, so each destructive click is a fresh ledger check, and
|
|
698
695
|
// `cotal actor revoke` kills the dashboard live (eviction) while a scope edit bites at the next
|
|
699
696
|
// refresh.
|
|
700
|
-
const started =
|
|
697
|
+
const started = lifecycle ? { conn: lifecycle.connection, user: undefined, pidPath: undefined, purgeCreds: undefined }
|
|
698
|
+
: await connectWithoutSeed(args.raw, values, host, port);
|
|
701
699
|
if (!started)
|
|
702
700
|
return;
|
|
703
701
|
const { conn, user, pidPath, purgeCreds } = started;
|
|
704
702
|
const { server, space } = conn;
|
|
705
|
-
const sessionPath = conn.root ? localProcessPath(WEB_SESSION_FILE, { root: conn.root, space }) : undefined;
|
|
703
|
+
const sessionPath = !lifecycle && conn.root ? localProcessPath(WEB_SESSION_FILE, { root: conn.root, space }) : undefined;
|
|
706
704
|
// Observer: never registers presence, never consumes an inbox — invisible to peers.
|
|
707
705
|
const ep = new CotalEndpoint({
|
|
708
706
|
space,
|
|
@@ -721,9 +719,9 @@ export async function web(args) {
|
|
|
721
719
|
registerPresence: false,
|
|
722
720
|
watchPresence: true,
|
|
723
721
|
});
|
|
724
|
-
const reportEndpoint = (e) => console.error(c.red("! " + e.message));
|
|
722
|
+
const reportEndpoint = (e) => console.error(c.red(lifecycle ? "! native dashboard endpoint reported an error; diagnostic body omitted" : "! " + e.message));
|
|
725
723
|
ep.on("error", reportEndpoint);
|
|
726
|
-
ep.on("warning", (e) => console.error(c.yellow("! " + e.message)));
|
|
724
|
+
ep.on("warning", (e) => console.error(c.yellow(lifecycle ? "! native dashboard endpoint reported a warning; diagnostic body omitted" : "! " + e.message)));
|
|
727
725
|
await ep.start();
|
|
728
726
|
// The dashboard does not yet have a manager/session-store observer. Carry the absence as data so
|
|
729
727
|
// both browser renderers can say so honestly without deriving progress from the heartbeat.
|
|
@@ -847,7 +845,7 @@ export async function web(args) {
|
|
|
847
845
|
return;
|
|
848
846
|
}
|
|
849
847
|
if (path === WEB_READINESS_PATH)
|
|
850
|
-
return json(res, { space, pid: process.pid });
|
|
848
|
+
return json(res, { space, pid: process.pid, channelDeleteSupported: lifecycle === undefined });
|
|
851
849
|
if (path === "/api/roster")
|
|
852
850
|
return json(res, rosterSnapshot());
|
|
853
851
|
if (path === "/api/membership") {
|
|
@@ -963,6 +961,8 @@ export async function web(args) {
|
|
|
963
961
|
// per-delete channel-purger view (user mode), never the account seed. A wildcard / missing
|
|
964
962
|
// channel is a 400.
|
|
965
963
|
if (path === "/api/channel/delete" && req.method === "POST") {
|
|
964
|
+
if (lifecycle)
|
|
965
|
+
return json(res, { error: "this service was explicitly configured read-only; no channel-purger authority or alternate transport was acquired", code: "PERMISSION_DENIED" }, 403);
|
|
966
966
|
const body = await readBody(req).catch((e) => {
|
|
967
967
|
// A body this server DECLINED TO READ is not a body with no channel in it. Flattening the
|
|
968
968
|
// refusal into `{}` here would answer "channel required", which tells the caller to add a
|
|
@@ -1023,7 +1023,7 @@ export async function web(args) {
|
|
|
1023
1023
|
// this split, a malformed query read in the log exactly like the dashboard breaking.
|
|
1024
1024
|
const status = e instanceof PayloadTooLarge ? 413 : e instanceof BadRequest ? 400 : 500;
|
|
1025
1025
|
const caller = status < 500;
|
|
1026
|
-
console.error(c[caller ? "yellow" : "red"](`${caller ? "~" : "!"} ${req.method ?? "GET"} ${requestTargetForLog(req, gate.launchToken)} ${caller ? "refused" : "failed"}: ${why}`));
|
|
1026
|
+
console.error(c[caller ? "yellow" : "red"](lifecycle ? `native dashboard request ${caller ? "refused" : "failed"}; diagnostic body omitted` : `${caller ? "~" : "!"} ${req.method ?? "GET"} ${requestTargetForLog(req, gate.launchToken)} ${caller ? "refused" : "failed"}: ${why}`));
|
|
1027
1027
|
if (res.headersSent)
|
|
1028
1028
|
return void res.end();
|
|
1029
1029
|
// END THE CONNECTION A REFUSED BODY WAS RIDING ON, or the cap bounds only what the caller
|
|
@@ -1073,9 +1073,9 @@ export async function web(args) {
|
|
|
1073
1073
|
}, 20_000);
|
|
1074
1074
|
httpServer.on("error", (e) => {
|
|
1075
1075
|
if (e.code === "EADDRINUSE")
|
|
1076
|
-
console.error(c.red(`Port ${port} is in use. Pass --port <n>.`));
|
|
1076
|
+
console.error(c.red(lifecycle ? "native dashboard port is in use; no alternate port was selected" : `Port ${port} is in use. Pass --port <n>.`));
|
|
1077
1077
|
else
|
|
1078
|
-
console.error(c.red("! " + e.message));
|
|
1078
|
+
console.error(c.red(lifecycle ? "! native dashboard HTTP listener failed; diagnostic body omitted" : "! " + e.message));
|
|
1079
1079
|
process.exit(1);
|
|
1080
1080
|
});
|
|
1081
1081
|
await new Promise((ready) => httpServer.listen(port, host, ready));
|
|
@@ -1086,6 +1086,8 @@ export async function web(args) {
|
|
|
1086
1086
|
// that cannot be launched (headless box, wrong default) must still have a way in — and because a
|
|
1087
1087
|
// token the operator cannot see is a token they cannot revoke by restarting.
|
|
1088
1088
|
const launchUrl = `${url}?k=${gate.launchToken}`;
|
|
1089
|
+
const boundAddress = httpServer.address();
|
|
1090
|
+
const browserSession = { launchUrl, readiness: gate.readinessNonce, host: boundAddress.address, port: boundAddress.port };
|
|
1089
1091
|
// Written AFTER listen() succeeded, so its existence means the port is ours. A detached parent
|
|
1090
1092
|
// reads it for the readiness nonce and the link; an operator who lost the printed line reads it
|
|
1091
1093
|
// for the link; `cotal status` reads it for the address to probe and the nonce to present. 0600 —
|
|
@@ -1093,33 +1095,24 @@ export async function web(args) {
|
|
|
1093
1095
|
if (sessionPath) {
|
|
1094
1096
|
// The socket's address, not the requested one: a hostname `--host` binds the address it resolved to.
|
|
1095
1097
|
const bound = httpServer.address();
|
|
1096
|
-
|
|
1097
|
-
// broader mode would keep it and quietly hold the launch URL and readiness nonce world-readable.
|
|
1098
|
-
// Open, then fchmod the DESCRIPTOR (not the path, which could be re-pointed between the calls),
|
|
1099
|
-
// so the mode is enforced on every write rather than only the first.
|
|
1100
|
-
const sfd = openSync(sessionPath, "w", 0o600);
|
|
1101
|
-
try {
|
|
1102
|
-
fchmodSync(sfd, 0o600);
|
|
1103
|
-
writeFileSync(sfd, JSON.stringify({ launchUrl, readiness: gate.readinessNonce, host: bound.address, port: bound.port }));
|
|
1104
|
-
}
|
|
1105
|
-
finally {
|
|
1106
|
-
closeSync(sfd);
|
|
1107
|
-
}
|
|
1098
|
+
writeWebSession(sessionPath, { launchUrl, readiness: gate.readinessNonce, host: bound.address, port: bound.port });
|
|
1108
1099
|
process.once("exit", () => rmSync(sessionPath, { force: true }));
|
|
1109
1100
|
}
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1101
|
+
if (!lifecycle) {
|
|
1102
|
+
console.log(`${c.bold("Cotal web")} - observing space ${c.bold(space)}`);
|
|
1103
|
+
console.log(c.dim(" god-view - DMs + anycast visible"));
|
|
1104
|
+
// A detached child's stdout and stderr are the persistent web.log. The parent reads the private
|
|
1105
|
+
// session file and prints the link to the operator's terminal, so repeating the live credential in
|
|
1106
|
+
// the log adds secret-at-rest exposure and no recovery value. An attached process still prints it.
|
|
1107
|
+
if (!process.env[DETACHED_LOG_ENV]) {
|
|
1108
|
+
printLaunchLink(launchUrl, host, port, "(Ctrl-C to stop)");
|
|
1109
|
+
console.log(c.dim(" the link is single-use; it opens one session in one browser"));
|
|
1110
|
+
}
|
|
1111
|
+
if (!values["no-open"])
|
|
1112
|
+
openBrowser(launchUrl);
|
|
1118
1113
|
}
|
|
1119
|
-
if (!values["no-open"])
|
|
1120
|
-
openBrowser(launchUrl);
|
|
1121
1114
|
let shuttingDown = false;
|
|
1122
|
-
const shutdown = async () => {
|
|
1115
|
+
const shutdown = async (code = 0) => {
|
|
1123
1116
|
if (shuttingDown)
|
|
1124
1117
|
return;
|
|
1125
1118
|
shuttingDown = true;
|
|
@@ -1127,14 +1120,35 @@ export async function web(args) {
|
|
|
1127
1120
|
await membershipWatch?.stop();
|
|
1128
1121
|
for (const res of clients)
|
|
1129
1122
|
res.end();
|
|
1130
|
-
|
|
1123
|
+
if (lifecycle)
|
|
1124
|
+
await new Promise((resolve, reject) => httpServer.close((error) => error ? reject(error) : resolve()));
|
|
1125
|
+
else
|
|
1126
|
+
httpServer.close();
|
|
1131
1127
|
await ep.stop();
|
|
1132
1128
|
if (pidPath)
|
|
1133
1129
|
releasePid(pidPath);
|
|
1134
|
-
|
|
1130
|
+
await lifecycle?.onClosed();
|
|
1131
|
+
process.exit(code);
|
|
1135
1132
|
};
|
|
1136
|
-
|
|
1137
|
-
|
|
1133
|
+
const stop = () => void shutdown().catch(() => {
|
|
1134
|
+
console.error("! native dashboard shutdown did not confirm completion; original custody was retained");
|
|
1135
|
+
process.exit(1);
|
|
1136
|
+
});
|
|
1137
|
+
process.on("SIGINT", lifecycle ? stop : () => void shutdown());
|
|
1138
|
+
process.on("SIGTERM", lifecycle ? stop : () => void shutdown());
|
|
1139
|
+
if (lifecycle) {
|
|
1140
|
+
try {
|
|
1141
|
+
await lifecycle.onSession(browserSession);
|
|
1142
|
+
await lifecycle.onReady();
|
|
1143
|
+
}
|
|
1144
|
+
catch {
|
|
1145
|
+
try {
|
|
1146
|
+
await shutdown(1);
|
|
1147
|
+
}
|
|
1148
|
+
catch { /* Unknown close retains original process/session custody. */ }
|
|
1149
|
+
throw new Error("native dashboard private startup was not confirmed; no replacement was launched");
|
|
1150
|
+
}
|
|
1151
|
+
}
|
|
1138
1152
|
await new Promise(() => { });
|
|
1139
1153
|
}
|
|
1140
1154
|
/** Launch the dashboard through this exact Cotal entrypoint, then report success only after the
|
|
@@ -1186,14 +1200,19 @@ async function launchDetachedWeb(raw, root, space, server, host, port, noOpen) {
|
|
|
1186
1200
|
if (!noOpen)
|
|
1187
1201
|
openBrowser(session.launchUrl);
|
|
1188
1202
|
}
|
|
1203
|
+
/** Write the session file. A stale `web.session` with a broader mode is set to 0o600 through the
|
|
1204
|
+
* descriptor on every write, so the launch URL and readiness nonce never stay readable to others,
|
|
1205
|
+
* and a symlink at the name is refused rather than followed. */
|
|
1206
|
+
export function writeWebSession(path, session) {
|
|
1207
|
+
writePrivateRecord(path, JSON.stringify(session));
|
|
1208
|
+
}
|
|
1189
1209
|
/** Open the persistent detached log privately even when it pre-existed with permissive metadata. */
|
|
1190
1210
|
export function openDetachedLog(logPath) {
|
|
1191
|
-
|
|
1192
|
-
//
|
|
1193
|
-
//
|
|
1194
|
-
|
|
1211
|
+
// The private open sets a stale file to 0o600 through the descriptor before either child stream
|
|
1212
|
+
// can write to it, and refuses a symlink. Then apply the core secret-file ACL convention for
|
|
1213
|
+
// win32, where POSIX mode bits do not express privacy. Fail closed before spawning if either fails.
|
|
1214
|
+
const logFd = openPrivateAppend(logPath);
|
|
1195
1215
|
try {
|
|
1196
|
-
fchmodSync(logFd, 0o600);
|
|
1197
1216
|
if (process.platform === "win32")
|
|
1198
1217
|
hardenPrivate(logPath, "file");
|
|
1199
1218
|
return logFd;
|
|
@@ -1453,8 +1472,10 @@ function noBody(path, declared) {
|
|
|
1453
1472
|
return new PayloadTooLarge(`request body announces ${announced}, over the 0 byte limit because ${path} takes no request body`);
|
|
1454
1473
|
}
|
|
1455
1474
|
/** Best-effort open of the dashboard in the default browser. The URL is already
|
|
1456
|
-
* printed, so a failure here is harmless — never block startup on it. */
|
|
1457
|
-
function openBrowser(url) {
|
|
1475
|
+
* printed, so a failure here is harmless — never block startup on it. `--no-input` opens nothing. */
|
|
1476
|
+
export function openBrowser(url) {
|
|
1477
|
+
if (inputDisabledByFlag())
|
|
1478
|
+
return;
|
|
1458
1479
|
const [cmd, args] = process.platform === "darwin"
|
|
1459
1480
|
? ["open", [url]]
|
|
1460
1481
|
: process.platform === "win32"
|
package/dist/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.js","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../src/web.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cotal-ai/web",
|
|
3
|
-
"description": "Cotal browser observability dashboard
|
|
4
|
-
"version": "0.
|
|
3
|
+
"description": "Cotal browser observability dashboard as an owned service preset.",
|
|
4
|
+
"version": "0.91.0",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -22,9 +22,9 @@
|
|
|
22
22
|
"@cotal-ai/workspace": "*"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@cotal-ai/core": "0.
|
|
25
|
+
"@cotal-ai/core": "0.91.0",
|
|
26
26
|
"@cotal-ai/smoke-kit": "0.0.0",
|
|
27
|
-
"@cotal-ai/workspace": "0.
|
|
27
|
+
"@cotal-ai/workspace": "0.91.0",
|
|
28
28
|
"dompurify": "^3.4.12",
|
|
29
29
|
"marked": "^18.0.6"
|
|
30
30
|
},
|