// Package hfprecheck implements the HF on_call coverage check used by // dialectic_signup. The OpenClaw plugin relied on a cross-plugin global // (`globalThis.__hfAgentStatus.hasOnCallCovering`) which HarborForge // hadn't shipped yet — so v1 there always degraded to "skipped". // // Plexum has no cross-plugin globals at all. v1 here is unconditionally // "skipped" (same audit-only outcome as OpenClaw v1). When HarborForge // the backend grows a public coverage endpoint we'll wire it here. package hfprecheck import "os" type Result struct { OK bool // false ⇒ block signup Reason string // populated when OK=false Source string // "hf" | "skipped" } // Check is a no-op gate for v1. Returns OK=true, source="skipped" // unconditionally; signups are sent to the backend with // pre_validated=false so the audit trail records the gap honestly. // // DIALECTIC_PLUGIN_BYPASS_HF=1 forces "skipped" even after a future // implementation lands — matches the OpenClaw plugin's escape hatch // for sim environments without provisioned on_call schedules. func Check(agentID, debateStartAt, debateEndAt string) Result { if os.Getenv("DIALECTIC_PLUGIN_BYPASS_HF") == "1" { return Result{OK: true, Source: "skipped"} } // No host-side coverage query yet; degrade to audit-only. return Result{OK: true, Source: "skipped"} }