@openagt/dashboard 0.53.0 → 0.55.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.
Files changed (181) hide show
  1. package/README.md +4 -2
  2. package/dist/appearance.d.ts +50 -0
  3. package/dist/appearance.d.ts.map +1 -0
  4. package/dist/appearance.js +51 -0
  5. package/dist/appearance.js.map +1 -0
  6. package/dist/cli/skills.d.ts.map +1 -1
  7. package/dist/cli/skills.js +1 -1
  8. package/dist/cli/skills.js.map +1 -1
  9. package/dist/client.d.ts +1 -0
  10. package/dist/client.d.ts.map +1 -1
  11. package/dist/client.js +1 -0
  12. package/dist/client.js.map +1 -1
  13. package/dist/clone-project.js +1 -1
  14. package/dist/clone-project.js.map +1 -1
  15. package/dist/daemon-runtime.d.ts.map +1 -1
  16. package/dist/daemon-runtime.js +8 -4
  17. package/dist/daemon-runtime.js.map +1 -1
  18. package/dist/daemon-services.d.ts +4 -4
  19. package/dist/daemon-services.js +6 -6
  20. package/dist/daemon-services.js.map +1 -1
  21. package/dist/daemon.d.ts +1 -1
  22. package/dist/daemon.d.ts.map +1 -1
  23. package/dist/daemon.js +11 -1
  24. package/dist/daemon.js.map +1 -1
  25. package/dist/dashboard/elsewhere.d.ts +1 -1
  26. package/dist/dashboard/elsewhere.d.ts.map +1 -1
  27. package/dist/dashboard/projects.js +1 -1
  28. package/dist/dashboard/projects.js.map +1 -1
  29. package/dist/dashboard/rpc-serve.d.ts +6 -0
  30. package/dist/dashboard/rpc-serve.d.ts.map +1 -1
  31. package/dist/dashboard/rpc-serve.js +21 -1
  32. package/dist/dashboard/rpc-serve.js.map +1 -1
  33. package/dist/dashboard/run-inbox.d.ts +4 -3
  34. package/dist/dashboard/run-inbox.d.ts.map +1 -1
  35. package/dist/dashboard/run-inbox.js +6 -5
  36. package/dist/dashboard/run-inbox.js.map +1 -1
  37. package/dist/dashboard/server.d.ts +16 -1
  38. package/dist/dashboard/server.d.ts.map +1 -1
  39. package/dist/dashboard/server.js +54 -12
  40. package/dist/dashboard/server.js.map +1 -1
  41. package/dist/dashboard/static.d.ts +15 -2
  42. package/dist/dashboard/static.d.ts.map +1 -1
  43. package/dist/dashboard/static.js +33 -18
  44. package/dist/dashboard/static.js.map +1 -1
  45. package/dist/dashboard/website.d.ts +34 -0
  46. package/dist/dashboard/website.d.ts.map +1 -0
  47. package/dist/dashboard/website.js +82 -0
  48. package/dist/dashboard/website.js.map +1 -0
  49. package/dist/dashboard-bundle/assets/host/module-BMyNrbiB.js +1 -0
  50. package/dist/dashboard-bundle/assets/main-BLY-EDtL.css +2 -0
  51. package/dist/dashboard-bundle/assets/main-DPdJVm4s.js +152 -0
  52. package/dist/dashboard-bundle/assets/module-DY3Aigsz.js +19 -0
  53. package/dist/dashboard-bundle/index.html +8 -8
  54. package/dist/dashboard-rpc/control.d.ts +22 -6
  55. package/dist/dashboard-rpc/control.d.ts.map +1 -1
  56. package/dist/dashboard-rpc/control.js +45 -9
  57. package/dist/dashboard-rpc/control.js.map +1 -1
  58. package/dist/dashboard-rpc/index.d.ts +3 -1
  59. package/dist/dashboard-rpc/index.d.ts.map +1 -1
  60. package/dist/dashboard-rpc/index.js +6 -2
  61. package/dist/dashboard-rpc/index.js.map +1 -1
  62. package/dist/dashboard-rpc/machines.d.ts.map +1 -1
  63. package/dist/dashboard-rpc/machines.js +1 -2
  64. package/dist/dashboard-rpc/machines.js.map +1 -1
  65. package/dist/dashboard-rpc/modules.js +2 -2
  66. package/dist/dashboard-rpc/modules.js.map +1 -1
  67. package/dist/dashboard-rpc/personal-folder.d.ts +23 -0
  68. package/dist/dashboard-rpc/personal-folder.d.ts.map +1 -0
  69. package/dist/dashboard-rpc/personal-folder.js +30 -0
  70. package/dist/dashboard-rpc/personal-folder.js.map +1 -0
  71. package/dist/dashboard-rpc/project-agent-data.d.ts +20 -0
  72. package/dist/dashboard-rpc/project-agent-data.d.ts.map +1 -0
  73. package/dist/dashboard-rpc/project-agent-data.js +38 -0
  74. package/dist/dashboard-rpc/project-agent-data.js.map +1 -0
  75. package/dist/dashboard-rpc/projects.d.ts +3 -5
  76. package/dist/dashboard-rpc/projects.d.ts.map +1 -1
  77. package/dist/dashboard-rpc/projects.js +5 -17
  78. package/dist/dashboard-rpc/projects.js.map +1 -1
  79. package/dist/dashboard-rpc/reads.d.ts +4 -4
  80. package/dist/dashboard-rpc/reads.d.ts.map +1 -1
  81. package/dist/dashboard-rpc/reads.js +5 -5
  82. package/dist/dashboard-rpc/reads.js.map +1 -1
  83. package/dist/dashboard-rpc/relay-dispatch.js +5 -5
  84. package/dist/dashboard-rpc/relay-dispatch.js.map +1 -1
  85. package/dist/events.d.ts +2 -0
  86. package/dist/events.d.ts.map +1 -1
  87. package/dist/events.js.map +1 -1
  88. package/dist/index.d.ts +0 -1
  89. package/dist/index.d.ts.map +1 -1
  90. package/dist/join-dashboard.d.ts +6 -2
  91. package/dist/join-dashboard.d.ts.map +1 -1
  92. package/dist/join-dashboard.js +4 -2
  93. package/dist/join-dashboard.js.map +1 -1
  94. package/dist/module-types/dashboard/components/Markdown.d.ts +8 -1
  95. package/dist/module-types/dashboard/components/SettingsRows.d.ts +2 -2
  96. package/dist/module-types/dashboard/components/ui/dropdown-menu.d.ts +3 -2
  97. package/dist/module-types/dashboard/lib/highlight.d.ts +13 -8
  98. package/dist/module-types/dashboard/module/index.d.ts +15 -1
  99. package/dist/module-types/src/appearance.d.ts +49 -0
  100. package/dist/module-types/src/client.d.ts +1 -0
  101. package/dist/module-types/src/dashboard/elsewhere.d.ts +1 -1
  102. package/dist/module-types/src/dashboard/rpc-serve.d.ts +6 -0
  103. package/dist/module-types/src/dashboard/run-inbox.d.ts +4 -3
  104. package/dist/module-types/src/dashboard-rpc/control.d.ts +22 -6
  105. package/dist/module-types/src/dashboard-rpc/index.d.ts +3 -1
  106. package/dist/module-types/src/dashboard-rpc/personal-folder.d.ts +22 -0
  107. package/dist/module-types/src/dashboard-rpc/project-agent-data.d.ts +19 -0
  108. package/dist/module-types/src/dashboard-rpc/projects.d.ts +3 -5
  109. package/dist/module-types/src/dashboard-rpc/reads.d.ts +4 -4
  110. package/dist/module-types/src/events.d.ts +2 -0
  111. package/dist/module-types/src/index.d.ts +0 -1
  112. package/dist/module-types/src/personal-folder-shown.d.ts +10 -0
  113. package/dist/module-types/src/registry.d.ts +11 -0
  114. package/dist/module-types/src/repository-url.d.ts +6 -0
  115. package/dist/module-types/src/secure-address.d.ts +31 -0
  116. package/dist/module.css +6 -4
  117. package/dist/personal-folder-shown.d.ts +11 -0
  118. package/dist/personal-folder-shown.d.ts.map +1 -0
  119. package/dist/personal-folder-shown.js +8 -0
  120. package/dist/personal-folder-shown.js.map +1 -0
  121. package/dist/registry.d.ts +11 -0
  122. package/dist/registry.d.ts.map +1 -1
  123. package/dist/registry.js +13 -0
  124. package/dist/registry.js.map +1 -1
  125. package/dist/remove-files.d.ts +4 -3
  126. package/dist/remove-files.d.ts.map +1 -1
  127. package/dist/remove-files.js +6 -1
  128. package/dist/remove-files.js.map +1 -1
  129. package/dist/repository-url.d.ts +7 -0
  130. package/dist/repository-url.d.ts.map +1 -0
  131. package/dist/repository-url.js +17 -0
  132. package/dist/repository-url.js.map +1 -0
  133. package/dist/secure-address.d.ts +32 -0
  134. package/dist/secure-address.d.ts.map +1 -0
  135. package/dist/secure-address.js +50 -0
  136. package/dist/secure-address.js.map +1 -0
  137. package/dist/store/run-record.d.ts.map +1 -1
  138. package/dist/store/run-record.js +3 -1
  139. package/dist/store/run-record.js.map +1 -1
  140. package/dist/terminal.js +2 -0
  141. package/dist/terminal.js.map +1 -1
  142. package/dist/website/assets/chunks/chunk-BIhVwAkA.js +1 -0
  143. package/dist/website/assets/chunks/chunk-CSTMwN0A.js +1 -0
  144. package/dist/website/assets/chunks/chunk-DeonM-eN.js +3 -0
  145. package/dist/website/assets/chunks/chunk-kQ9-9YDn.js +18 -0
  146. package/dist/website/assets/emoji-compass.svg +75 -0
  147. package/dist/website/assets/emoji-confused.svg +34 -0
  148. package/dist/website/assets/emoji-construction.svg +188 -0
  149. package/dist/website/assets/emoji-flex.svg +1 -0
  150. package/dist/website/assets/emoji-hand-raised.svg +180 -0
  151. package/dist/website/assets/emoji-mech-arm.svg +1 -0
  152. package/dist/website/assets/emoji-robot.svg +105 -0
  153. package/dist/website/assets/emoji-rocket.svg +49 -0
  154. package/dist/website/assets/entries/entry-client-routing.CzHJwWDQ.js +2 -0
  155. package/dist/website/assets/entries/pages_banner.6_j-HGsV.js +1 -0
  156. package/dist/website/assets/entries/pages_go-to-dashboard.CxnTPDW0.js +1 -0
  157. package/dist/website/assets/entries/pages_index.Dcg_ZrR7.js +1 -0
  158. package/dist/website/assets/entries/pages_press.rRp1mRww.js +1 -0
  159. package/dist/website/assets/logo.svg +34 -0
  160. package/dist/website/assets/static/pages_index_styles-f7bc93a7.DHC1qZXc.css +1 -0
  161. package/dist/website/banner/index.html +28 -0
  162. package/dist/website/banner/index.pageContext.json +1 -0
  163. package/dist/website/banner.jpg +0 -0
  164. package/dist/website/go-to-dashboard/index.html +30 -0
  165. package/dist/website/go-to-dashboard/index.pageContext.json +1 -0
  166. package/dist/website/index.html +30 -0
  167. package/dist/website/index.pageContext.json +1 -0
  168. package/dist/website/press/index.html +29 -0
  169. package/dist/website/press/index.pageContext.json +1 -0
  170. package/package.json +31 -27
  171. package/dist/dashboard-bundle/assets/everforest-dark-sB-x3p7T.js +0 -1
  172. package/dist/dashboard-bundle/assets/everforest-light-Df2xbC6M.js +0 -1
  173. package/dist/dashboard-bundle/assets/host/module-CTQrrHFl.js +0 -1
  174. package/dist/dashboard-bundle/assets/main-BKp0ZMXD.css +0 -2
  175. package/dist/dashboard-bundle/assets/main-Du4cDqEn.js +0 -148
  176. package/dist/dashboard-bundle/assets/module-Cwganbc7.js +0 -16
  177. package/dist/module-types/src/repository-address.d.ts +0 -36
  178. package/dist/repository-address.d.ts +0 -37
  179. package/dist/repository-address.d.ts.map +0 -1
  180. package/dist/repository-address.js +0 -59
  181. package/dist/repository-address.js.map +0 -1
