mirror of
https://github.com/harivansh-afk/sandbox-agent.git
synced 2026-04-15 18:01:30 +00:00
* Restore foundry onboarding stack * Consolidate foundry rename * Create foundry tasks without prompts * Rename Foundry handoffs to tasks
53 lines
1.3 KiB
TypeScript
53 lines
1.3 KiB
TypeScript
import { execSync } from "node:child_process";
|
|
import { readFileSync } from "node:fs";
|
|
import { resolve } from "node:path";
|
|
import { defineConfig } from "tsup";
|
|
|
|
function packageVersion(): string {
|
|
try {
|
|
const packageJsonPath = resolve(process.cwd(), "package.json");
|
|
const parsed = JSON.parse(readFileSync(packageJsonPath, "utf8")) as { version?: unknown };
|
|
if (typeof parsed.version === "string" && parsed.version.trim()) {
|
|
return parsed.version.trim();
|
|
}
|
|
} catch {
|
|
// Fall through.
|
|
}
|
|
return "dev";
|
|
}
|
|
|
|
function sourceId(): string {
|
|
try {
|
|
const raw = execSync("git rev-parse --short HEAD", {
|
|
encoding: "utf8",
|
|
stdio: ["ignore", "pipe", "ignore"],
|
|
}).trim();
|
|
if (raw.length > 0) {
|
|
return raw;
|
|
}
|
|
} catch {
|
|
// Fall through.
|
|
}
|
|
return packageVersion();
|
|
}
|
|
|
|
function resolveBuildId(): string {
|
|
const override = process.env.HF_BUILD_ID?.trim();
|
|
if (override) {
|
|
return override;
|
|
}
|
|
|
|
// Match sandbox-agent semantics: source id + unique build timestamp.
|
|
return `${sourceId()}-${Date.now().toString()}`;
|
|
}
|
|
|
|
const buildId = resolveBuildId();
|
|
|
|
export default defineConfig({
|
|
entry: ["src/index.ts"],
|
|
format: ["esm"],
|
|
dts: true,
|
|
define: {
|
|
__HF_BUILD_ID__: JSON.stringify(buildId),
|
|
},
|
|
});
|