CoderMCPServer delete and RBAC test follow-ups
Los mantenedores suelen responder en 1 día
@ThomasK33 ya está trabajando en esto.
Desde el 14/10/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Follow-ups from the final assessments of #368 (CoderMCPServer delete path), #376 (test S9) and #377 (test S11). None blocks the activation. Line numbers refer to main after #368.
Delete path
- A marker-only object waits forever when its pinned Coder organization is deleted while the control plane lives. With only a create marker (no
status.configID), the delete reads the organization's MCP server configs (findMCPServerSlug,internal/controller/codermcpserver_controller.go:492). Any list error, including Coder's own 404 for the deleted organization, givesCoderUnavailable, so the finalizer stays. Fix: treat Coder's own 404 on that list (isCoderResourceNotFound) as absence. A proxy 404 must still wait. - Missing tests:
- No operator access on delete: the wait branch at
internal/controller/codermcpserver_delete.go:61. - A marker-only delete when the operator is not a site owner:
internal/controller/codermcpserver_delete.go:107. - A marker-only delete when the config list fails.
- No operator access on delete: the wait branch at
- A manual finalizer removal leaves the object's
sentCredentialsentry in memory until the operator restarts. The entry holds only hashes, not values. The release path removes it, but a hand-removed finalizer skips that path.
RBAC test S9 (#376)
- S9 reads only
config/rbac/role.yaml. It must scan everyconfig/rbac/*.yamlfor rules that reach core Secrets, and also pinconfig/rbac/clusterrolebinding.yaml, so a new Role or binding cannot widen Secret access without a golden-copy change.
Admission test S11 (#377)
- The comment of
TestCoderMCPServerStatusPolicysays the policy "denies the status writes of every other test". It denies only status writes ofCoderMCPServerobjects. Correct the comment.
Refs #155
Generated with xum • Model: anthropic:claude-opus-5-5 • Thinking: high • Cost: $220.71
- Lenguaje dominante
- Go
- Estrellas
- 5
- Forks
- 3
- Merge medio
- 3 h
- PR fusionados (30 d)
- 192
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 coder/coder-k8s
-
CoderWorkspacePoolMember checkCreate: trust only Coder's own 404 on the name lookup (before PR 12)Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
TestReconcile_LicenseRotationUploadsNewSecretValue fails at -count=3 (reuses a control plane name)Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
CoderMCPServer Kind E2E follow-upsPosiblemente ocupada @ThomasK33 la tomó hace 4 días. Abierto
coder/coder-k8s#390 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Ownership proof for Coder IDs recorded in controller status (D11 B)Posiblemente ocupada @ThomasK33 la tomó hace 5 días. Abierto
coder/coder-k8s#372 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Namespace deletion leaves AI Gateway keys and AI providers in CoderPosiblemente ocupada @ThomasK33 la tomó hace 5 días. Abierto
coder/coder-k8s#353 · 4 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de coder/coder-k8s
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
dataiku/kiji-proxy#635 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
hyperledger-firefly/signer#126 ·
-
agent-review-finding chore
Dificultad 2/5 1-3 horas Aptitud para principiantes 73/100
jordansmall/spindrift#5748 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
-
Resource links written as host:port without a scheme are brokenPosiblemente ocupada @RaphaelFakhri la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día