package/dist/daemon.js CHANGED
@@ -8,12 +8,14 @@ import { agentUpdates } from './dashboard/agent-updates.js';
8
8
  import { startBackgroundServices } from './daemon-services.js';
9
9
  import { projectErrorStore } from './project-errors.js';
10
10
  import { resolveDashboardBundle } from './dashboard/bundle.js';
11
+ import { resolveWebsite } from './dashboard/website.js';
11
12
  import { ensureBridgeToken, ensureComputerId, listProjects, nodeRegistryFs, readPreferences, registryPreferencesStore, thisComputerName } from './registry.js';
12
13
  import { sayComputer, sayName } from './dashboard/machine-call.js';
13
14
  import { bridgeSessionsFrom } from './dashboard/bridge-sessions.js';
14
15
  import { bridgeQuestions } from './dashboard/bridge-store.js';
15
16
  import { bridgeBrowserDir, bridgeBrowserOwner, startBridgeBrowser } from './bridge-browser.js';
16
17
  import { runProjectHooks } from './project-hooks.js';
18
+ import { readSecureAddress, SECURE_PORT } from './secure-address.js';
17
19
  import { builtInServices } from './built-in.js';
18
20
  import { COMPUTER_ENV, sayOwnUrl, startPackageServices } from './package-services.js';
