🤖 CoderWorkspacePool Share mode: optionally stop the workspace when a share is revoked
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Accessibilité débutants
- 15/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- go, kubernetes
- Domaine
- infrastructure
Piste de recherche
The payload names no code files, only the ShareRevoked and ShareRemoved messages, the pool how-to and plan section 6.2 step 11, all referenced from #446. Start by reading those, then the discussion threads it links. Done means a settled design for an opt-in stop after revocation, including a decision on ShareRemoved, crash-safe state, and active-build handling. Implementation should wait for that design.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Problem
When the share policy no longer allows a share, the operator removes the Coder user from the workspace ACL and the claim reports ShareRevoked (#446). Coder also drops shares itself, for example when an admin tightens the organization's sharing setting (ShareRemoved). In both cases, Coder applies the removal only after the workspace restarts (Shared workspaces: "The workspace must be restarted for the user or group removal to take effect"). The operator does not restart or stop the workspace, so the user keeps access until someone does. A claimed workspace can run for a long time: a template with a default TTL of 0 has no autostop, and claims.idleTimeoutSeconds is opt-in.
Found by the Codex reviews of #446 (normal P1 and security P2): https://github.com/coder/coder-k8s/pull/446#discussion_r4433811754 and https://github.com/coder/coder-k8s/pull/446#discussion_r4433811122
Current behavior (#446)
The ShareRevoked and ShareRemoved messages and the pool how-to say that the user keeps access until the workspace restarts or stops. They tell the admin to restart or stop the workspace in Coder, or to delete the claim, to end the access at once. This matches Coder's own unshare, which also leaves the restart to a person.
Option
An opt-in setting on the pool or the control plane: after a revocation, the member stops the workspace with the operator token, confirms the stop build, and only then reports the share as revoked. This needs:
- A crash-safe state between the ACL removal and the confirmed stop, so a lost status write still leads to the stop.
- Handling of an active build (cancel with
expect_status, as the member's delete cleanup does). - A decision for
ShareRemoved, where Coder or a person removed the share. - A Kind check in P9 that the user loses an open session.
It interrupts the claimant's session, so it stays opt-in. It changes plan 6.2 step 11, where a bound member only watches its workspace. Refs #153.
Generated with xum • Model: anthropic:claude-opus-5-5 • Thinking: xhigh
- Langage dominant
- Go
- Étoiles
- 5
- Forks
- 3
- Merge moyen
- 1 h 50 min
- PR mergées (30 j)
- 160
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de coder/coder-k8s
-
CoderWorkspacePool: count bound and used members only when their owner matches the pool's ownerOuverte
Difficulté 3/5 Une demi-journée Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 Une demi-journée Accessibilité débutants 45/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 30/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 8/100
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de coder/coder-k8s
Issues similaires
-
[bug]: scan-all update-schedule does not auto-convert 5-field cron expressions as documentedPeut-être pris @vishnums2k5 l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
goharbor/harbor-cli#1143 · 1 commentaire ·
Les mainteneurs répondent en général sous 8 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
-
--info inline-right:PREFIX leaves the first character of the prefix when the info gets shorterOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 73/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
rossoctl/context-guru#1053 ·
Les mainteneurs répondent en général sous 1 jour
-
[BUG] EphemeralJob matches every pod in the namespace when spec.selector is emptyPeut-être pris @vishnums2k5 l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
openkruise/kruise#2656 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour