/** * Build-time CLI: печатает контракт, СКОМПИЛИРОВАННЫЙ в оркестратор. * * Нужен, чтобы verify_versions_contract сравнивал versions.env не с текстом * исходников (grep), а с фактическими константами, которые попадут в бинарь. * * bun run tools/print-contract.ts */ import { ADMIN_API_BASE, HY2XS_CONFIG_SCHEMA_VERSION, HY2XS_RELEASE_LINE, HY2XS_TARGET_ARCH, HY2XS_TARGET_DEBIAN_VERSION, HYSTERIA_MACHINE_AUTH_PATH } from "../src/config/profile"; const lines = [ `HY2XS_CONFIG_SCHEMA_VERSION=${HY2XS_CONFIG_SCHEMA_VERSION}`, `HY2XS_RELEASE_LINE=${HY2XS_RELEASE_LINE}`, `HY2XS_TARGET_OS_VERSION=${HY2XS_TARGET_DEBIAN_VERSION}`, `HY2XS_TARGET_ARCH=${HY2XS_TARGET_ARCH}`, // API-контракт: сборка сверяет эти значения с шаблонами и с константами Go. `HY2XS_ADMIN_API_BASE=${ADMIN_API_BASE}`, `HY2XS_HYSTERIA_MACHINE_AUTH_PATH=${HYSTERIA_MACHINE_AUTH_PATH}` ]; process.stdout.write(`${lines.join("\n")}\n`);