deploy: apps/web has no schema-drift guard and will boot against a schema the worker refuses
Los mantenedores suelen responder en 4 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 68/100
Línea de trabajo
Empieza leyendo el bloque de comentarios del guard en apps/worker/start.sh y, a continuación, compara su punto de entrada con apps/web/start.sh y con el prisma migrate deploy sin modificaciones. Determina si el guard debe compartirse o si web debe quedar explícitamente exento; se considera terminado cuando ambos servicios tienen un comportamiento coherente y documentado ante la divergencia del esquema, y el mecanismo de liberación OUTPOST_ALLOW_SCHEMA_DRIFT sigue siendo claro.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Follow-up from #180, which added a drift guard to apps/worker/start.sh only.
apps/web/start.sh runs a bare prisma migrate deploy against the same database with no drift check. After #180, a drifted database blocks the worker while web deploys happily and serves traffic against a schema it does not match.
Two specific consequences:
- The failure class #180 fixes — a migration recorded as applied but never effective — is not worker-specific. Web reads the same database.
- #180's repair migration asserts its own postcondition and fails loudly on a mis-shaped
SystemConfig. But if web deploys first, it applies that migration with no guard around it, so the repair window can close before the worker ever looks.
Either extract the guard into a script both services source, or state in apps/worker/start.sh why web is deliberately exempt. Note the guard is intentionally crude (any difference is fatal, with OUTPOST_ALLOW_SCHEMA_DRIFT as the release valve) — see the comment block in apps/worker/start.sh for why a cleverer classifier was removed.
- Lenguaje dominante
- TypeScript
- Estrellas
- 10
- Forks
- 4
- Merge medio
- 4 d 2 h
- PR fusionados (30 d)
- 7
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Sin 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 CopilotKit/outpost
-
area: docs area: security roadmap: now
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
CopilotKit/outpost#277 ·
Los mantenedores suelen responder en 4 días
-
area: infrastructure roadmap roadmap: later
Dificultad 1/5 Menos de una hora Aptitud para principiantes 74/100
CopilotKit/outpost#179 ·
Los mantenedores suelen responder en 4 días
-
area: ai roadmap roadmap: now
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
CopilotKit/outpost#145 ·
Los mantenedores suelen responder en 4 días
-
area: integrations priority: low roadmap roadmap: later
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
CopilotKit/outpost#124 · 3 comentarios ·
Los mantenedores suelen responder en 4 días
-
area: integrations priority: low roadmap roadmap: later
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
CopilotKit/outpost#123 · 2 comentarios ·
Los mantenedores suelen responder en 4 días
Todos los issues de CopilotKit/outpost
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 4 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día