parity(client): unrecognized sb_ API key subtypes are silently accepted, no warning [from supabase-js]
Los mantenedores suelen responder en 1 día
@Tr00d ya está trabajando en esto.
Desde el 17/7/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
SDK Parity: C# implementation needed
A change was made in supabase-js that needs to be implemented in this repository for SDK parity.
Reference Implementation (supabase-js)
What Changed
New API key formats are sb_publishable_… / sb_secret_…. Any other sb_-prefixed key is an unrecognized future subtype. supabase-js now warns once per subtype and continues, rather than throwing or silently ignoring it, so future key rollouts are visible to developers without hard-crashing existing clients.
Code Reference
const isNewApiKey = (key: string): boolean =>
key.startsWith('sb_publishable_') || key.startsWith('sb_secret_')
export const checkApiKeyFormat = (key: string): void => {
if (!key.startsWith('sb_') || isNewApiKey(key) || key.startsWith('sb_temp_')) return
const subtype = key.match(/^sb_[a-zA-Z0-9]+_/)?.[0] ?? 'unknown'
if (warnedKeySubtypes.has(subtype)) return
warnedKeySubtypes.add(subtype)
console.warn('@supabase/supabase-js: Unrecognized Supabase API key format...')
}
Confirmed in supabase-csharp: no sb_publishable_/sb_secret_ key-subtype validation exists anywhere in the client; the key is passed through as an opaque string with no classification or warning logic at all — an unrecognized future sb_ subtype would pass through silently with no signal to the developer.
Implementation Guidance
Expected API Surface
At client construction, classify the key and log a one-time-per-subtype warning for an unrecognized sb_-prefixed subtype. Never throw. Never log the raw key value.
Acceptance Criteria
- Feature implemented matching supabase-js behavior
- Public API follows C# naming conventions
- Unit tests cover happy path and edge cases
- No breaking changes to existing API
Context
- supabase-js version: v3.0.0-next.29 / 2.110.6
- Parity tracking: This issue was auto-generated by SDK parity analysis
- Related parity issues: supabase-flutter (SDK-1319), supabase-py (SDK-1324), supabase-swift (SDK-1328), supabase-kt (#1356)
Generated with Claude Code /sync-sdk-parity
- Lenguaje dominante
- C#
- Estrellas
- 700
- Forks
- 105
- Merge medio
- 1 d 21 h
- PR fusionados (30 d)
- 41
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de supabase/supabase-csharp
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
supabase/supabase-csharp#450 ·
Los mantenedores suelen responder en 1 día
-
bug(gotrue): FailureReason matches english messages instead of error_codePosiblemente ocupada @Tr00d la tomó hace 27 días. Abierto
supabase/supabase-csharp#409 · 1 comentario · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
OAuth State Error for social providers since Supabase.Gotrue v6.1.0Quizá libre de nuevo @Tr00d la tomó hace 38 días y no hay ningún pull request abierto. Abiertobug
supabase/supabase-csharp#377 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Postgres Changes filters are validated as anon because SetAuth is applied after channel joinQuizá libre de nuevo @Tr00d la tomó hace 51 días y no hay ningún pull request abierto. Abiertoarea: postgrest bug
supabase/supabase-csharp#345 · 1 comentario · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
parity(functions): never send new-format API key as Authorization Bearer [from supabase-js]Quizá libre de nuevo @Tr00d la tomó hace 76 días y no hay ningún pull request abierto. Abiertobug parity
supabase/supabase-csharp#279 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de supabase/supabase-csharp
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
ClickHouse/clickhouse-cs#639 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
ifpebj-ti/controle-acesso-veiculos#377 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
Money ExploitsAbiertoS: Untriaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
project-wayfarer/wayfarer-14#1628 ·
Los mantenedores suelen responder en 3 días
-
:watch: Not Triaged dotnet-target-version
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día