package research_contracts_test import ( "os" "strings" "testing" ) func TestReflectionCandidateLeaseSQLIsDurableAndRecoverable(t *testing.T) { checks := map[string][]string{ "../../database/migrations/032_reflection_candidate_leases.sql": {"claim_expires_at_unix_millis", "reflection_candidates_claimable_idx"}, "../../adapters/postgres/epistemics_repository.go": {"claim_expires_at_unix_millis", "FOR UPDATE SKIP LOCKED", "state='OPEN'", "state='RESOLVED'"}, "../../cmd/reflection-worker/main.go": {"RecoverReflectionClaims", "ClaimReflectionCandidate", "ResolveReflectionCandidate"}, } for path, needles := range checks { data, err := os.ReadFile(path) if err != nil { t.Fatalf("read %s: %v", path, err) } text := string(data) for _, needle := range needles { if !strings.Contains(text, needle) { t.Fatalf("%s missing %q", path, needle) } } } }