check / check (push) Successful in 12s
A Reporter beside AppState POSTs each host's unreported, non-paused samples to /api/v1/reports every reportInterval (default 60s). buildReport is an exported pure function of host state; init() runs only when #app exists, so a test can import the module. A per-host mark advances only on a delivered POST. At most one report POST is pending at a time and it is abandoned after half the interval, so a slow POST never overlaps the next report and a mark never moves backwards. The samples of an abandoned POST are sent again at the next interval, so a backend that stored them but answered late receives them twice. Failure is quiet and never blocks probing. vite.config.js proxies /api for yarn dev. Model: opus-5-5
27 lines
779 B
JavaScript
27 lines
779 B
JavaScript
import { defineConfig } from "vite";
|
|
import tailwindcss from "@tailwindcss/vite";
|
|
import { execSync } from "child_process";
|
|
|
|
const commitHash = execSync("git rev-parse --short HEAD").toString().trim();
|
|
const commitFull = execSync("git rev-parse HEAD").toString().trim();
|
|
|
|
export default defineConfig({
|
|
plugins: [tailwindcss()],
|
|
server: {
|
|
// Proxy /api to a locally running netwatch-server so `yarn dev`
|
|
// exercises the real report-posting path.
|
|
proxy: {
|
|
"/api": "http://127.0.0.1:8080",
|
|
},
|
|
},
|
|
define: {
|
|
__COMMIT_HASH__: JSON.stringify(commitHash),
|
|
__COMMIT_FULL__: JSON.stringify(commitFull),
|
|
},
|
|
build: {
|
|
target: "esnext",
|
|
minify: "esbuild",
|
|
cssMinify: true,
|
|
},
|
|
});
|