Pure `nix fmt` output from the commit before this one — no hand edits. 203 files: 52 md, 42 tsx, 32 js, 32 css, 21 ts, 13 html, 8 json, 3 mjs. Reproduce with `nix develop -c nix fmt` on the parent commit; the result should be byte-identical to this tree. None of the 13 `.prettierignore` entries appears here — verified by intersecting the changed-file list against the ignore file, with a control proving the intersection finds a match when one exists.
27 lines
1.2 KiB
TypeScript
27 lines
1.2 KiB
TypeScript
// Pause/resume POST to the *dashboard's* origin (hive-c0re, not this
|
|
// agent's own `/api/*`) — see dashboardBase.ts. `fetch` with
|
|
// `mode: 'no-cors'` rather than a normal request: the POST is cross-
|
|
// origin (behind the gateway this page and the dashboard share an
|
|
// origin, but accessed directly they're different ports) and this way
|
|
// hive-c0re doesn't need to grow CORS headers for it — the tradeoff is
|
|
// an opaque, unreadable response, which is fine here since the caller
|
|
// doesn't need to read it, only trigger a state refresh afterward (same
|
|
// shape as `postModel`/`postEffort` in modelEffort.ts). `credentials:
|
|
// 'include'` matches the cookie-sending behavior of the plain <form>
|
|
// submit this replaces.
|
|
//
|
|
// mara flagged: the previous version was a real `<form>` submit, which
|
|
// navigates the whole page to whatever hive-c0re's endpoint returns —
|
|
// here, the literal text "ok". Fire-and-forget `fetch` keeps the click
|
|
// on the agent page.
|
|
export async function submitPauseResume(
|
|
dashboardBase: string,
|
|
label: string,
|
|
verb: "pause" | "resume",
|
|
): Promise<void> {
|
|
await fetch(`${dashboardBase}api/${verb}/${label}`, {
|
|
method: "POST",
|
|
mode: "no-cors",
|
|
credentials: "include",
|
|
}).catch(() => {});
|
|
}
|