El taller invita a su cliente a ver el plano de su obra y le manda los puntos que necesita que defina: color, medida, dónde va el contacto. El cliente contesta sobre el plano, con foto si hace falta, y puede preguntar. Lo interno del taller nunca le llega, y eso lo garantiza el servidor, no la pantalla.
Al 18 de septiembre de 2026Contrato de la API 0.15.0Pantalla: quell101 → Inicio → Invitar cliente
Una sola cuenta para el cliente
El cliente de un taller ya tenía cuenta en la suite: con ella abre peek101 y ve su estado de cuenta. La cara de cliente de quell101 usa esa misma cuenta. No hay dos contraseñas ni dos altas: quell101 le pide a la API que deje entrar al cliente, y la API lo apunta como cliente de la empresa (el mismo renglón que ve dash101) si no estaba ya.
Invitar es un formulario en el inicio de quell101. Lo demás lo hacen la API y quell101 entre sí, y al cliente le llega un correo con los tres pasos para entrar.
Qué ve el cliente, y qué no
La regla que manda: el recorte vive en el servidor. Cuando el cliente pide su obra, el Worker de quell101 le manda sólo lo suyo; la pantalla no tiene nada que esconder porque nada más le llegó.
Cosa
El cliente
El taller
Sus obras
Sólo las obras a las que lo invitaron, con cuántos puntos tiene por definir en cada una.
Elige a qué obras entra al invitarlo, y puede sumarle obras después.
El plano
Todos los ítems, pero de cada uno sólo código, nombre, tipo y posición. Resaltados los que tienen puntos por definir.
Todo, como siempre.
Un ítem
Sus puntos por definir, y un cuadro para preguntar sobre ese ítem. Ni fase, ni pendientes, ni bitácora, ni responsable, ni fotos internas.
Lo de siempre.
Las dudas
Sólo las marcadas «para el cliente» de sus obras: las que el taller le pidió definir y las que él abrió. Ni una interna, aunque adivine el id.
Todas, con una etiqueta que dice cuáles son del cliente.
Cerrar un punto
Su respuesta lo cierra sola cuando lo abrió el taller.
Su respuesta cierra los que abrió el cliente. Y puede reabrir cualquiera.
Avisar
Recibe un correo cuando el taller aprieta «Avisar al cliente por correo». Nada automático por punto.
Un botón, cuando quiera. Cuando el cliente contesta, al taller no le llega correo: lo ve en su fila de dudas.
Sin señal
Sus respuestas y preguntas se guardan en el aparato y suben solas cuando vuelve la señal, como todo en quell101.
Igual.
Cómo está hecho, en corto
El rol «cli» no cabía en la base: la columna de roles tenía una lista cerrada, y ampliarla en SQLite obliga a rehacer la tabla de usuarios, a la que le apunta media base. Soltarla con las llaves foráneas prendidas habría disparado borrados en cascada. Se resolvió sin rehacer nada: la columna vieja se renombra y se agrega una nueva con la lista ampliada, copiando los valores. Probado sobre SQLite real antes de aplicarlo en la base de producción.
Una lista blanca dice qué puede abrir un cliente, y se revisa antes de cualquier ruta: todo lo que no esté ahí contesta 403, aunque una ruta nueva se olvide de preguntar.
La API creció al contrato 0.15.0 con una sola ruta nueva, la de invitar. La usa quell101 hoy y la puede usar cualquier app que tenga base propia.
Lo que todavía no está
La liga desde peek101. Mike quiere que desde el estado de cuenta se brinque a «lo que te falta definir» por cada proyecto. Hoy la liga es general (la portada de quell101, donde el cliente ve sus obras), porque quell101 guarda sus obras en su propia base y peek101 no sabe cuál corresponde a cada proyecto. La liga por proyecto llega con la mudanza de quell101 a la base por empresa. El brinco pide entrar una vez por aparato: son dos direcciones distintas y cada una guarda su propia sesión.
Cómo se probó
API: 128 pruebas en workerd, 3 nuevas (la invitación deja cliente, persona y acceso, y repetirla no duplica; el invitado entra con código y abre /peek; 409 para miembros y para clientes de otra empresa). Humo en staging con la misma vuelta.
quell101: 95 comprobaciones con el Worker completo sobre SQLite real, 48 nuevas: la migración conserva roles, membresías y dudas; la invitación y sus rechazos; lo que el cliente ve y siete rutas que le contestan 403; ni una duda interna le llega; el cierre automático en los dos sentidos; reabrir; avisar.