fix(interactions): resolve alias slug trong api.user-interactions
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 76/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
Línea de trabajo
Start with apps/web/app/routes/api.user-interactions.ts around lines 26-28, then read resolveSkillBySlug in apps/web/app/lib/db/skill-aliases.ts. Add a regression test for an old slug pointing to a skill with a favorite or vote, and verify the API returns the expected interaction overlay.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Vấn đề
apps/web/app/routes/api.user-interactions.ts (khoảng dòng 26-28) resolve slug do client gửi lên bằng inArray(skills.slug, slugs), tức chỉ khớp canonical slug. Sau #25, một slug cũ vẫn resolve bình thường trên mọi route khác nhờ bảng skill_aliases, nhưng ở đây thì không: client gửi slug cũ sẽ nhận về overlay rỗng (trạng thái favorite/vote biến mất) mà không có lỗi nào.
Bằng chứng
resolveSkillBySlug(apps/web/app/lib/db/skill-aliases.ts) là đường duy nhất có alias: nó traskills.slugtrước, rồiskill_aliases.slug, rồi lấy row theoskill_id.- Các route khác (detail, rate, review, favorite, install, vote, usage report) đều đã đi qua
resolveSkillBySlug; chỉapi.user-interactions.tscòn tra thẳng theoskills.slug. - Đây là hạn chế đã ghi trong PR #43 phần "Known limitations" và trong ledger
plans/reports/live-verify-260922-0843-issue-25-24.md.
Đề xuất
Cho mỗi slug đầu vào đi qua resolveSkillBySlug (hoặc một truy vấn join skill_aliases), rồi tập hợp canonical id để tra interactions. Thêm test: slug cũ trỏ tới skill có favorite/vote vẫn trả đúng overlay.
Mức độ
Thấp về tác động, nhưng là lỗ hổng nhất quán của hợp đồng alias mà #25 đã thiết lập: "mọi slug cũ vẫn resolve" hiện chưa đúng ở route này.
- Lenguaje dominante
- TypeScript
- Estrellas
- 189
- Forks
- 40
- Merge medio
- 6 h 54 min
- PR fusionados (30 d)
- 24
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
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 nextlevelbuilder/skillx
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
nextlevelbuilder/skillx#49 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
nextlevelbuilder/skillx#28 ·
Los mantenedores suelen responder en 1 día
-
refactor
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
nextlevelbuilder/skillx#27 ·
Los mantenedores suelen responder en 1 día
-
Harden personal kit proposal scanning before enabling the API flagPosiblemente ocupada @mrgoonie la tomó hoy. Abierto
nextlevelbuilder/skillx#86 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 18/100
nextlevelbuilder/skillx#84 ·
Los mantenedores suelen responder en 1 día
Todos los issues de nextlevelbuilder/skillx
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
stellar/stellar-dev-skill#151 ·
Los mantenedores suelen responder en 1 día
-
Trial & Error: guided Blind offer squeezes on phones and sits under the touch toolbar on iPadAbiertoarea:arcade game ready-for-agent
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
fderuiter/deruiter.dev#2281 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
scope: data grid type: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 2 días
-
fix(frontend): correct VITE_IS_DEVELPOMENT typo in shared/app.ts and align dev environment flagsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
vicharanashala/ajrasakha#1439 ·
Los mantenedores suelen responder en 1 día
-
Add: TV5Monde AsieAbiertoapproved check:passed streams:add
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día