KamoCRM

Equipos en la creación de miembros — teamIds on create-team-member, verificados antes de que se escriba algo, unidos dentro de la transacción de creación antes de los primeros derechos aplicados, anunciados después del compromiso (KamoCollab CP01 T14A)

FeatureSecurityService
Se descapó
5 de octubre de 2026 a las 15:25 UTC
Autor
Kamo
Compromit
f6e8e8f

¿Qué? (y el /crear y /bulk-crear caminos que comparten MemberCreationService.create) tomar un equipo opcionalIds para una persona o un AI (master R1-36). Absente, null y [] no nombre equipo y no necesita derecho, por lo que una creación sin equipos no se cambia. - Revisado después de los cheques AI y antes de la búsqueda del usuario, cada negativa con el equipo de campo nada escrito: 400 INVALID FIELD, 403 NO REALIZADO sin MANAGE MEMBER SECURITY o un abierto ventana de dios (Creator.maySetTeams, llena de creadorOf), 400 NOT A TEAM MEMBER para un miembro base, 409 TOO MANY TEAMS over 25 (no read), 400 TEAM NOT FOUND for another org's or an unknown team, 400 TOO MANY MEMBERS para un equipo completo (TeamValidator.newMemberTeams). - Escrito por TeamWriter.joinNewMember, MANDATORY sin @RetryOnDbConflict, a través del nuevo equipos. NewMemberTeams, justo después del ahorro del miembro y antes del espejo, el primero aplicado derechos (que incluyen el nivel TEAM) y el alquiler de un AI; flushed, never caught: a member never existe con la mitad de sus equipos. Un 40001 es recortado enteramente por el callador (el existente 503 RETRY). - TeamService.afterCommit le dice al TeamChangeListeners una vez que la creación se compromete, nunca después de un rollback; la bienvenida se queda después del commit (a8966fd). Rulings CP01-T14A-1..3; master CP-D96.

Todos los cambios

Como lo que ves enviaste?

Todo llega a su espacio de trabajo por sí solo. Comience en el plan gratuito y lea esta página de nuevo en un mes.

Arranzar gratis para siempreVer Precios