mirror of
https://github.com/stablyai/orca.git
synced 2026-11-03 10:37:35 +00:00
Refresh only actual on-screen review cards and the selected visible review panel, with a single metadata owner per execution host. Open reviews refresh every 60 seconds when selected and 120 seconds otherwise. Settled merged reviews stop automatic refresh; pending merged checks continue, hidden rows stop, and work changes or stale re-exposure discover fresh state. Remove the polling setting. Preserve provider/SSH/runtime ownership, mixed-version cache behavior, failure backoff, bounded foreground admission, request coalescing, and mutation invalidation. Cover older persisted caches and unknown HEADs. Validated with 1,628 focused tests, typechecking, lint/code-quality gates, hidden Electron viewport checks, and parallel Codex/Claude Opus 5.5 adversarial reviews. Measurements and policy details are in PR #25788. Fixes #25746 Co-authored-by: ggbdpq <ggbdpq@gmail.com>
20 lines
651 B
TypeScript
20 lines
651 B
TypeScript
import { createHash } from 'node:crypto'
|
|
import type { GitHubRepoExecOptions } from './github-api-repository'
|
|
|
|
export function githubReadExecutionScope(
|
|
options: GitHubRepoExecOptions,
|
|
environment: NodeJS.ProcessEnv = options.env ?? process.env
|
|
): string {
|
|
const { admissionTier: _admissionTier, ...executionOptions } = options
|
|
// gh wrappers and credential selection can depend on cwd and the inherited environment.
|
|
return createHash('sha256')
|
|
.update(
|
|
JSON.stringify([
|
|
executionOptions,
|
|
process.cwd(),
|
|
Object.entries(environment).sort(([a], [b]) => a.localeCompare(b))
|
|
])
|
|
)
|
|
.digest('hex')
|
|
}
|