You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
test(frost): make the real-cgo interactive test repeatable in-process (Codex P2)
A fresh t.TempDir() per invocation broke in-process repeats (go test -count=2)
against a linked signer: the signer binds its process-global state-file lock to the
first TBTC_SIGNER_STATE_PATH and refuses to switch, so the second invocation failed
in RunDKG. This reconciles with the earlier "fresh state" need:
- process-STABLE state path keyed by PID (stable across -count=N, unique across
separate processes so they don't contend on one lock), and
- a UNIQUE session id per invocation (atomic counter), so repeats add a fresh DKG
session in the shared persisted state rather than conflicting on a fixed one.
The encryption key stays fixed so the persisted state remains decryptable across
in-process repeats.
Verified against a linked libfrost_tbtc: `go test -count=2 -run
TestRealCgoInteractiveSigning_MemberContribution -tags "frost_native frost_tbtc_signer"`
now PASSES both invocations (was failing the second); still skips without the lib;
cgo vet + gofmt clean.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
0 commit comments