19
21
  import { readAllAgents } from './store/index.js';
@@ -95,6 +97,12 @@ export async function runDaemon(cwd, opts = {}) {
95
97
  }, console.log);
96
98
  // Which models each coding agent offers: asked on the menu's first read, then kept.
97
99
  const models = defaultModelsSource();
100
+ const websiteDir = await resolveWebsite();
101
+ // A secure address that cannot be read is said, and the dashboard comes up on its plain one.
102
+ const secure = await readSecureAddress(env).catch((err) => {
103
+ console.log(`the secure address could not be read (${err instanceof Error ? err.message : String(err)})`);
104
+ return undefined;
105
+ });
98
106
  const dashboard = await startDashboard({
99
107
  port,
100
108
  quota,
@@ -126,6 +134,8 @@ export async function runDaemon(cwd, opts = {}) {
126
134
  projectErrors: projectErrors.read,
127
135
  bridgeBrowser,
128
136
  ...(clientBundleDir ? { clientBundleDir } : {}),
137
+ ...(secure ? { secure: { ...secure, port: SECURE_PORT } } : {}),
138
+ ...(websiteDir ? { websiteDir } : {}),
129
139
  }).catch(async (err) => {
130
140
  // The port is taken (another dashboard runs there, say): what was set up for it stops, or
131
141
  // its timers keep the process alive.
@@ -137,7 +147,7 @@ export async function runDaemon(cwd, opts = {}) {
137
147
  sayOwnUrl(dashboard.url);
138
148
  try {
139
149
  const actualPort = Number(new URL(dashboard.url).port) || port;
140
- opts.onListening?.({ pid: process.pid, port: actualPort, url: dashboard.url, startedAt: new Date().toISOString() });
150
+ opts.onListening?.({ pid: process.pid, port: actualPort, url: dashboard.secureUrl ?? dashboard.url, startedAt: new Date().toISOString() });
141
151
  }
142
152
  catch (err) {
143
153
  // Startup failed after the port was bound. Tear the server down, or it keeps the event loop
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ export interface OwnProject {
20
20
  name: string;
21
21
  /** Its folder there. */
22
22
  path: string;
23
- /** Its repository's address ({@link import('../repository-address.js').repositoryAddress}), when it has one. */
23
+ /** Its repository's address ({@link import('@openagt/agent-data').repositoryAddress}), when it has one. */
24
24
  address?: string;
25
25
  /** The same address in the letters its `origin` is written with: what another computer clones it from. */
26
26
  spelling?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"elsewhere.d.ts","sourceRoot":"","sources":["../../src/dashboard/elsewhere.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"elsewhere.d.ts","sourceRoot":"","sources":["../../src/dashboard/elsewhere.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { nodeFs } from '../node-fs.js';
4
4
  import { isActivated } from '../project.js';
5
5
  import { readAllAgents } from '../store/index.js';
6
6
  import { projectGitHost } from '../store/git-host.js';
7
- import { projectNameOf } from '../repository-address.js';
7
+ import { projectNameOf } from '@openagt/agent-data';
8
8
  /** A project's runs, live prepended to the archived history. Forgiving: a failed read is `[]`. */
9
9
  /**
10
10
  * Derive a {@link ProjectSummary} from a registry record: its name (its repository's), whether
@@ -1 +1 @@
1
- {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/dashboard/projects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/dashboard/projects.ts"],"names":[],"mappings":"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"}
@@ -143,8 +143,14 @@ export declare function isJsonRequest(req: IncomingMessage): boolean;
143
143
  * computer's own address only, so the only `Host` a real user's browser can send is a loopback
144
144
  * one — anything else is a rebound name and is rejected. An absent `Host` is rejected too:
145
145
  * HTTP/1.1 requires it, and every browser sends it.
146
+ *
147
+ * The one other name let in is the secure address's (#1919), and only over its HTTPS: a rebound
148
+ * name never gets that far, since the browser finds the certificate is for another name and
149
+ * stops before it sends anything.
146
150
  */
147
151
  export declare function isExpectedHost(req: IncomingMessage): boolean;
152
+ /** Whether this request came to the secure address (#1919): over its HTTPS, by its name. */
153
+ export declare function isSecureAddressRequest(req: IncomingMessage): boolean;
148
154
  /** Where the dashboard's RPCs live. One prefix, so the static handler can decline it by path. */
149
155
  export declare const RPC_PREFIX = "/_rpc";
150
156
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"rpc-serve.d.ts","sourceRoot":"","sources":["../../src/dashboard/rpc-serve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc-serve.d.ts","sourceRoot":"","sources":["../../src/dashboard/rpc-serve.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { hostnameFromHostHeader, isLoopbackHost } from '../loopback-host.js';
2
+ import { certificateNames } from '../secure-address.js';
2
3
  import { setDashboardContext } from '../dashboard-rpc/context.js';
3
4
  import { RPC_HANDLERS, RPC_EVENT_STREAM } from '../dashboard-rpc/index.js';
4
5
  import { followRunsChanged } from '../dashboard-rpc/runs-changed.js';
@@ -53,10 +54,29 @@ export function isJsonRequest(req) {
53
54
  * computer's own address only, so the only `Host` a real user's browser can send is a loopback
54
55
  * one — anything else is a rebound name and is rejected. An absent `Host` is rejected too:
55
56
  * HTTP/1.1 requires it, and every browser sends it.
57
+ *
58
+ * The one other name let in is the secure address's (#1919), and only over its HTTPS: a rebound
59
+ * name never gets that far, since the browser finds the certificate is for another name and
60
+ * stops before it sends anything.
56
61
  */
57
62
  export function isExpectedHost(req) {
58
63
  const header = req.headers.host;
59
- return header !== undefined && header !== '' && isLoopbackHost(hostnameFromHostHeader(header));
64
+ if (header === undefined || header === '')
65
+ return false;
66
+ const name = hostnameFromHostHeader(header);
67
+ return isLoopbackHost(name) || ownCertificateNames(req).includes(name);
68
+ }
69
+ /** Whether this request came to the secure address (#1919): over its HTTPS, by its name. */
70
+ export function isSecureAddressRequest(req) {
71
+ const header = req.headers.host;
72
+ return header !== undefined && ownCertificateNames(req).includes(hostnameFromHostHeader(header));
73
+ }
74
+ /** The names the certificate this request came in on is for: none for plain HTTP. */
75
+ function ownCertificateNames(req) {
76
+ const socket = req.socket;
77
+ if (!socket.encrypted)
78
+ return [];
79
+ return certificateNames(socket.getCertificate()?.subjectaltname);
60
80
  }
61
81
  /** Where the dashboard's RPCs live. One prefix, so the static handler can decline it by path. */
62
82
  export const RPC_PREFIX = '/_rpc';
@@ -1 +1 @@
1
- {"version":3,"file":"rpc-serve.js","sourceRoot":"","sources":["../../src/dashboard/rpc-serve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc-serve.js","sourceRoot":"","sources":["../../src/dashboard/rpc-serve.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { type InboxLine } from '@openagt/agent-driver';
7
7
  */
8
8
  /**
9
9
  * The inbox of a run, in its checkout's `.openagent/`: the file agent-driver's session reads
10
- * when a turn ends, one JSON line per message or answer. The run's tool hands the session the
10
+ * while a turn runs and when it ends, one JSON line per message, answer, or act on a message. The run's tool hands the session the
11
11
  * same path.
12
12
  */
13
13
  export declare const RUN_INBOX_FILE = "inbox.jsonl";
@@ -19,8 +19,9 @@ export type SteerResult = {
19
19
  error: string;
20
20
  };
21
21
  /**
22
- * Hand one line to a run of the project at `cwd`. A run that is working takes it from its inbox
23
- * when its turn ends. A run that has ended (done, stopped, failed, or waiting on its question) is
22
+ * Hand one line to a run of the project at `cwd`. A run that is working takes it from its inbox:
23
+ * a message reaches the agent at its next step, or when its turn ends when it was sent for later.
24
+ * Taking back a message and Send now act on the turn that runs; with none, they are done. A run that has ended (done, stopped, failed, or waiting on its question) is
24
25
  * continued through the project's `resume` hook. A run that ends while the line is on its way
25
26
  * would leave it in an inbox nobody reads, so the run is looked at again after the write, and
26
27
  * what is still in the inbox then is taken back and resumes the run instead.
@@ -1 +1 @@
1
- {"version":3,"file":"run-inbox.d.ts","sourceRoot":"","sources":["../../src/dashboard/run-inbox.ts"],"names":[],"mappings":"AAEA,OAAO,EAA0B,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAK9E;;;;;GAKG;AAEH;;;;GAIG;AACH,eAAO,MAAM,cAAc,gBAAgB,CAAA;AAE3C,mFAAmF;AACnF,MAAM,MAAM,WAAW,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAQrE;;;;;;GAMG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,EACf,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAAO,GAC5E,OAAO,CAAC,WAAW,CAAC,CAiBtB"}
1
+ {"version":3,"file":"run-inbox.d.ts","sourceRoot":"","sources":["../../src/dashboard/run-inbox.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuC,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAK3F;;;;;GAKG;AAEH;;;;GAIG;AACH,eAAO,MAAM,cAAc,gBAAgB,CAAA;AAE3C,mFAAmF;AACnF,MAAM,MAAM,WAAW,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAQrE;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,EACf,IAAI,GAAE;IAAE,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;CAAO,GAC5E,OAAO,CAAC,WAAW,CAAC,CAiBtB"}
@@ -1,6 +1,6 @@
1
1
  import { hostname } from 'node:os';
2
2
  import { join } from 'node:path';
3
- import { appendInbox, takeInbox } from '@openagt/agent-driver';
3
+ import { appendInbox, promptLines, takeInbox } from '@openagt/agent-driver';
4
4
  import { OPENAGENT_DIR } from '../openagent-dir.js';
5
5
  import { runResumeHook } from '../project-hooks.js';
6
6
  import { findAgent, isPidAlive, resolveAgentCheckout } from '../store/index.js';
@@ -12,7 +12,7 @@ import { findAgent, isPidAlive, resolveAgentCheckout } from '../store/index.js';
12
12
  */
13
13
  /**
14
14
  * The inbox of a run, in its checkout's `.openagent/`: the file agent-driver's session reads
15
- * when a turn ends, one JSON line per message or answer. The run's tool hands the session the
15
+ * while a turn runs and when it ends, one JSON line per message, answer, or act on a message. The run's tool hands the session the
16
16
  * same path.
17
17
  */
18
18
  export const RUN_INBOX_FILE = 'inbox.jsonl';
@@ -22,8 +22,9 @@ async function isRunWorking(cwd, agentId) {
22
22
  return agent?.status === 'running' && agent.pid !== undefined && agent.host === hostname() && isPidAlive(agent.pid);
23
23
  }
24
24
  /**
25
- * Hand one line to a run of the project at `cwd`. A run that is working takes it from its inbox
26
- * when its turn ends. A run that has ended (done, stopped, failed, or waiting on its question) is
25
+ * Hand one line to a run of the project at `cwd`. A run that is working takes it from its inbox:
26
+ * a message reaches the agent at its next step, or when its turn ends when it was sent for later.
27
+ * Taking back a message and Send now act on the turn that runs; with none, they are done. A run that has ended (done, stopped, failed, or waiting on its question) is
27
28
  * continued through the project's `resume` hook. A run that ends while the line is on its way
28
29
  * would leave it in an inbox nobody reads, so the run is looked at again after the write, and
29
30
  * what is still in the inbox then is taken back and resumes the run instead.
@@ -38,7 +39,7 @@ export async function sayToRun(cwd, agentId, line, deps = {}) {
38
39
  return { ok: true };
39
40
  lines.splice(0, 1, ...(await takeInbox(inbox)));
40
41
  }
41
- for (const stranded of lines) {
42
+ for (const stranded of promptLines(lines)) {
42
43
  const resumed = await runResumeHook(cwd, {
43
44
  runId: agentId,
44
45
  ...(stranded.kind === 'message' ? { text: stranded.text, ...(stranded.publish !== undefined ? { publish: stranded.publish } : {}) } : { answer: stranded.answer }),
@@ -1 +1 @@
1
- {"version":3,"file":"run-inbox.js","sourceRoot":"","sources":["../../src/dashboard/run-inbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAkB,MAAM,uBAAuB,CAAA;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAE/E;;;;;GAKG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAA;AAK3C,iGAAiG;AACjG,KAAK,UAAU,YAAY,CAAC,GAAW,EAAE,OAAe;IACtD,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IAClE,OAAO,KAAK,EAAE,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACrH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,GAAW,EACX,OAAe,EACf,IAAe,EACf,IAAI,GAAuE,EAAE;IAE7E,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,YAAY,CAAA;IAChD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAA;IACpB,IAAI,MAAM,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,aAAa,EAAE,cAAc,CAAC,CAAA;QAC3F,MAAM,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAC9B,IAAI,MAAM,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;QACtD,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACjD,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE;YACvC,KAAK,EAAE,OAAO;YACd,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;SACnK,CAAC,CAAA;QACF,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,OAAO,OAAO,CAAA;IACjC,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;AACrB,CAAC"}
1
+ {"version":3,"file":"run-inbox.js","sourceRoot":"","sources":["../../src/dashboard/run-inbox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAkB,MAAM,uBAAuB,CAAA;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAE/E;;;;;GAKG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,aAAa,CAAA;AAK3C,iGAAiG;AACjG,KAAK,UAAU,YAAY,CAAC,GAAW,EAAE,OAAe;IACtD,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;IAClE,OAAO,KAAK,EAAE,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACrH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,GAAW,EACX,OAAe,EACf,IAAe,EACf,IAAI,GAAuE,EAAE;IAE7E,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,YAAY,CAAA;IAChD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAA;IACpB,IAAI,MAAM,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,aAAa,EAAE,cAAc,CAAC,CAAA;QAC3F,MAAM,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAC9B,IAAI,MAAM,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;QACtD,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IACjD,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE;YACvC,KAAK,EAAE,OAAO;YACd,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;SACnK,CAAC,CAAA;QACF,IAAI,CAAC,OAAO,CAAC,EAAE;YAAE,OAAO,OAAO,CAAA;IACjC,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAA;AACrB,CAAC"}
@@ -7,6 +7,7 @@ import type { BridgeBrowserOwner } from '../bridge-browser.js';
7
7
  import type { AddProjectResult, RemoveProjectResult, StartAgentOptions, StartAgentResult, StartedInResult } from './types.js';
8
8
  import type { EventsSource, RemoteAgents } from './rpc-serve.js';
9
9
  import { type RelayHandlers } from './relay-endpoints.js';
10
+ import { type SecureAddress } from '../secure-address.js';
10
11
  /** Options for {@link startDashboard}. */
11
12
  export interface DashboardOptions {
12
13
  /** Port to bind. Default `4200`; pass `0` for an ephemeral port. */
@@ -101,11 +102,25 @@ export interface DashboardOptions {
101
102
  * wires one, since it is the process that can see every project's runs.
102
103
  */
103
104
  bridgeSessions?: () => Promise<import('./bridge-endpoints.js').BridgeSession[]>;
105
+ /**
106
+ * The secure address (#1919): also answer over HTTPS on `port`, with the certificate made on
107
+ * this computer for `name`. Absent serves plain HTTP only.
108
+ */
109
+ secure?: SecureAddress & {
110
+ port: number;
111
+ };
112
+ /**
113
+ * The website's copy (#1919), served on the secure address beside the dashboard: its landing
114
+ * page at `/` when the person picks it, and its other pages at their own paths.
115
+ */
116
+ websiteDir?: string;
104
117
  }
105
118
  /** A running localhost dashboard: the built SPA + its RPC mount. */
106
119
  export interface Dashboard {
107
- /** The URL to open. */
120
+ /** The URL this computer's own programs call it on. */
108
121
  readonly url: string;
122
+ /** The secure address's URL, the one to open in a browser, when it is answered. */
123
+ readonly secureUrl?: string;
109
124
  /** Stop the server. Idempotent. */
110
125
  close(): Promise<void>;
111
126
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/dashboard/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/dashboard/server.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  import { createServer } from 'node:http';
2
+ import { createServer as createSecureServer } from 'node:https';
2
3
  import { serveClientBundle } from './static.js';
3
- import { makeRpcMount, RPC_PREFIX, isSameOriginRequest, isExpectedHost, isJsonRequest } from './rpc-serve.js';
4
+ import { makeRpcMount, RPC_PREFIX, isSameOriginRequest, isExpectedHost, isJsonRequest, isSecureAddressRequest } from './rpc-serve.js';
5
+ import { handleViewRequest, keepView, serveWebsite, VIEW_PREFIX } from './website.js';
4
6
  import { requestPathname } from '../request-path.js';
5
7
  import { BROUGHT_MODULES_PREFIX, COMPUTER_MODULES_PREFIX, MODULES_PREFIX, serveBroughtModuleFile, serveComputerModuleFile, serveModuleFile } from './module-serve.js';
6
8
  import { handleRelayRequest, RELAY_PREFIX } from './relay-endpoints.js';
@@ -10,6 +12,7 @@ import { BRIDGE_PREFIX, EXPECTED_EXTENSION_VERSION, handleBridgeRequest } from '
10
12
  import { bridgeQuestions } from './bridge-store.js';
11
13
  import { bridgeStarts } from './bridge-starts.js';
12
14
  import { WEB_START_PREFIX, handleWebStartRequest } from './web-start-endpoints.js';
15
+ import { SECURE_PORT } from '../secure-address.js';
13
16
  /**
14
17
  * Start the localhost dashboard: a tiny `node:http` server that serves the built SPA (#405) and
15
18
  * mounts its RPC surface at `/_rpc` — the calls and the live-event stream. The dashboard reads a
@@ -18,7 +21,7 @@ import { WEB_START_PREFIX, handleWebStartRequest } from './web-start-endpoints.j
18
21
  * daemon's own process, so `sendStart` / `sendAddProject` call the daemon's own closures via
19
22
  * {@link DashboardOptions.onStart} / {@link DashboardOptions.onAddProject}.
20
23
  */
21
- export function startDashboard(opts) {
24
+ export async function startDashboard(opts) {
22
25
  const port = opts.port ?? 4200;
23
26
  const clientBundleDir = opts.clientBundleDir;
24
27
  // A broken install ships no built bundle (the published package always does), so serve
@@ -95,7 +98,7 @@ export function startDashboard(opts) {
95
98
  get: id => bridgeStarts().get(id),
96
99
  }
97
100
  : undefined;
98
- const server = createServer((req, res) => {
101
+ const handle = (req, res) => {
99
102
  const pathname = requestPathname(req);
100
103
  if (pathname === undefined) {
101
104
  res.writeHead(400, { 'content-type': 'text/plain' }).end('bad request');
@@ -161,28 +164,67 @@ export function startDashboard(opts) {
161
164
  });
162
165
  return;
163
166
  }
167
+ const websiteDir = opts.websiteDir;
168
+ if (websiteDir && isSecureAddressRequest(req)) {
169
+ if (pathname === VIEW_PREFIX || pathname.startsWith(`${VIEW_PREFIX}/`)) {
170
+ handleViewRequest(res, pathname);
171
+ return;
172
+ }
173
+ keepView(req, res);
174
+ void serveWebsite(req, res, websiteDir, pathname)
175
+ .then(served => (served ? undefined : serveClientBundle(req, res, clientBundleDir)))
176
+ .catch(() => {
177
+ if (!res.headersSent)
178
+ res.writeHead(500, { 'content-type': 'text/plain' }).end('page unreadable');
179
+ });
180
+ return;
181
+ }
164
182
  void serveClientBundle(req, res, clientBundleDir);
165
- });
166
- return listenDashboard(server, port, async () => {
183
+ };
184
+ const server = createServer(handle);
185
+ const secureServer = opts.secure ? createSecureServer({ key: opts.secure.key, cert: opts.secure.cert }, handle) : undefined;
186
+ const close = async () => {
167
187
  // Stop polling with the server: the poller outlives every agent by design,
168
188
  // so nothing else would ever end it.
169
189
  quota.stop();
170
- await closeServer(server);
171
- });
190
+ await Promise.all([closeServer(server), secureServer ? closeServer(secureServer) : undefined]);
191
+ };
192
+ const dashboard = await listenDashboard(server, port, close);
193
+ if (!opts.secure || !secureServer)
194
+ return dashboard;
195
+ try {
196
+ return { ...dashboard, secureUrl: secureUrlOf(opts.secure.name, await listen(secureServer, opts.secure.port)) };
197
+ }
198
+ catch (err) {
199
+ // A secure address that cannot start leaves the dashboard on its plain address, as without one.
200
+ console.log(`the secure address ${opts.secure.name} could not start (${err instanceof Error ? err.message : String(err)}): the dashboard answers on ${dashboard.url} only`);
201
+ return dashboard;
202
+ }
172
203
  }
173
204
  /**
174
- * The one address the dashboard listens on: this computer's own. Whatever opens OpenAgent to a
175
- * network is a package of its own, which listens there and passes what it lets in on to here.
205
+ * The secure address's URL. On {@link SECURE_PORT} it has no port: the install sends the name's
206
+ * port 443 there. Any other port (a test's own) is said.
207
+ */
208
+ function secureUrlOf(name, port) {
209
+ return port === SECURE_PORT ? `https://${name}` : `https://${name}:${port}`;
210
+ }
211
+ /**
212
+ * The one address the dashboard listens on, its secure address too: this computer's own. Whatever
213
+ * opens OpenAgent to a network is a package of its own, which listens there and passes what it
214
+ * lets in on to here.
176
215
  */
177
216
  const DASHBOARD_HOST = '127.0.0.1';
178
217
  /** Bind the server and resolve a {@link Dashboard} handle; rejects if the port is already taken. */
179
- function listenDashboard(server, port, close) {
218
+ async function listenDashboard(server, port, close) {
219
+ return { url: `http://${DASHBOARD_HOST}:${await listen(server, port)}`, close };
220
+ }
221
+ /** Bind the server on this computer's own address; resolves the port bound, rejects if it is taken. */
222
+ function listen(server, port) {
180
223
  return new Promise((resolvePromise, rejectPromise) => {
181
224
  server.once('error', rejectPromise);
182
225
  server.listen(port, DASHBOARD_HOST, () => {
183
226
  server.removeListener('error', rejectPromise);
184
- const address = server.address();
185
- resolvePromise({ url: `http://${DASHBOARD_HOST}:${address.port}`, close });
227
+ resolvePromise(server.address().port);
186
228
  });
187
229
  });
188
230
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/dashboard/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0D,MAAM,WAAW,CAAA;AAQhG,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC7G,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,cAAc,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAGrK,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAsB,MAAM,sBAAsB,CAAA;AAC3F,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtE,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,aAAa,EAAuB,MAAM,aAAa,CAAA;AAC3F,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,mBAAmB,EAAuB,MAAM,uBAAuB,CAAA;AAC3H,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAyB,MAAM,0BAA0B,CAAA;AA8GzG;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,IAAsB;IACnD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAA;IAC9B,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAA;IAE5C,uFAAuF;IACvF,sFAAsF;IACtF,mFAAmF;IACnF,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACxC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAA;YACpD,GAAG,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAA;QAClD,CAAC,CAAC,CAAA;QACF,OAAO,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAA;IACjE,CAAC;IAED,kFAAkF;IAClF,2EAA2E;IAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;IACxB,MAAM,QAAQ,GAAG,YAAY,CAAC;QAC5B,UAAU,EAAE,IAAI,CAAC,OAAO;QACxB,UAAU,EAAE,IAAI,CAAC,YAAY;QAC7B,SAAS,EAAE,IAAI,CAAC,WAAW;QAC3B,aAAa,EAAE,IAAI,CAAC,eAAe;QACnC,YAAY,EAAE,IAAI,CAAC,cAAc;QACjC,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,KAAK;QACL,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,YAAY,EAAE,IAAI,CAAC,YAAY;KAChC,CAAC,CAAA;IAEF,6FAA6F;IAC7F,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAC/D,MAAM,aAAa,GAA8B,IAAI,CAAC,KAAK;QACzD,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAC/a,CAAC,CAAC,SAAS,CAAA;IACb,MAAM,cAAc,GAA+B,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;IAE3K,iGAAiG;IACjG,MAAM,cAAc,GAA+B,IAAI,CAAC,WAAW;QACjE,CAAC,CAAC;YACE,KAAK,EAAE,IAAI,CAAC,WAAW;YACvB,0FAA0F;YAC1F,wBAAwB,EAAE,0BAA0B;YACpD,gBAAgB,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,eAAe,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,0BAA0B,EAAE,OAAO,CAAC;YAC7G,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;YACtD,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC;YAC1E,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC;YAC1D,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC;YACpD,QAAQ,EAAE,QAAQ,CAAC,EAAE;gBACnB,KAAK,MAAM,MAAM,IAAI,QAAQ;oBAAE,eAAe,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YACvE,CAAC;YACD,mFAAmF;YACnF,MAAM,EAAE,SAAS,CAAC,EAAE;gBAClB,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;gBACxD,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;YACrE,CAAC;YACD,QAAQ,EAAE,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,eAAe,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC;YAC/F,yFAAyF;YACzF,4EAA4E;YAC5E,KAAK,EAAE,GAAG,EAAE;gBACV,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC,SAAS,EAAE,CAAA;gBACvC,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;YACpJ,CAAC;YACD,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC;YACrF,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE;QACH,CAAC,CAAC,SAAS,CAAA;IAEb,iGAAiG;IACjG,MAAM,gBAAgB,GAAiC,IAAI,CAAC,WAAW;QACrE,CAAC,CAAC;YACE,KAAK,EAAE,IAAI,CAAC,WAAW;YACvB,cAAc,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC,cAAc,EAAE;YACxD,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;YAC/C,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;SAClC;QACH,CAAC,CAAC,SAAS,CAAA;IAEb,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACvC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAA;QACrC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;YACvE,OAAM;QACR,CAAC;QACD,gGAAgG;QAChG,0DAA0D;QAC1D,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAA;QAC/C,4DAA4D;QAC5D,IAAI,QAAQ,KAAK,aAAa,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,aAAa,GAAG,CAAC,EAAE,CAAC;YAC3E,KAAK,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAA;YAC5D,OAAM;QACR,CAAC;QACD,IAAI,QAAQ,KAAK,gBAAgB,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,gBAAgB,GAAG,CAAC,EAAE,CAAC;YACjF,KAAK,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAA;YAChE,OAAM;QACR,CAAC;QACD,kGAAkG;QAClG,+FAA+F;QAC/F,yFAAyF;QACzF,uFAAuF;QACvF,gDAAgD;QAChD,8FAA8F;QAC9F,wFAAwF;QACxF,8DAA8D;QAC9D,IAAI,QAAQ,KAAK,YAAY,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC;YACzE,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC;gBAAE,OAAM;YACzC,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;gBACrE,OAAM;YACR,CAAC;YACD,KAAK,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAA;YAC1D,OAAM;QACR,CAAC;QACD,4FAA4F;QAC5F,mCAAmC;QACnC,IAAI,QAAQ,KAAK,aAAa,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,aAAa,GAAG,CAAC,EAAE,CAAC;YAC3E,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC;gBAAE,OAAM;YACzE,KAAK,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACtE,IAAI,CAAC,GAAG,CAAC,WAAW;oBAAE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;;oBAC9F,GAAG,CAAC,OAAO,EAAE,CAAA;YACpB,CAAC,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QACD,IAAI,QAAQ,KAAK,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,CAAC,EAAE,CAAC;YACrE,KAAK,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;YACvB,OAAM;QACR,CAAC;QACD,qGAAqG;QACrG,kFAAkF;QAClF,mGAAmG;QACnG,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,uBAAuB,GAAG,CAAC,CAAA;QACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,sBAAsB,GAAG,CAAC,CAAA;QACjE,IAAI,UAAU,IAAI,OAAO,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,cAAc,GAAG,CAAC,EAAE,CAAC;YACvE,8FAA8F;YAC9F,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC9H,IAAI,CAAC,GAAG,CAAC,WAAW;oBAAE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;YAC1G,CAAC,CAAC,CAAA;YACF,OAAM;QACR,CAAC;QACD,KAAK,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,CAAC,CAAA;IACnD,CAAC,CAAC,CAAA;IACF,OAAO,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,IAAI,EAAE;QAC9C,2EAA2E;QAC3E,qCAAqC;QACrC,KAAK,CAAC,IAAI,EAAE,CAAA;QACZ,MAAM,WAAW,CAAC,MAAM,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,cAAc,GAAG,WAAW,CAAA;AAElC,oGAAoG;AACpG,SAAS,eAAe,CAAC,MAAc,EAAE,IAAY,EAAE,KAA0B;IAC/E,OAAO,IAAI,OAAO,CAAY,CAAC,cAAc,EAAE,aAAa,EAAE,EAAE;QAC9D,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;QACnC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;YAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAiB,CAAA;YAC/C,cAAc,CAAC,EAAE,GAAG,EAAE,UAAU,cAAc,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAC5E,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,MAAc;IACjC,uIAAuI;IACvI,MAAM,CAAC,mBAAmB,EAAE,CAAA;IAC5B,OAAO,IAAI,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;AAC5E,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,GAAoB,EAAE,GAAmB;IAClE,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAC1C,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,aAAa,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,UAAU;QAAE,OAAO,IAAI,CAAA;IAC/G,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;IACrE,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CAAC,GAAoB,EAAE,GAAmB;IACnE,IAAI,mBAAmB,CAAC,GAAG,CAAC,IAAI,cAAc,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAChE,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;IACrE,OAAO,KAAK,CAAA;AACd,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/dashboard/server.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,22 @@
1
1
  import type { IncomingMessage, ServerResponse } from 'node:http';
2
+ /**
3
+ * The file `pathname` names in `dir`: the file itself, or a folder's `index.html` (`/press` is
4
+ * `press/index.html`, `/` is `index.html`). Undefined when there is none, when the escape is
5
+ * malformed, or when the path leaves `dir`: path-traversal never reads outside it.
6
+ */
7
+ export declare function fileIn(dir: string, pathname: string): Promise<string | undefined>;
8
+ /**
9
+ * Send `target`, a file in the bundle `root`. Only the fingerprinted files under `assets/` are
10
+ * immutable, the host files a module imports among them: index.html, which names this version's
11
+ * in its import map, and everything else at a stable path must always revalidate, or a dashboard
12
+ * upgrade would not reach a browser that kept the old page until its cache expired a year later.
13
+ */
14
+ export declare function sendFile(req: IncomingMessage, res: ServerResponse, root: string, target: string): Promise<void>;
2
15
  /**
3
16
  * Serve `dir`'s static bundle for this request: the requested file when it exists,
4
17
  * otherwise `index.html` (the SPA fallback, so client routes and unknown paths still
5
- * boot the app). Path-traversal is guarded — a request that escapes `dir` falls back to
6
- * `index.html` rather than reading outside the bundle.
18
+ * boot the app). A request that escapes `dir` falls back to `index.html` rather than reading
19
+ * outside the bundle.
7
20
  */
8
21
  export declare function serveClientBundle(req: IncomingMessage, res: ServerResponse, dir: string): Promise<void>;
9
22
  //# sourceMappingURL=static.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"static.d.ts","sourceRoot":"","sources":["../../src/dashboard/static.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAwBhE;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA0B7G"}
1
+ {"version":3,"file":"static.d.ts","sourceRoot":"","sources":["../../src/dashboard/static.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAwBhE;;;;GAIG;AACH,wBAAsB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQvF;AAED;;;;;GAKG;AACH,wBAAsB,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAWrH;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAM7G"}