@openagt/dashboard 0.37.0 → 0.39.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/dist/client.d.ts +1 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +1 -0
- package/dist/client.js.map +1 -1
- package/dist/computer-name.d.ts +3 -0
- package/dist/computer-name.d.ts.map +1 -0
- package/dist/computer-name.js +6 -0
- package/dist/computer-name.js.map +1 -0
- package/dist/daemon-runtime.d.ts.map +1 -1
- package/dist/daemon-runtime.js +64 -7
- package/dist/daemon-runtime.js.map +1 -1
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +6 -1
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/compress.d.ts +23 -0
- package/dist/dashboard/compress.d.ts.map +1 -0
- package/dist/dashboard/compress.js +55 -0
- package/dist/dashboard/compress.js.map +1 -0
- package/dist/dashboard/copied-logins.d.ts +54 -0
- package/dist/dashboard/copied-logins.d.ts.map +1 -0
- package/dist/dashboard/copied-logins.js +60 -0
- package/dist/dashboard/copied-logins.js.map +1 -0
- package/dist/dashboard/copy-logins.d.ts +5 -1
- package/dist/dashboard/copy-logins.d.ts.map +1 -1
- package/dist/dashboard/copy-logins.js +9 -3
- package/dist/dashboard/copy-logins.js.map +1 -1
- package/dist/dashboard/git-hosts.d.ts +2 -0
- package/dist/dashboard/git-hosts.d.ts.map +1 -1
- package/dist/dashboard/git-hosts.js +1 -1
- package/dist/dashboard/git-hosts.js.map +1 -1
- package/dist/dashboard/logins-sync.d.ts +146 -0
- package/dist/dashboard/logins-sync.d.ts.map +1 -0
- package/dist/dashboard/logins-sync.js +344 -0
- package/dist/dashboard/logins-sync.js.map +1 -0
- package/dist/dashboard/machine-runs.d.ts +111 -0
- package/dist/dashboard/machine-runs.d.ts.map +1 -0
- package/dist/dashboard/machine-runs.js +252 -0
- package/dist/dashboard/machine-runs.js.map +1 -0
- package/dist/dashboard/module-agents.d.ts +44 -0
- package/dist/dashboard/module-agents.d.ts.map +1 -0
- package/dist/dashboard/module-agents.js +25 -0
- package/dist/dashboard/module-agents.js.map +1 -0
- package/dist/dashboard/module-serve.d.ts +10 -1
- package/dist/dashboard/module-serve.d.ts.map +1 -1
- package/dist/dashboard/module-serve.js +25 -6
- package/dist/dashboard/module-serve.js.map +1 -1
- package/dist/dashboard/relay-endpoints.d.ts +8 -4
- package/dist/dashboard/relay-endpoints.d.ts.map +1 -1
- package/dist/dashboard/relay-endpoints.js +41 -9
- package/dist/dashboard/relay-endpoints.js.map +1 -1
- package/dist/dashboard/remote-run.d.ts +18 -3
- package/dist/dashboard/remote-run.d.ts.map +1 -1
- package/dist/dashboard/remote-run.js +32 -5
- package/dist/dashboard/remote-run.js.map +1 -1
- package/dist/dashboard/rpc-serve.d.ts +8 -2
- package/dist/dashboard/rpc-serve.d.ts.map +1 -1
- package/dist/dashboard/rpc-serve.js +41 -11
- package/dist/dashboard/rpc-serve.js.map +1 -1
- package/dist/dashboard/runs-watch.d.ts +32 -0
- package/dist/dashboard/runs-watch.d.ts.map +1 -0
- package/dist/dashboard/runs-watch.js +89 -0
- package/dist/dashboard/runs-watch.js.map +1 -0
- package/dist/dashboard/server.d.ts +4 -2
- package/dist/dashboard/server.d.ts.map +1 -1
- package/dist/dashboard/server.js +1 -1
- package/dist/dashboard/server.js.map +1 -1
- package/dist/dashboard/static.d.ts.map +1 -1
- package/dist/dashboard/static.js +8 -6
- package/dist/dashboard/static.js.map +1 -1
- package/dist/dashboard-bundle/assets/host/module-CUc1n2SP.js +1 -0
- package/dist/dashboard-bundle/assets/host/react-B7Fi4tYT.js +1 -0
- package/dist/dashboard-bundle/assets/host/react-dom-client-owmMVl4T.js +1 -0
- package/dist/dashboard-bundle/assets/host/react-dom-oeGwGKD7.js +1 -0
- package/dist/dashboard-bundle/assets/host/react-jsx-runtime-Dxx08tyw.js +1 -0
- package/dist/dashboard-bundle/assets/main-Cv9CrCec.css +2 -0
- package/dist/dashboard-bundle/assets/main-dejlwmyP.js +149 -0
- package/dist/dashboard-bundle/assets/module-DR2oCWs5.js +14 -0
- package/dist/dashboard-bundle/index.html +10 -9
- package/dist/dashboard-rpc/accounts.d.ts +17 -1
- package/dist/dashboard-rpc/accounts.d.ts.map +1 -1
- package/dist/dashboard-rpc/accounts.js +46 -8
- package/dist/dashboard-rpc/accounts.js.map +1 -1
- package/dist/dashboard-rpc/context.js +1 -1
- package/dist/dashboard-rpc/context.js.map +1 -1
- package/dist/dashboard-rpc/copied-logins.d.ts +49 -0
- package/dist/dashboard-rpc/copied-logins.d.ts.map +1 -0
- package/dist/dashboard-rpc/copied-logins.js +179 -0
- package/dist/dashboard-rpc/copied-logins.js.map +1 -0
- package/dist/dashboard-rpc/index.d.ts +6 -3
- package/dist/dashboard-rpc/index.d.ts.map +1 -1
- package/dist/dashboard-rpc/index.js +10 -4
- package/dist/dashboard-rpc/index.js.map +1 -1
- package/dist/dashboard-rpc/logins.d.ts +18 -0
- package/dist/dashboard-rpc/logins.d.ts.map +1 -1
- package/dist/dashboard-rpc/logins.js +51 -7
- package/dist/dashboard-rpc/logins.js.map +1 -1
- package/dist/dashboard-rpc/machines.d.ts +15 -2
- package/dist/dashboard-rpc/machines.d.ts.map +1 -1
- package/dist/dashboard-rpc/machines.js +32 -8
- package/dist/dashboard-rpc/machines.js.map +1 -1
- package/dist/dashboard-rpc/modules.d.ts +9 -9
- package/dist/dashboard-rpc/modules.d.ts.map +1 -1
- package/dist/dashboard-rpc/modules.js +14 -13
- package/dist/dashboard-rpc/modules.js.map +1 -1
- package/dist/dashboard-rpc/people.d.ts +16 -0
- package/dist/dashboard-rpc/people.d.ts.map +1 -0
- package/dist/dashboard-rpc/people.js +32 -0
- package/dist/dashboard-rpc/people.js.map +1 -0
- package/dist/dashboard-rpc/reads.d.ts +29 -1
- package/dist/dashboard-rpc/reads.d.ts.map +1 -1
- package/dist/dashboard-rpc/reads.js +111 -8
- package/dist/dashboard-rpc/reads.js.map +1 -1
- package/dist/dashboard-rpc/relay-dispatch.d.ts +6 -0
- package/dist/dashboard-rpc/relay-dispatch.d.ts.map +1 -1
- package/dist/dashboard-rpc/relay-dispatch.js +25 -2
- package/dist/dashboard-rpc/relay-dispatch.js.map +1 -1
- package/dist/dashboard-rpc/runs-changed.d.ts +8 -0
- package/dist/dashboard-rpc/runs-changed.d.ts.map +1 -0
- package/dist/dashboard-rpc/runs-changed.js +62 -0
- package/dist/dashboard-rpc/runs-changed.js.map +1 -0
- package/dist/dashboard-rpc/server-logins.d.ts +22 -0
- package/dist/dashboard-rpc/server-logins.d.ts.map +1 -0
- package/dist/dashboard-rpc/server-logins.js +26 -0
- package/dist/dashboard-rpc/server-logins.js.map +1 -0
- package/dist/dashboard-rpc/test-context.js +1 -1
- package/dist/dashboard-rpc/test-context.js.map +1 -1
- package/dist/health.d.ts +20 -0
- package/dist/health.d.ts.map +1 -0
- package/dist/health.js +98 -0
- package/dist/health.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/module-types/dashboard/components/FilterChips.d.ts +12 -0
- package/dist/module-types/dashboard/components/Page.d.ts +12 -0
- package/dist/module-types/dashboard/components/SidebarToggle.d.ts +4 -0
- package/dist/module-types/dashboard/components/StatTile.d.ts +15 -0
- package/dist/module-types/dashboard/components/ui/sheet.d.ts +10 -0
- package/dist/module-types/dashboard/components/ui/sidebar.d.ts +71 -0
- package/dist/module-types/dashboard/lib/use-async.d.ts +24 -6
- package/dist/module-types/dashboard/lib/use-mobile.d.ts +4 -0
- package/dist/module-types/dashboard/lib/use-modules.d.ts +7 -3
- package/dist/module-types/dashboard/module/index.d.ts +42 -15
- package/dist/module-types/src/client.d.ts +1 -0
- package/dist/module-types/src/computer-name.d.ts +2 -0
- package/dist/module-types/src/dashboard/compress.d.ts +22 -0
- package/dist/module-types/src/dashboard/copied-logins.d.ts +53 -0
- package/dist/module-types/src/dashboard/git-hosts.d.ts +2 -0
- package/dist/module-types/src/dashboard/logins-sync.d.ts +145 -0
- package/dist/module-types/src/dashboard/machine-runs.d.ts +110 -0
- package/dist/module-types/src/dashboard/module-agents.d.ts +43 -0
- package/dist/module-types/src/dashboard/module-serve.d.ts +10 -1
- package/dist/module-types/src/dashboard/remote-run.d.ts +18 -3
- package/dist/module-types/src/dashboard/rpc-serve.d.ts +8 -2
- package/dist/module-types/src/dashboard/runs-watch.d.ts +31 -0
- package/dist/module-types/src/dashboard-rpc/accounts.d.ts +17 -1
- package/dist/module-types/src/dashboard-rpc/copied-logins.d.ts +48 -0
- package/dist/module-types/src/dashboard-rpc/index.d.ts +6 -3
- package/dist/module-types/src/dashboard-rpc/logins.d.ts +18 -0
- package/dist/module-types/src/dashboard-rpc/machines.d.ts +15 -2
- package/dist/module-types/src/dashboard-rpc/modules.d.ts +9 -9
- package/dist/module-types/src/dashboard-rpc/people.d.ts +15 -0
- package/dist/module-types/src/dashboard-rpc/reads.d.ts +29 -1
- package/dist/module-types/src/dashboard-rpc/runs-changed.d.ts +7 -0
- package/dist/module-types/src/dashboard-rpc/server-logins.d.ts +21 -0
- package/dist/module-types/src/health.d.ts +19 -0
- package/dist/module-types/src/index.d.ts +1 -0
- package/dist/module-types/src/overview-layout.d.ts +37 -0
- package/dist/module-types/src/project-hooks.d.ts +11 -1
- package/dist/module-types/src/registry.d.ts +14 -0
- package/dist/module-types/src/store/agent-store.d.ts +15 -1
- package/dist/module-types/src/store/branches.d.ts +2 -2
- package/dist/module-types/src/store/git-host.d.ts +8 -2
- package/dist/module-types/src/store/provided.d.ts +5 -4
- package/dist/module-types/src/store/queue.d.ts +3 -2
- package/dist/module-types/src/store/runs.d.ts +6 -3
- package/dist/module-types/src/store/tickets.d.ts +3 -2
- package/dist/module.css +1 -1
- package/dist/overview-layout.d.ts +38 -0
- package/dist/overview-layout.d.ts.map +1 -0
- package/dist/overview-layout.js +61 -0
- package/dist/overview-layout.js.map +1 -0
- package/dist/project-hooks.d.ts +11 -1
- package/dist/project-hooks.d.ts.map +1 -1
- package/dist/project-hooks.js +21 -11
- package/dist/project-hooks.js.map +1 -1
- package/dist/registry.d.ts +14 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +31 -2
- package/dist/registry.js.map +1 -1
- package/dist/store/agent-store.d.ts +15 -1
- package/dist/store/agent-store.d.ts.map +1 -1
- package/dist/store/agent-store.js.map +1 -1
- package/dist/store/branches.d.ts +2 -2
- package/dist/store/branches.d.ts.map +1 -1
- package/dist/store/branches.js +8 -2
- package/dist/store/branches.js.map +1 -1
- package/dist/store/git-host.d.ts +8 -2
- package/dist/store/git-host.d.ts.map +1 -1
- package/dist/store/git-host.js +21 -2
- package/dist/store/git-host.js.map +1 -1
- package/dist/store/provided.d.ts +5 -4
- package/dist/store/provided.d.ts.map +1 -1
- package/dist/store/provided.js +10 -9
- package/dist/store/provided.js.map +1 -1
- package/dist/store/queue.d.ts +3 -2
- package/dist/store/queue.d.ts.map +1 -1
- package/dist/store/queue.js +9 -2
- package/dist/store/queue.js.map +1 -1
- package/dist/store/runs.d.ts +6 -3
- package/dist/store/runs.d.ts.map +1 -1
- package/dist/store/runs.js +10 -3
- package/dist/store/runs.js.map +1 -1
- package/dist/store/tickets.d.ts +3 -2
- package/dist/store/tickets.d.ts.map +1 -1
- package/dist/store/tickets.js +9 -2
- package/dist/store/tickets.js.map +1 -1
- package/package.json +23 -23
- package/dist/dashboard-bundle/assets/main-B_YIbzfX.js +0 -148
- package/dist/dashboard-bundle/assets/main-COZtHuZ-.css +0 -2
- package/dist/dashboard-bundle/assets/module-B_KMN8r0.js +0 -14
- package/dist/dashboard-bundle/host/module.js +0 -1
- package/dist/dashboard-bundle/host/react-dom-client.js +0 -1
- package/dist/dashboard-bundle/host/react-dom.js +0 -1
- package/dist/dashboard-bundle/host/react-jsx-runtime.js +0 -1
- package/dist/dashboard-bundle/host/react.js +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { homedir } from 'node:os';
|
|
2
2
|
import { contextProjects, resolveProjectPath } from './context.js';
|
|
3
3
|
import { findComputerModule, findProjectModule, readComputerModules, readProjectModules, runModuleCommand as runCommand } from '../project-modules.js';
|
|
4
|
-
import { computerModuleUrl, moduleUrl } from '../dashboard/module-serve.js';
|
|
4
|
+
import { computerModuleUrl, moduleUrl, versionedModuleUrl } from '../dashboard/module-serve.js';
|
|
5
5
|
import { providedDataChanged } from '../store/provided.js';
|
|
6
6
|
import { callModuleRead, serverHost } from '../dashboard/module-host.js';
|
|
7
7
|
import { relayOr } from './relay-agent.js';
|
|
@@ -22,7 +22,7 @@ import { DATA_BRANCH, pullFileBranch } from '@openagt/agent-data';
|
|
|
22
22
|
export async function onModules() {
|
|
23
23
|
const byPackage = new Map();
|
|
24
24
|
for (const module of await readComputerModules().catch(() => [])) {
|
|
25
|
-
byPackage.set(module.package, { package: module.package, url: computerModuleUrl(module), projects: [], computer: true });
|
|
25
|
+
byPackage.set(module.package, { package: module.package, url: await versionedModuleUrl(computerModuleUrl(module), module), projects: [], computer: true });
|
|
26
26
|
}
|
|
27
27
|
for (const project of await contextProjects().list()) {
|
|
28
28
|
const modules = await readProjectModules(project.path).catch(() => []);
|
|
@@ -31,7 +31,7 @@ export async function onModules() {
|
|
|
31
31
|
if (known)
|
|
32
32
|
known.projects.push(project.id);
|
|
33
33
|
else
|
|
34
|
-
byPackage.set(module.package, { package: module.package, url: moduleUrl(project.id, module), projects: [project.id] });
|
|
34
|
+
byPackage.set(module.package, { package: module.package, url: await versionedModuleUrl(moduleUrl(project.id, module), module), projects: [project.id] });
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
return [...byPackage.values()];
|
|
@@ -40,15 +40,15 @@ export async function onModules() {
|
|
|
40
40
|
* Run one of a module package's commands in one project and answer its JSON output: how a module
|
|
41
41
|
* reads (and changes) its own data. Refused for an unknown project and for a package that is not a
|
|
42
42
|
* module of that project, so a page can run only its own package's commands, never an arbitrary
|
|
43
|
-
* program.
|
|
44
|
-
* provided data (its queue, its runs): the command may have written it, and the next read sees
|
|
45
|
-
* that at once instead of a cached copy.
|
|
43
|
+
* program.
|
|
46
44
|
*
|
|
47
|
-
* `acts` says the command is a module's action on the project (a
|
|
48
|
-
*
|
|
49
|
-
* every minute,
|
|
50
|
-
*
|
|
51
|
-
*
|
|
45
|
+
* `acts` says the command is a module's action on the project (a claim released, an entry added),
|
|
46
|
+
* not a page's read. Only then does OpenAgent converge the project's data branch with origin, as
|
|
47
|
+
* its clock does every minute, and forget what it had read of the data that package provides (the
|
|
48
|
+
* queue package's queue): in a project that shares its records a package's command writes as a
|
|
49
|
+
* remote writer, straight to origin, and the next read shows the change at once instead of at the
|
|
50
|
+
* next sync. A read writes nothing, so what was read stays: the Members card reading the logs
|
|
51
|
+
* package's people leaves the runs that package provides read.
|
|
52
52
|
*/
|
|
53
53
|
export async function runModuleCommand(projectId, pkg, args, command, acts = false) {
|
|
54
54
|
const root = await resolveProjectPath(projectId);
|
|
@@ -60,9 +60,10 @@ export async function runModuleCommand(projectId, pkg, args, command, acts = fal
|
|
|
60
60
|
if (!module)
|
|
61
61
|
return { ok: false, error: `${pkg} brings no module to this project` };
|
|
62
62
|
const result = await runCommand(root, module, args, command);
|
|
63
|
-
if (acts)
|
|
63
|
+
if (acts) {
|
|
64
64
|
await pullFileBranch(root, DATA_BRANCH, { log: () => { } }).catch(() => { });
|
|
65
|
-
|
|
65
|
+
providedDataChanged(root, pkg);
|
|
66
|
+
}
|
|
66
67
|
return result;
|
|
67
68
|
}
|
|
68
69
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/dashboard-rpc/modules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAClE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,gBAAgB,IAAI,UAAU,EAA4B,MAAM,uBAAuB,CAAA;AAChL,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;
|
|
1
|
+
{"version":3,"file":"modules.js","sourceRoot":"","sources":["../../src/dashboard-rpc/modules.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type GitHostFor, type GitHostPerson } from '../store/git-host.js';
|
|
2
|
+
/** A person of a project, as its git host knows them: their email, login and picture. */
|
|
3
|
+
export type HostPerson = GitHostPerson & {
|
|
4
|
+
email: string;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* The git host's accounts behind these emails of a project's (`people` of its git host): what a
|
|
8
|
+
* card shows as each person's picture. What it said of an email is kept a day, a miss too, so a
|
|
9
|
+
* card that asks every minute asks the host once a day per person. No git host: nobody.
|
|
10
|
+
*/
|
|
11
|
+
export declare function onGitHostPeople(projectId: string, emails: string[], deps?: {
|
|
12
|
+
gitHost?: GitHostFor;
|
|
13
|
+
now?: () => number;
|
|
14
|
+
resolve?: (projectId: string) => Promise<string | undefined>;
|
|
15
|
+
}): Promise<HostPerson[]>;
|
|
16
|
+
//# sourceMappingURL=people.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"people.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/people.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAG1F,yFAAyF;AACzF,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAO1D;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,UAAU,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAiBvN"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { projectGitHost } from '../store/git-host.js';
|
|
2
|
+
import { resolveProjectPath } from './context.js';
|
|
3
|
+
/** How long what the git host said of an email is kept, an email it knows nobody for too: a person's account and picture seldom change, and each ask is a call to the host. */
|
|
4
|
+
const KEEP_MS = 24 * 60 * 60_000;
|
|
5
|
+
const kept = new Map();
|
|
6
|
+
/**
|
|
7
|
+
* The git host's accounts behind these emails of a project's (`people` of its git host): what a
|
|
8
|
+
* card shows as each person's picture. What it said of an email is kept a day, a miss too, so a
|
|
9
|
+
* card that asks every minute asks the host once a day per person. No git host: nobody.
|
|
10
|
+
*/
|
|
11
|
+
export async function onGitHostPeople(projectId, emails, deps = {}) {
|
|
12
|
+
const root = await (deps.resolve ?? resolveProjectPath)(projectId);
|
|
13
|
+
if (!root)
|
|
14
|
+
return [];
|
|
15
|
+
const now = (deps.now ?? Date.now)();
|
|
16
|
+
const key = (email) => `${root}\n${email.toLowerCase()}`;
|
|
17
|
+
const fresh = (email) => {
|
|
18
|
+
const known = kept.get(key(email));
|
|
19
|
+
return known !== undefined && now - known.at < KEEP_MS;
|
|
20
|
+
};
|
|
21
|
+
const asking = [...new Set(emails.filter(email => typeof email === 'string' && email.includes('@')))].filter(email => !fresh(email));
|
|
22
|
+
if (asking.length) {
|
|
23
|
+
const host = await (deps.gitHost ?? projectGitHost)(root).catch(() => undefined);
|
|
24
|
+
const found = host ? await host.people(asking).catch(() => undefined) : undefined;
|
|
25
|
+
// The host could not be asked (no host, or it failed): nothing is kept, so it is asked again next time.
|
|
26
|
+
if (found)
|
|
27
|
+
for (const email of asking)
|
|
28
|
+
kept.set(key(email), { at: now, person: found.find(person => person.email.toLowerCase() === email.toLowerCase()) });
|
|
29
|
+
}
|
|
30
|
+
return emails.flatMap(email => kept.get(key(email))?.person ?? []);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=people.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"people.js","sourceRoot":"","sources":["../../src/dashboard-rpc/people.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAuC,MAAM,sBAAsB,CAAA;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAKjD,+KAA+K;AAC/K,MAAM,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAA;AAEhC,MAAM,IAAI,GAAG,IAAI,GAAG,EAA0D,CAAA;AAE9E;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,SAAiB,EAAE,MAAgB,EAAE,IAAI,GAA+G,EAAE;IAC9L,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,kBAAkB,CAAC,CAAC,SAAS,CAAC,CAAA;IAClE,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAA;IACpB,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAA;IACpC,MAAM,GAAG,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,GAAG,IAAI,KAAK,KAAK,CAAC,WAAW,EAAE,EAAE,CAAA;IACxE,MAAM,KAAK,GAAG,CAAC,KAAa,EAAW,EAAE;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;QAClC,OAAO,KAAK,KAAK,SAAS,IAAI,GAAG,GAAG,KAAK,CAAC,EAAE,GAAG,OAAO,CAAA;IACxD,CAAC,CAAA;IACD,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IACpI,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAChF,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACjF,wGAAwG;QACxG,IAAI,KAAK;YAAE,KAAK,MAAM,KAAK,IAAI,MAAM;gBAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAA;IAC5J,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC,CAAA;AACpE,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type ModuleAgent, type ModuleAgentsWanted } from '../dashboard/module-agents.js';
|
|
1
2
|
import type { BridgeBrowserStatus } from '../bridge-browser.js';
|
|
2
3
|
import { type AgentDoing, type AgentMeta, type BranchesFor } from '../store/index.js';
|
|
3
4
|
import { type GitHostHome } from '../store/git-host.js';
|
|
@@ -17,6 +18,7 @@ import type { OpenAgentEvent } from '../events.js';
|
|
|
17
18
|
import type { BridgeEvent, BridgeHello, BridgeQuestion } from '../dashboard/bridge-endpoints.js';
|
|
18
19
|
import type { BridgeAnswer, BridgeContact, BridgeVersion } from '../dashboard/bridge-store.js';
|
|
19
20
|
import type { SavedMachine } from '../dashboard/rpc-serve.js';
|
|
21
|
+
import { type OwnRuns } from '../dashboard/machine-runs.js';
|
|
20
22
|
/**
|
|
21
23
|
* The project's runs, most-recent first (or `[]`). The archived (finished) runs
|
|
22
24
|
* from `agents/`, plus every live agent prepended — so the sidebar shows an in-progress
|
|
@@ -37,6 +39,31 @@ import type { SavedMachine } from '../dashboard/rpc-serve.js';
|
|
|
37
39
|
* instead of losing it.
|
|
38
40
|
*/
|
|
39
41
|
export declare function onAgents(projectId: string): Promise<AgentMeta[]>;
|
|
42
|
+
/**
|
|
43
|
+
* A project's runs as a module sees them ({@link ModuleAgent}), only the ones it asks for: a card
|
|
44
|
+
* shows a few of the hundreds a project keeps, and each run in the few fields a module reads, so
|
|
45
|
+
* what a phone downloads for it is that much smaller. The same runs as {@link onAgents}.
|
|
46
|
+
*/
|
|
47
|
+
export declare function onModuleAgents(projectId: string, wanted?: ModuleAgentsWanted): Promise<ModuleAgent[]>;
|
|
48
|
+
/**
|
|
49
|
+
* A project's runs as its records and checkouts say them, each as recorded: the ones this
|
|
50
|
+
* computer runs, and every other computer's whose record came through the project's shared records.
|
|
51
|
+
* A run of this computer's that has no record yet is its project's git user's, as its record will be.
|
|
52
|
+
*/
|
|
53
|
+
export declare function recordedRuns(cwd: string): Promise<AgentMeta[]>;
|
|
54
|
+
/**
|
|
55
|
+
* A project's runs as the dashboard lists them: its records, with what each saved machine says of
|
|
56
|
+
* its own runs right now taking over theirs (machine-runs.ts). Not marked yet for the dashboard.
|
|
57
|
+
*/
|
|
58
|
+
export declare function projectRuns(cwd: string): Promise<AgentMeta[]>;
|
|
59
|
+
/**
|
|
60
|
+
* This computer's own runs of a project, for another computer that lists them (machine-runs.ts):
|
|
61
|
+
* the ones that changed since `since`, the answer it had last, as they stand right now. Only this
|
|
62
|
+
* computer's: what another computer's records say is that computer's to answer. With `wait` (ms,
|
|
63
|
+
* up to {@link RUNS_WAIT_MS}) and no change a list shows since `since`, the answer waits for the
|
|
64
|
+
* first such change, or says what changed otherwise once the wait is up.
|
|
65
|
+
*/
|
|
66
|
+
export declare function onOwnRuns(projectId: string, since?: unknown, wait?: unknown): Promise<OwnRuns>;
|
|
40
67
|
/**
|
|
41
68
|
* What a run's row marks beside its name, for both lists of runs, a project's and all projects'
|
|
42
69
|
* together: how its pull request stands, and the work it left on this machine.
|
|
@@ -100,7 +127,8 @@ export declare function markSaving(agent: AgentMeta, thisHost?: string, alive?:
|
|
|
100
127
|
* A run as its record may say it. A record is a file anyone with the project can write, and its
|
|
101
128
|
* tool's own words are read into the row as they are, so the words only this daemon gives a row
|
|
102
129
|
* are taken off it first: that it runs on a saved machine and which, that it is another
|
|
103
|
-
* computer's, that it is being saved. A computer's name that is
|
|
130
|
+
* computer's, that it is being saved, when its computer was last seen. A computer's name that is
|
|
131
|
+
* no name is none.
|
|
104
132
|
*/
|
|
105
133
|
export declare function asRecorded(agent: AgentMeta): AgentMeta;
|
|
106
134
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reads.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/reads.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reads.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/reads.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,KAAK,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AAEvG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAqF,KAAK,UAAU,EAAoC,KAAK,SAAS,EAA8C,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAEtP,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvE,OAAO,EAAmB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACvE,OAAO,EAAoC,KAAK,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAC5G,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,+BAA+B,CAAA;AACrF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAiB,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAkB,KAAK,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAC9E,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAC1E,OAAO,EAAkC,KAAK,YAAY,EAAE,MAAM,+BAA+B,CAAA;AACjG,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,+BAA+B,CAAA;AAE5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAI1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAElD,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AAChG,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAG9F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAG7D,OAAO,EAA+D,KAAK,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAoCxH;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAUtE;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,GAAE,kBAAuB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAE/G;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAMpE;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAGnE;AAKD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CA2BpG;AAkBD;;;GAGG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAEzF;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,MAAM,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAkB,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAWlK;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAQpH;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,EAAE,CAWvH;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,CAG5D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,GAAE,MAAmB,GAAG,SAAS,CAIxF;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,GAAG,cAAc,CAAC,CAEhG;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,YAAY,GAAG,SAAS,EAAE,QAAQ,GAAE,MAAmB,GAAG,SAAS,CAI7I;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,GAAE,MAAmB,EAAE,KAAK,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAoB,GAAG,SAAS,CAGnI;AAOD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,CAKtD;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAK9E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CA6CvG;AAED,6FAA6F;AAC7F,wBAAsB,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAM3F;AAED,4GAA4G;AAC5G,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAI9G;AAED,qFAAqF;AACrF,wBAAsB,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAEvE;AAED,8FAA8F;AAC9F,wBAAsB,OAAO,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAEvD;AAED,mGAAmG;AACnG,wBAAsB,UAAU,IAAI,OAAO,CAAC,QAAQ,CAAC,CAEpD;AAED,oGAAoG;AACpG,wBAAsB,cAAc,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAY7D;AAGD;;;;;;;;GAQG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAE7E;AAED;;;GAGG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAGpE;AAED,4HAA4H;AAC5H,wBAAsB,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC,CAU1D;AAUD;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAE3F;AAED,6IAA6I;AAC7I,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAKlF;AAED,mLAAmL;AACnL,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAI1F;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAOhG;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAOrG;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAGxF;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC;IAC9C,WAAW,EAAE,aAAa,GAAG,IAAI,CAAA;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,WAAW,GAAG,IAAI,CAAA;IACxB,OAAO,EAAE,aAAa,GAAG,IAAI,CAAA;CAC9B,CAAC,CAQD;AAED;;;;;;;GAOG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAI5D;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAGpF;AAED,2FAA2F;AAC3F,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAG9E;AAED,4HAA4H;AAC5H,wBAAsB,eAAe,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAEpE"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { stat } from 'node:fs/promises';
|
|
2
|
+
import { moduleAgents } from '../dashboard/module-agents.js';
|
|
2
3
|
import { join } from 'node:path';
|
|
3
4
|
import { findAgent, findCheckout, readLiveMetas, readAllAgents, readDoing, loadAgentEvents, startedAtFromAgentId, isPidAlive, isRunId, projectBranches } from '../store/index.js';
|
|
4
5
|
import { listProjectWorktrees } from '../worktrees.js';
|
|
@@ -21,6 +22,9 @@ import { bridgeQuestions } from '../dashboard/bridge-store.js';
|
|
|
21
22
|
import { isHostName, readBridgeToken, readPreferences } from '../registry.js';
|
|
22
23
|
import { reachedByLine } from '../reached-by-line.js';
|
|
23
24
|
import { hostname } from 'node:os';
|
|
25
|
+
import { nodeGitRunner } from '@openagt/agent-data';
|
|
26
|
+
import { RUNS_WAIT_MS, RunChanges, withMachineRuns } from '../dashboard/machine-runs.js';
|
|
27
|
+
import { ownRunsWatch } from '../dashboard/runs-watch.js';
|
|
24
28
|
// The read model behind the dashboard (#405): the agent history, an agent's replay, and the
|
|
25
29
|
// surfaced PLAN/TODO docs — each keyed by project id and backed by
|
|
26
30
|
// the readers that own those files, so the dashboard stays a projection of the same files. They live beside the daemon rather than in the
|
|
@@ -77,9 +81,90 @@ export async function onAgents(projectId) {
|
|
|
77
81
|
const remote = contextRemote()?.list(projectId) ?? [];
|
|
78
82
|
const cwd = await resolveProjectPath(projectId);
|
|
79
83
|
const machineOf = await contextRemote().machineNames();
|
|
80
|
-
const local = cwd ? await withRowMarks(cwd, (await
|
|
84
|
+
const local = cwd ? await withRowMarks(cwd, (await projectRuns(cwd)).map(agent => forDashboard(agent, machineOf))) : [];
|
|
81
85
|
return withFollowed(remote, local, agentId => contextRemote().sent(agentId));
|
|
82
86
|
}
|
|
87
|
+
/**
|
|
88
|
+
* A project's runs as a module sees them ({@link ModuleAgent}), only the ones it asks for: a card
|
|
89
|
+
* shows a few of the hundreds a project keeps, and each run in the few fields a module reads, so
|
|
90
|
+
* what a phone downloads for it is that much smaller. The same runs as {@link onAgents}.
|
|
91
|
+
*/
|
|
92
|
+
export async function onModuleAgents(projectId, wanted = {}) {
|
|
93
|
+
return moduleAgents(await onAgents(projectId), wanted);
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* A project's runs as its records and checkouts say them, each as recorded: the ones this
|
|
97
|
+
* computer runs, and every other computer's whose record came through the project's shared records.
|
|
98
|
+
* A run of this computer's that has no record yet is its project's git user's, as its record will be.
|
|
99
|
+
*/
|
|
100
|
+
export async function recordedRuns(cwd) {
|
|
101
|
+
const runs = (await readAllAgents(cwd)).map(asRecorded);
|
|
102
|
+
const thisHost = hostname();
|
|
103
|
+
if (!runs.some(run => run.person === undefined && run.host === thisHost))
|
|
104
|
+
return runs;
|
|
105
|
+
const person = await gitUserOf(cwd);
|
|
106
|
+
return person === undefined ? runs : runs.map(run => (run.person === undefined && run.host === thisHost ? { ...run, person } : run));
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* A project's runs as the dashboard lists them: its records, with what each saved machine says of
|
|
110
|
+
* its own runs right now taking over theirs (machine-runs.ts). Not marked yet for the dashboard.
|
|
111
|
+
*/
|
|
112
|
+
export async function projectRuns(cwd) {
|
|
113
|
+
const [records, machines] = await Promise.all([recordedRuns(cwd), contextRemote().machineRuns(cwd).catch(() => [])]);
|
|
114
|
+
return withMachineRuns(records, machines.map(machine => ({ ...machine, runs: machine.runs.map(asRecorded) })));
|
|
115
|
+
}
|
|
116
|
+
/** What this computer's own runs answer to another computer that asks for them: counted per project, as they change. */
|
|
117
|
+
const ownRunChanges = new RunChanges();
|
|
118
|
+
/**
|
|
119
|
+
* This computer's own runs of a project, for another computer that lists them (machine-runs.ts):
|
|
120
|
+
* the ones that changed since `since`, the answer it had last, as they stand right now. Only this
|
|
121
|
+
* computer's: what another computer's records say is that computer's to answer. With `wait` (ms,
|
|
122
|
+
* up to {@link RUNS_WAIT_MS}) and no change a list shows since `since`, the answer waits for the
|
|
123
|
+
* first such change, or says what changed otherwise once the wait is up.
|
|
124
|
+
*/
|
|
125
|
+
export async function onOwnRuns(projectId, since, wait) {
|
|
126
|
+
const cwd = await resolveProjectPath(projectId);
|
|
127
|
+
const thisHost = hostname();
|
|
128
|
+
const answer = async () => ownRunChanges.answer(cwd ?? projectId, cwd ? (await recordedRuns(cwd)).filter(run => run.host === thisHost) : [], since);
|
|
129
|
+
if (cwd === undefined || typeof wait !== 'number' || !(wait > 0))
|
|
130
|
+
return answer();
|
|
131
|
+
// Listened to before the runs are read: a change while they are read is a change all the same.
|
|
132
|
+
let changed = false;
|
|
133
|
+
let woken;
|
|
134
|
+
const stop = ownRunsWatch.follow(cwd, () => {
|
|
135
|
+
changed = true;
|
|
136
|
+
woken?.();
|
|
137
|
+
});
|
|
138
|
+
try {
|
|
139
|
+
const now = await answer();
|
|
140
|
+
// A step of a run (its later time, its cost) is no change a list shows: it waits for one, and goes with it.
|
|
141
|
+
if (changed || ownRunChanges.shownSince(cwd, since))
|
|
142
|
+
return now;
|
|
143
|
+
await new Promise(resolve => {
|
|
144
|
+
const timer = setTimeout(resolve, Math.min(wait, RUNS_WAIT_MS));
|
|
145
|
+
woken = () => {
|
|
146
|
+
clearTimeout(timer);
|
|
147
|
+
resolve();
|
|
148
|
+
};
|
|
149
|
+
});
|
|
150
|
+
return await answer();
|
|
151
|
+
}
|
|
152
|
+
finally {
|
|
153
|
+
stop();
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
/** How long a project's git user is trusted before git is asked again. */
|
|
157
|
+
const GIT_USER_KEPT_MS = 60_000;
|
|
158
|
+
const gitUsers = new Map();
|
|
159
|
+
/** Whom git commits as in the project, as the runs' records are kept under it: its email, lowered. */
|
|
160
|
+
async function gitUserOf(cwd) {
|
|
161
|
+
const kept = gitUsers.get(cwd);
|
|
162
|
+
if (kept && kept.until > Date.now())
|
|
163
|
+
return kept.person;
|
|
164
|
+
const said = await nodeGitRunner()(['config', 'user.email'], cwd).then(out => out.trim().toLowerCase(), () => '');
|
|
165
|
+
gitUsers.set(cwd, { ...(said ? { person: said } : {}), until: Date.now() + GIT_USER_KEPT_MS });
|
|
166
|
+
return said || undefined;
|
|
167
|
+
}
|
|
83
168
|
/**
|
|
84
169
|
* What a run's row marks beside its name, for both lists of runs, a project's and all projects'
|
|
85
170
|
* together: how its pull request stands, and the work it left on this machine.
|
|
@@ -196,18 +281,19 @@ export function markSaving(agent, thisHost = hostname(), alive = isPidAlive) {
|
|
|
196
281
|
return agent;
|
|
197
282
|
return { ...agent, saving: true };
|
|
198
283
|
}
|
|
199
|
-
/** Every annotation a run
|
|
284
|
+
/** Every annotation a run gets on its way to the dashboard, once it is as recorded ({@link projectRuns}): what the daemon knows and the disk cannot. */
|
|
200
285
|
function forDashboard(agent, machineOf) {
|
|
201
|
-
return markSaving(markOtherHost(markMachine(markCloudWaiting(
|
|
286
|
+
return markSaving(markOtherHost(markMachine(markCloudWaiting(agent), machineOf)));
|
|
202
287
|
}
|
|
203
288
|
/**
|
|
204
289
|
* A run as its record may say it. A record is a file anyone with the project can write, and its
|
|
205
290
|
* tool's own words are read into the row as they are, so the words only this daemon gives a row
|
|
206
291
|
* are taken off it first: that it runs on a saved machine and which, that it is another
|
|
207
|
-
* computer's, that it is being saved. A computer's name that is
|
|
292
|
+
* computer's, that it is being saved, when its computer was last seen. A computer's name that is
|
|
293
|
+
* no name is none.
|
|
208
294
|
*/
|
|
209
295
|
export function asRecorded(agent) {
|
|
210
|
-
const { remoteLabel: _label, remoteByLine: _byLine, otherHost: _other, saving: _saving, cloudWaiting: _waiting, ...said } = agent;
|
|
296
|
+
const { remoteLabel: _label, remoteByLine: _byLine, otherHost: _other, saving: _saving, cloudWaiting: _waiting, seenAt: _seen, ...said } = agent;
|
|
211
297
|
if (said.target === 'remote')
|
|
212
298
|
delete said.target;
|
|
213
299
|
if (said.host !== undefined && !isHostName(said.host))
|
|
@@ -323,7 +409,7 @@ export async function onRecentAgents() {
|
|
|
323
409
|
return withProjects(projects => buildRecentAgents(projects, {
|
|
324
410
|
agents: async (path) => {
|
|
325
411
|
const followed = projects.filter(project => project.path === path).flatMap(project => remote.list(project.id));
|
|
326
|
-
return withFollowed(followed, await withRowMarks(path, (await
|
|
412
|
+
return withFollowed(followed, await withRowMarks(path, (await projectRuns(path)).map(agent => forDashboard(agent, machineOf))), agentId => remote.sent(agentId));
|
|
327
413
|
},
|
|
328
414
|
}));
|
|
329
415
|
}
|
|
@@ -344,12 +430,29 @@ export async function onInterventions() {
|
|
|
344
430
|
* first, with the projects that were read whole beside them (#1625) — see {@link onInterventions}.
|
|
345
431
|
*/
|
|
346
432
|
export async function onActivity() {
|
|
347
|
-
|
|
433
|
+
// Another computer's runs start and end by its own word, as the lists show them.
|
|
434
|
+
return withProjects(projects => buildActivity(projects, { readAgents: projectRuns }));
|
|
348
435
|
}
|
|
349
436
|
/** The Overview dashboard page (#471): the {@link onOverview} rollup plus agent counts, run-status totals, and activity. */
|
|
350
437
|
export async function onDashboard() {
|
|
351
|
-
|
|
438
|
+
const projects = await contextProjects().list().catch(() => []);
|
|
439
|
+
const of = projects.map(project => project.path).join('\n');
|
|
440
|
+
const building = (buildingDashboard ??= buildDashboard(projects)
|
|
441
|
+
.then(view => ((lastDashboard = { of, view }), view))
|
|
442
|
+
.finally(() => (buildingDashboard = undefined)));
|
|
443
|
+
if (lastDashboard?.of !== of)
|
|
444
|
+
return building;
|
|
445
|
+
// Its answer is for the next ask; a build that failed leaves the last answer standing.
|
|
446
|
+
building.catch(() => undefined);
|
|
447
|
+
return lastDashboard.view;
|
|
352
448
|
}
|
|
449
|
+
/**
|
|
450
|
+
* The Overview's summary as last built, and the build under way: it reads every project's queue and
|
|
451
|
+
* tickets through their packages, a second and more on a small server, so a page is answered at
|
|
452
|
+
* once with the last summary for the same projects while it is built again behind it.
|
|
453
|
+
*/
|
|
454
|
+
let lastDashboard;
|
|
455
|
+
let buildingDashboard;
|
|
353
456
|
/**
|
|
354
457
|
* The project's files for the `#` context picker (#504) and the Context's file count (#661): every
|
|
355
458
|
* file git sees (tracked + untracked, honoring .gitignore), repo-relative and sorted, via
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reads.js","sourceRoot":"","sources":["../../src/dashboard-rpc/reads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,EAAmB,oBAAoB,EAAE,UAAU,EAAoC,OAAO,EAAE,eAAe,EAAoB,MAAM,mBAAmB,CAAA;AACtP,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,cAAc,EAAoB,MAAM,sBAAsB,CAAA;AACvE,OAAO,EAAE,eAAe,EAAwB,MAAM,wBAAwB,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAqB,MAAM,sBAAsB,CAAA;AAClE,OAAO,EAAE,YAAY,EAAqB,MAAM,uBAAuB,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAmC,MAAM,0BAA0B,CAAA;AAC5G,OAAO,EAAE,kBAAkB,EAAqB,MAAM,+BAA+B,CAAA;AAErF,OAAO,EAAE,aAAa,EAAiB,MAAM,0BAA0B,CAAA;AACvE,OAAO,EAAE,cAAc,EAAsB,MAAM,2BAA2B,CAAA;AAC9E,OAAO,EAAE,aAAa,EAAkB,MAAM,4BAA4B,CAAA;AAC1E,OAAO,EAAE,cAAc,EAAE,cAAc,EAAqB,MAAM,+BAA+B,CAAA;AACjG,OAAO,EAAE,cAAc,EAAgB,MAAM,+BAA+B,CAAA;AAC5E,OAAO,EAAE,eAAe,EAAoB,MAAM,6BAA6B,CAAA;AAE/E,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AACzH,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAE1C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAG9D,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAoB,MAAM,gBAAgB,CAAA;AAC/F,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAElC,4FAA4F;AAC5F,mEAAmE;AACnE,0IAA0I;AAC1I,4FAA4F;AAC5F,uFAAuF;AAEvF;;;;;GAKG;AACH,KAAK,UAAU,WAAW,CAAI,SAAiB,EAAE,IAAiC,EAAE,KAAQ;IAC1F,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAC/C,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;AACnD,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,aAAa,CAAI,SAAiB,EAAE,OAA2B,EAAE,IAAiC,EAAE,KAAQ;IACzH,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;IACtD,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;AACnD,CAAC;AAED,mGAAmG;AACnG,KAAK,UAAU,YAAY,CAAI,KAAgG;IAC7H,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;IAC/D,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAA;AACxB,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,SAAiB;IAC9C,4FAA4F;IAC5F,2FAA2F;IAC3F,+FAA+F;IAC/F,6EAA6E;IAC7E,MAAM,MAAM,GAAG,aAAa,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;IACrD,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAC/C,MAAM,SAAS,GAAG,MAAM,aAAa,EAAE,CAAC,YAAY,EAAE,CAAA;IACtD,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,GAAG,EAAE,CAAC,MAAM,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACzH,OAAO,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;AAC9E,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAW,EAAE,MAAmB;IACjE,OAAO,eAAe,CAAC,GAAG,EAAE,MAAM,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAA;AAC9D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAW,EAAE,MAAmB,EAAE,MAAM,GAAmD,cAAc;IAC1I,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC;QAAE,OAAO,MAAM,CAAA;IAC5F,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,CAAA;IAC/B,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACxB,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;QACnD,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE;YAC5C,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;YAC/B,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACtC,CAAC,CAAC,CAAA;QACF,OAAO,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA;IAC7H,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW,EAAE,MAAmB,EAAE,QAAsB;IAC5F,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,EAAuB,CAAC,CAAA;IACtG,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,MAAM,CAAA;IACnC,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACxB,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAChC,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAA;QACvB,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;IACrJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,QAAqB,EAAE,KAAkB,EAAE,IAAkC;IACxG,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACvC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;IACxD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;IACtD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAC/B,IAAI,CAAC,GAAG;YAAE,OAAO,MAAM,CAAA;QACvB,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,GAAG,CAAA;QACzC,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,QAAiB,EAAE,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;IACvQ,CAAC,CAAC,CAAA;IACF,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAA;AACpF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAgB;IAC/C,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;QAAE,OAAO,KAAK,CAAA;IAC3G,OAAO,EAAE,GAAG,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,CAAA;AACzC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,KAAgB,EAAE,QAAQ,GAAW,QAAQ,EAAE;IAC3E,4FAA4F;IAC5F,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACxG,OAAO,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;AACtC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,OAAqB;IAC7C,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;AAC/G,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,KAAgB,EAAE,SAAqD,EAAE,QAAQ,GAAW,QAAQ,EAAE;IAChI,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACxG,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACrC,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,EAAE,CAAA;AAC9F,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,KAAgB,EAAE,QAAQ,GAAW,QAAQ,EAAE,EAAE,KAAK,GAA6B,UAAU;IACtH,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAA;IACpH,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;AACnC,CAAC;AAED,mHAAmH;AACnH,SAAS,YAAY,CAAC,KAAgB,EAAE,SAAqD;IAC3F,OAAO,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAA;AAC/F,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,KAAgB;IACzC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAA;IACjI,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,MAAM,CAAA;IAChD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAA;IACvE,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,SAAiB;IACzD,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAC/C,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAA;IACnB,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAY,EAAE,CAAC,EAAE,CAAC,CAAA;IACvF,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;AAC9D,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,SAAiB,EAAE,OAAe;IACtE,OAAO,OAAO,CAAC,OAAO,EAAE,iBAAiB,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,IAAI,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAA;QAChD,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAA;QAC3C,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,CAAA;QACnE,8FAA8F;QAC9F,6DAA6D;QAC7D,MAAM,KAAK,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAA;QAC3C,yFAAyF;QACzF,yFAAyF;QACzF,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;QACvG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,QAAQ,IAAI,MAAM;YACvC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;gBAChH,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;aACpC,CAAC;YACJ,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;QACnB,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;YACzB,6FAA6F;YAC7F,yFAAyF;YACzF,iFAAiF;YACjF,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YACnE,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAA;YACvB,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;YAChG,OAAO;gBACL,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjD,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3C,CAAA;QACH,CAAC;QACD,gGAAgG;QAChG,+FAA+F;QAC/F,0EAA0E;QAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAA;QACtF,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,SAAS,CAAA;QAClL,OAAO;YACL,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;YAC1G,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,uFAAuF;YACvF,2BAA2B;YAC3B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,sFAAsF;YACtF,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjD,CAAA;IACH,CAAC,EAAE,IAAI,CAAC,CAAA;AACV,CAAC;AAED,6FAA6F;AAC7F,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,SAAiB,EAAE,OAAe;IAC9D,OAAO,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAA;QAC/C,IAAI,CAAC,GAAG;YAAE,OAAO,EAAE,CAAA;QACnB,OAAO,CAAC,MAAM,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAA;IAC3E,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC;AAED,4GAA4G;AAC5G,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,SAAiB,EAAE,QAAkB;IACvE,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAC/C,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAA;IACnB,OAAO,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AACnD,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,SAAiB;IAC5C,OAAO,WAAW,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;AAC7C,CAAC;AAED,8FAA8F;AAC9F,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,OAAO,YAAY,CAAC,YAAY,CAAC,CAAA;AACnC,CAAC;AAED,mGAAmG;AACnG,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,OAAO,YAAY,CAAC,aAAa,CAAC,CAAA;AACpC,CAAC;AAED,oGAAoG;AACpG,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,+HAA+H;IAC/H,MAAM,MAAM,GAAG,aAAa,EAAE,CAAA;IAC9B,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,YAAY,EAAE,CAAA;IAC7C,OAAO,YAAY,CAAC,QAAQ,CAAC,EAAE,CAC7B,iBAAiB,CAAC,QAAQ,EAAE;QAC1B,MAAM,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;YACnB,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;YAC9G,OAAO,YAAY,CAAC,QAAQ,EAAE,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC,MAAM,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;QACpK,CAAC;KACF,CAAC,CACH,CAAA;AACH,CAAC;AAGD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,OAAO,YAAY,CAAC,kBAAkB,CAAC,CAAA;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,OAAO,YAAY,CAAC,aAAa,CAAC,CAAA;AACpC,CAAC;AAED,4HAA4H;AAC5H,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,OAAO,YAAY,CAAC,cAAc,CAAC,CAAA;AACrC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,SAAiB,EAAE,OAAgB;IACtE,OAAO,OAAO,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;AAClI,CAAC;AAED,6IAA6I;AAC7I,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,SAAiB;IACnD,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAC/C,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IACrB,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IAChE,OAAO,CAAC,MAAM,OAAO,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAA;AACxC,CAAC;AAED,mLAAmL;AACnL,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,SAAiB;IACvD,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAC/C,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IACrB,OAAO,CAAC,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAA;AAC7C,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,SAAiB,EAAE,OAAgB;IACnE,OAAO,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE;QACtE,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACtD,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAA;QACrB,MAAM,KAAK,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAC/E,OAAO,CAAC,MAAM,aAAa,CAAC,GAAG,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAA;IACjF,CAAC,EAAE,IAAI,CAAC,CAAA;AACV,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,SAAiB,EAAE,OAAe;IACrE,OAAO,OAAO,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,GAAG,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAA;QAC/C,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAA;QAC1C,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAClE,OAAO,CAAC,KAAK,IAAI,CAAC,MAAM,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAA;IACrF,CAAC,EAAE,IAAI,CAAC,CAAA;AACV,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,SAAiB;IACtD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAA;IACjG,OAAO,eAAe,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAA;AACjD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc;IAMlC,MAAM,KAAK,GAAG,eAAe,EAAE,CAAA;IAC/B,OAAO;QACL,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,IAAI,IAAI;QACxC,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM;QAC9B,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI;QAC3B,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,IAAI;KACjC,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,WAAW,GAAG,MAAM,eAAe,EAAE,CAAC,KAAK,CAAC,GAAgB,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC1E,IAAI,WAAW,CAAC,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC5C,OAAO,CAAC,MAAM,eAAe,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,IAAI,CAAA;AACjE,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,SAAiB;IACpD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAA;IACjG,OAAO,eAAe,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,CAAA;AACpD,CAAC;AAED,2FAA2F;AAC3F,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,SAAiB;IACpD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,SAAS,CAAC;QAAE,OAAO,EAAE,CAAA;IAC/F,OAAO,eAAe,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;AAC5C,CAAC;AAED,4HAA4H;AAC5H,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,OAAO,oBAAoB,EAAE,CAAC,MAAM,EAAE,CAAA;AACxC,CAAC"}
|
|
1
|
+
{"version":3,"file":"reads.js","sourceRoot":"","sources":["../../src/dashboard-rpc/reads.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,4 +8,10 @@ export declare function isRelayRead(fn: string): boolean;
|
|
|
8
8
|
* with `projectId`; the rest (path, agentId, ...) carry through unchanged. Throws on an unknown name.
|
|
9
9
|
*/
|
|
10
10
|
export declare function dispatchRelayRpc(projectId: string, fn: string, args: unknown[]): Promise<unknown>;
|
|
11
|
+
/** The machine-wide names a relay caller may invoke. */
|
|
12
|
+
export declare const MACHINE_RPC_NAMES: readonly string[];
|
|
13
|
+
/** Whether a machine-wide call only reads. A name that is not on the whitelist is no read. */
|
|
14
|
+
export declare function isMachineRead(fn: string): boolean;
|
|
15
|
+
/** Dispatch one machine-wide call, its arguments as the caller gave them. Throws on an unknown name. */
|
|
16
|
+
export declare function dispatchMachineRpc(fn: string, args: unknown[]): Promise<unknown>;
|
|
11
17
|
//# sourceMappingURL=relay-dispatch.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-dispatch.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/relay-dispatch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"relay-dispatch.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/relay-dispatch.ts"],"names":[],"mappings":"AA6BA,2CAA2C;AAC3C,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAA2B,CAAA;AAExE,wFAAwF;AACxF,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAE/C;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAIvG;AAUD,wDAAwD;AACxD,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAA6B,CAAA;AAE5E,8FAA8F;AAC9F,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAEjD;AAED,wGAAwG;AACxG,wBAAsB,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAItF"}
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
import { onProjectFiles, onGitStatus, onAgentWorktree, onAgentHandoff, onAgent } from './reads.js';
|
|
1
|
+
import { onProjectFiles, onGitStatus, onAgentWorktree, onAgentHandoff, onAgent, onOwnRuns } from './reads.js';
|
|
2
2
|
import { readModule } from './modules.js';
|
|
3
3
|
import { sendStop, sendChoice, sendMessage, sendOpenPullRequest, sendPush, sendMerge } from './control.js';
|
|
4
4
|
import { asArrived } from './relay-agent.js';
|
|
5
|
+
import { onStartCheck } from './projects.js';
|
|
6
|
+
import { onCopiedLogins, sendCopiedLogin, sendCopiedUsage, sendForgetCopiedLogin, sendKeepCopiedLogin } from './copied-logins.js';
|
|
7
|
+
import { patchPreferences } from './preferences.js';
|
|
5
8
|
// Each entry is a read or an act, and this is the one place that says which: a computer that only
|
|
6
9
|
// lets its server watch answers the reads and refuses the acts (relay-endpoints.ts). An entry goes
|
|
7
10
|
// in one of the two lists, so nothing is relayed that was not classed. `readModule` is a read for
|
|
8
11
|
// as long as a module's read changes nothing, which is what a module's read is.
|
|
9
|
-
const RELAY_READS = { onProjectFiles, readModule, onGitStatus, onAgentWorktree, onAgentHandoff, onAgent };
|
|
12
|
+
const RELAY_READS = { onProjectFiles, readModule, onGitStatus, onAgentWorktree, onAgentHandoff, onAgent, onOwnRuns, onStartCheck };
|
|
10
13
|
const RELAY_ACTS = { sendStop, sendChoice, sendMessage, sendOpenPullRequest, sendPush, sendMerge };
|
|
11
14
|
// Null-prototype, like RPC_HANDLERS (R1): the key is a request-controlled string, so a plain object
|
|
12
15
|
// would answer `constructor`/`toString`/`valueOf` off Object.prototype and invoke them as handlers.
|
|
@@ -28,4 +31,24 @@ export async function dispatchRelayRpc(projectId, fn, args) {
|
|
|
28
31
|
throw new Error(`unknown relay rpc: ${fn}`);
|
|
29
32
|
return asArrived(() => impl(projectId, ...args.slice(1)));
|
|
30
33
|
}
|
|
34
|
+
// The machine-wide calls: what the person's own computer asks of a server about the whole of it,
|
|
35
|
+
// not a run (logins-sync.ts brings the server's logins and settings up to its own). They go by the
|
|
36
|
+
// relay too, so a computer that keeps a line open to its server is asked them as any server is:
|
|
37
|
+
// a line carries nothing but the relay. Classed the same way, read or act.
|
|
38
|
+
const MACHINE_READS = { onCopiedLogins };
|
|
39
|
+
const MACHINE_ACTS = { sendCopiedLogin, sendForgetCopiedLogin, sendKeepCopiedLogin, sendCopiedUsage, patchPreferences };
|
|
40
|
+
const MACHINE_FNS = Object.assign(Object.create(null), MACHINE_READS, MACHINE_ACTS);
|
|
41
|
+
/** The machine-wide names a relay caller may invoke. */
|
|
42
|
+
export const MACHINE_RPC_NAMES = Object.keys(MACHINE_FNS);
|
|
43
|
+
/** Whether a machine-wide call only reads. A name that is not on the whitelist is no read. */
|
|
44
|
+
export function isMachineRead(fn) {
|
|
45
|
+
return Object.hasOwn(MACHINE_READS, fn);
|
|
46
|
+
}
|
|
47
|
+
/** Dispatch one machine-wide call, its arguments as the caller gave them. Throws on an unknown name. */
|
|
48
|
+
export async function dispatchMachineRpc(fn, args) {
|
|
49
|
+
const impl = MACHINE_FNS[fn];
|
|
50
|
+
if (!impl)
|
|
51
|
+
throw new Error(`unknown machine rpc: ${fn}`);
|
|
52
|
+
return impl(...args);
|
|
53
|
+
}
|
|
31
54
|
//# sourceMappingURL=relay-dispatch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay-dispatch.js","sourceRoot":"","sources":["../../src/dashboard-rpc/relay-dispatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,eAAe,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"relay-dispatch.js","sourceRoot":"","sources":["../../src/dashboard-rpc/relay-dispatch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/** One thing the page is told: the runs of the project changed. */
|
|
2
|
+
export interface RunsChanged {
|
|
3
|
+
kind: 'runs';
|
|
4
|
+
projectId: string;
|
|
5
|
+
}
|
|
6
|
+
/** Tell `send` each time the runs of a project on the list change, until the answer is called. */
|
|
7
|
+
export declare function followRunsChanged(send: (change: RunsChanged) => void): () => void;
|
|
8
|
+
//# sourceMappingURL=runs-changed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runs-changed.d.ts","sourceRoot":"","sources":["../../src/dashboard-rpc/runs-changed.ts"],"names":[],"mappings":"AAOA,mEAAmE;AACnE,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;CAClB;AAOD,kGAAkG;AAClG,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,GAAG,MAAM,IAAI,CAiDjF"}
|