Files
orca/config/scripts/build-windows-agent-hook.mjs
T
Neil b16a71c7fb ci: reuse Windows hook builds and shorten test setup and shutdown (#29439)
* ci: remove Windows build and persistence test overhead

* ci: collect unit phase diagnostics during PR checks

* test(ci): seed hook reuse fixture from the canonical prebuild

The hook reuse regression first built into a missing private --output, so it
always reached Cargo (74s warm on Windows). Build through the default output
instead, which reuses a warm canonical prebuild, then copy its executable and
fingerprint into the private fixture root.

* fix(lint): clear inherited max-lines and broad object tab parameter after main merge

Combine the duplicate shared/execution-host imports in runtime-host-services
(301 -> 300 lines) and type the overlap test's tab mapper with the
RuntimeMobileSessionClientTab owner type instead of object.

* fix(ci): align inherited runtime and workflow contracts

* test: establish changed runtime probe signatures deterministically

* test: await asynchronous daemon profile cleanup

* test: shut down owned daemons before deleting profiles

* test: clean up oracle daemons during final app close

* test: recognize verified Linux zombie exit during daemon teardown

* fix: preserve folder SSH ownership when project groups conflict
2026-10-16 02:52:22 -07:00

30 lines
1.0 KiB
JavaScript

#!/usr/bin/env node
import { join, resolve } from 'node:path'
import { pathToFileURL } from 'node:url'
import { compileWindowsRustExecutable } from './windows-rust-executable-build.mjs'
function readArg(name) {
const index = process.argv.indexOf(name)
return index !== -1 ? process.argv[index + 1] : undefined
}
if (process.argv[1] && import.meta.url === pathToFileURL(process.argv[1]).href) {
const repoRoot = resolve(import.meta.dirname, '../..')
const iconPath = join(repoRoot, 'resources', 'build', 'icon.ico')
const crateRoot = join(repoRoot, 'native', 'windows-agent-hook')
compileWindowsRustExecutable({
repoRoot,
crateRoot,
binName: 'orca-agent-hook',
label: 'Windows agent hook',
fingerprintInputs: [iconPath, join(repoRoot, 'config/scripts/build-windows-agent-hook.mjs')],
arch: readArg('--arch') ?? process.arch,
outputPath: readArg('--output') ?? join(crateRoot, '.build', 'orca-agent-hook.exe'),
buildEnv: (version) => ({
ORCA_HOOK_BUILD_VERSION: version,
ORCA_HOOK_BUILD_ICON: iconPath
})
})
}