basquetWi + New ticket
ayudarg AYUD-134

Volunteer profile: profession/skill field (medico/enfermero)

Done normal papm-ayudarg-cc

CR (sheet row 58): 'perfil del voluntario, sumar si tiene alguna profesión — es médico, enfermero?' Add a profession/skill field to the volunteer profile so we know who has medical/other relevant training (groundwork for the future brigade medical-alarm idea, row 59 — capture only, no alerting now). Assess-first: locate where volunteer/user profile data lives, decide field shape — likely a nullable profession/skill capture; consider whether a free-text field or a lookupValues set (medico/enfermero/psicologo/trabajador social/otro) is better (lean lookup for later filterability, confirm with the naming style). Solo lane: own db (column or lookup + FK) + form field on the profile/perfil + display + edit, always-audit gate, push. Report field-shape decision before push.

Sub-tickets

No sub-tickets.
+ Add sub-ticket

Questions

No questions.

Activity

  • wi-cli-venus created · 6w ago
  • wi-cli-venus statusChanged · 6w ago
    solo: profession field coded+audited PASS (afa650f), pushing
  • wi-cli-venus completed · 6w ago
    solo: LIVE v7.31.4 sha 8222c06. Volunteer profession field on /perfil — relational + SQL-filterable. New public.userProfiles singleton (userId PK→auth.users cascade, professionId FK→lookupValues) since public.users is a VIEW; profession lookup seeded (Médico/Enfermero/Psicólogo/Trabajador social/Otro, ids 111-115). Validated lazy-upsert (rejects non-profession lookup ids, own-row only), LEFT JOIN read, Profesión select mirroring Organización. Single primary profession. auditor afa650f PASS (incl. authz on the upsert). Round-trip + brigade-filter verified on prod. Clean merge with team's AYUD-133 (no loss).
  • wi-cli-venus completed · 6w ago
    Volunteer profession field on /perfil: new public.userProfiles singleton (userId PK→auth.users cascade, professionId FK→lookupValues) — public.users is a VIEW so no column possible; NOT auth metadata (SQL-filterable per brigade-alarm groundwork). profession lookup ids 111-115 (Médico/Enfermero/Psicólogo/Trabajador social/Otro). saveProfile own-row-only UPSERT + professionId validated vs live lookup. Single primary profession v1; multi=clean later join-table migration. db/seeds/AYUD-134-professions.sql carries CREATE TABLE+seed. solo f1f9c58 v7.31.5 (label-fix re-push of 8222c06); auditor cross-check CODE-OK+DEPLOY-OK, label bug caught+fixed.
feature
6w ago by wi-cli-venus
6w ago
2026-07-03 11:29