diff --git a/clients/cascades-tucson/docs/cloud/caregiver-m365-p2-rollout.md b/clients/cascades-tucson/docs/cloud/caregiver-m365-p2-rollout.md
index 625100f..cd26ab5 100644
--- a/clients/cascades-tucson/docs/cloud/caregiver-m365-p2-rollout.md
+++ b/clients/cascades-tucson/docs/cloud/caregiver-m365-p2-rollout.md
@@ -101,12 +101,13 @@ All UPNs above use the `@cascadestucson.com` suffix (standard).
## Conflict / verify before creating
-- **Christine Nyanzunda** already exists in AD as **Memory Care Admin Assistant** (`Christine.Nyanzunda`, susan.hicks@ department peer — see `docs/servers/active-directory.md` and existing M365 match in `docs/cloud/m365.md`). The caregiver list entry `Christine Nyanzunda-AM shift/MC MED TECH` is likely the same person picking up clinical shifts, not a second identity. **Do not create a second account.** Confirm with Shelby Trozzi / Meredith that her caregiver shifts should use the existing `christine.nyanzunda@` mailbox.
-- **Paty Doran** — spelling could be Patricia / Paty / Patti. Confirm with HR before creating.
-- **Polett Pinazavala** — unusual spelling, verify with HR.
-- **Patricia Sandoval-Beck** — hyphenated last name; SamAccountName may need to be `Patricia.SandovalBeck` if hyphens are disallowed in downstream tools (ALIS, MDM).
-- **Ederick Yuzon** — verify spelling.
-- **Maia Baker** — name on Sheet2 only, no shift/phone data. Confirm employment status with HR.
+- **Christine Nyanzunda** — **Resolved 2026-04-22:** one person, one account. Existing `christine.nyanzunda@` mailbox covers both MC Admin role and her part-time Sun/Mon MedTech shifts. Do not create a second account.
+- **Paty Doran** — **Resolved 2026-04-22:** legal name `Patricia Camarena Doran`. Account will be `patricia.doran@`.
+- **Polett Pinazavala** — **Resolved 2026-04-22:** spelling confirmed; still employed. Setup declared in 2026-04-22 email: MedTech — Memory Care (Tue–Sat), D+P, ALIS=Y, Outside=N.
+- **Patricia Sandoval-Beck** — **Resolved 2026-04-22 (CSV inline note from Meredith):** hyphen is correct. SamAccountName may still need to be `Patricia.SandovalBeck` if ALIS/MDM reject hyphens — test during Wave 3.
+- **Ederick Yuzon** — **Still pending:** spelling asked in 2026-04-22 email.
+- **Maia Baker** — **Resolved 2026-04-22 (CSV inline note):** part-time, still employed.
+- **Reliable Agency shared logins (x2)** — new since 2026-04-22: John added two agency rows to the returned CSV without per-person names. Decision: two shared-login accounts, not per-person. Usernames pending (`reliable1@` / `reliable2@` proposed 2026-04-22).
## Licensing plan (when ready — NOT now)
@@ -167,8 +168,10 @@ Group-policy impact: the `CSC - Folder Redirection (LE)` work done for Life Enri
## Open items / decisions needed from client
-- [ ] Confirm Christine Nyanzunda is one person, not two (existing M365 account keeps working for caregiver shifts)
-- [ ] HR spelling confirmation on Paty Doran, Polett Pinazavala, Patricia Sandoval-Beck, Ederick Yuzon, Maia Baker
+- [x] ~~Confirm Christine Nyanzunda is one person, not two~~ (resolved 2026-04-22 — one person, one account)
+- [x] ~~HR spelling confirmation on Paty Doran, Polett Pinazavala, Patricia Sandoval-Beck, Maia Baker~~ (all resolved 2026-04-22)
+- [ ] **Ederick Yuzon first-name spelling** — asked in 2026-04-22 email
+- [ ] **Reliable Agency shared-login short usernames** — asked in 2026-04-22 email (proposed `reliable1@` / `reliable2@`)
- [ ] Will caregivers use ALIS on the shared phones (need ALIS accounts + Entra SSO) or only email?
- [ ] Does Cascades want to purchase 39 additional Business Premium licenses up-front, or roll out in waves (e.g., MedTechs first, then CCGs, then Caregivers)?
- [ ] Confirm pfSense WAN IP(s) are static enough to rely on in a CA Named Location policy
diff --git a/clients/cascades-tucson/docs/cloud/cascades-staff-followup-2026-04-22.md b/clients/cascades-tucson/docs/cloud/cascades-staff-followup-2026-04-22.md
index c9b96d9..2aa44da 100644
--- a/clients/cascades-tucson/docs/cloud/cascades-staff-followup-2026-04-22.md
+++ b/clients/cascades-tucson/docs/cloud/cascades-staff-followup-2026-04-22.md
@@ -1,29 +1,29 @@
-# Follow-up email — staff list loose ends + access-policy decision
+# Follow-up email — staff list loose ends (SENT)
-**To:** Meredith Kuhn, John Trozzi (cc: Ashley Jensen)
+**To:** Meredith Kuhn, John Trozzi, Ashley Jensen
**From:** Howard Enos — Computer Guru
**Date:** 2026-04-22
-**Subject:** Got the staff list — thank you. A few follow-ups before I set up accounts.
+**Status:** SENT
---
-Meredith / John,
+1. **Britney Thompson** — phone Y/N + outside sign-in Y/N
+2. **Alma R Montt** — title / role. I see she is in Life Enrichment, is she an admin, manager, or something else?
+3. **Polett Pinazavala** — MedTech - Memory Care (Tue-Sat) Desktop+phone, ALIS, NO outside access
+4. **Ederick Yuzon** — first-name spelling
+5. **Reliable Agency caregiver #1** — what sort name would you like them to have? reliable.agency.caregiver1 is long. Can do reliable1 and 2
+6. **Reliable Agency caregiver #2**
-Thank you for sending back the staff list — that's exactly what I needed and it's going straight into the account setup plan. Before I start creating M365 accounts and access policies, I want to confirm a few things so I don't make the wrong call:
-
-1. **Ederick Yuzon** — just confirming the spelling of the first name. "Ederick" vs "Edrick" vs something else?
-
-2. **Alma R Montt** — what's her actual title / role so I can put it on the account?
-
-3. **Polett Pinazavala** — I had her on my caregiver roster (AM, Memory Care, MedTech) from earlier notes, and she's not on the returned list either. Did she leave?
-
-4. **Access policy default:** I am going to set all staff restricted to signing in only from the building by default. It will be easier to set a list of users allowed to log in from outside the network than to try to lock individual people in one at a time.
-
-Thank you —
-
-Howard
+I will send a full list for you all to look over.
---
-*Edited by Howard from the earlier draft. Dropped questions that were resolved live (Kyla's username = `Kyla.QuickTiffany` per her own preference; Britney Thompson still employed; Christine Nyanzunda = one person / one account). Sent: TBD — Howard to update this doc with the actual sent copy.*
-*Related: `reports/cascades-staff-2026-04-22.csv`, `docs/cloud/user-account-rollout-plan.md`.*
+*This is the copy of the email Howard sent to Meredith / John / Ashley on 2026-04-22. Full working list (the referenced follow-up) is `cascades-staff-working-list-2026-04-22.md`.*
+
+## Notes on what's being asked vs. declared
+
+- **#1 Britney** — open question. Howard confirmed she's still employed; Meredith/John need to specify phone-yes-or-no and outside-sign-in-yes-or-no.
+- **#2 Alma** — open question on role (admin / manager / other).
+- **#3 Polett** — NOT a question. Howard is declaring the setup he intends: D+P, ALIS=Y, Outside=N, MedTech Memory Care Tue–Sat. Meredith/John stop him if wrong.
+- **#4 Ederick** — open question on first-name spelling.
+- **#5 + #6 Agency** — open question on preferred short username. Howard's proposal: `reliable1` / `reliable2` rather than `reliable.agency.caregiver1/2`. These are treated as shared agency-login accounts rather than per-person accounts.
diff --git a/clients/cascades-tucson/docs/cloud/cascades-staff-working-list-2026-04-22.md b/clients/cascades-tucson/docs/cloud/cascades-staff-working-list-2026-04-22.md
new file mode 100644
index 0000000..f2ed224
--- /dev/null
+++ b/clients/cascades-tucson/docs/cloud/cascades-staff-working-list-2026-04-22.md
@@ -0,0 +1,225 @@
+# Cascades staff — working account setup list
+
+**Prepared for:** Meredith Kuhn, John Trozzi, Ashley Jensen
+**From:** Howard Enos — Computer Guru
+**Date:** 2026-04-22
+
+---
+
+This is the working list I'm using to build every staff member's Microsoft 365 account, email, and access policy, based on the returned staff list. **Please skim and flag anything wrong, missing, or miscategorized.** Nothing is created yet — confirming this list is the go-ahead to start.
+
+## How to read the columns
+
+- **Email** — the M365 sign-in and email address the user will have. Existing AD accounts keep their current address; new accounts follow the `firstname.lastname@cascadestucson.com` pattern.
+- **Phone (Y/N)** — Will this person use a Cascades-managed phone (shared handset or personal business phone) to sign into email / ALIS / Teams?
+- **Outside sign-in (Y/N)** — **Default for everyone is NO** (building-only sign-in). A "Yes" here means the user is on the allow-list that permits signing in from home, personal cell, or off-site devices (with MFA and a managed device requirement). Call out anyone whose value here looks wrong.
+
+Items marked **[?]** are the few things still needing a confirmation from you — see "Pending confirmations" at the bottom.
+
+---
+
+## Administrative
+
+| Name | Title | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Meredith Kuhn | Executive Director | meredith.kuhn@cascadestucson.com | Y | Y |
+| Ashley Jensen | Assistant Executive Director | ashley.jensen@cascadestucson.com | Y | Y |
+| Lauren Hasselman | Business Office Director | lauren.hasselman@cascadestucson.com | Y | Y |
+| Allison Reibschied | Accounting Assistant | allison.reibschied@cascadestucson.com | Y | N |
+
+## Marketing / Sales
+
+| Name | Title | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Megan Hiatt | Sales Director | megan.hiatt@cascadestucson.com | Y | Y |
+| Crystal Rodriguez | Sales Associate | crystal.rodriguez@cascadestucson.com | Y | Y |
+| Tamra Matthews | Move-In Coordinator *(leaving June 2026)* | tamra.matthews@cascadestucson.com | Y | Y |
+
+## Assisted Living Nursing / Clinical
+
+| Name | Title | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Lois Lane | Health Services Director | lois.lane@cascadestucson.com | Y | Y |
+| Karen Rossini | Health Services Manager | karen.rossini@cascadestucson.com | Y | Y |
+| Veronica Feller | Care, AL Aide | veronica.feller@cascadestucson.com | Y | Y |
+| Britney Thompson | Memory Care Nurse | britney.thompson@cascadestucson.com | Y *(confirm)* | Y *(confirm)* |
+
+## Memory Care
+
+| Name | Title | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Shelby Trozzi | Memory Care Director | shelby.trozzi@cascadestucson.com | Y | Y |
+| Christine Nyanzunda | MC Admin Assistant *(also part-time MedTech Sun/Mon — one account for both)* | christine.nyanzunda@cascadestucson.com | Y | Y |
+
+## Resident Services
+
+| Name | Title | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Christina DuPras | Resident Services Director | christina.dupras@cascadestucson.com | Y | Y |
+| Cathy Kingston | Receptionist *(shared front desk)* | cathy.kingston@cascadestucson.com | N | N |
+| Shontiel Nunn | Receptionist *(shared front desk)* | shontiel.nunn@cascadestucson.com | N | N |
+| Kyla QuickTiffany | Receptionist *(shared front desk)* | kyla.quicktiffany@cascadestucson.com | N | N |
+| Michelle Shestko | MC Receptionist *(shared front desk)* | michelle.shestko@cascadestucson.com | N | N |
+| Sebastian Leon | Courtesy Patrol | sebastian.leon@cascadestucson.com | Y | N |
+| Sheldon Gardfrey | Courtesy Patrol | sheldon.gardfrey@cascadestucson.com | Y | N |
+| Ray Rai | Courtesy Patrol | ray.rai@cascadestucson.com | Y | N |
+
+## Life Enrichment
+
+| Name | Title | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Susan Hicks | Life Enrichment Director | susan.hicks@cascadestucson.com | Y | Y |
+| Sharon Edwards | Life Enrichment Assistant | sharon.edwards@cascadestucson.com | Y | N |
+| Alma R Montt | *(title TBD — see pending)* **[?]** | alma.montt@cascadestucson.com | Y | Y |
+
+## Culinary
+
+| Name | Title | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| JD Martin | Culinary Director | jd.martin@cascadestucson.com | Y | Y |
+| Ramon Castaneda | Kitchen Manager | ramon.castaneda@cascadestucson.com | Y | N |
+| Alyssa Brooks | Dining Manager | alyssa.brooks@cascadestucson.com | Y | Y |
+
+## Maintenance
+
+| Name | Title | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| John Trozzi | Facilities Director | john.trozzi@cascadestucson.com | Y | Y |
+| Matt Brooks | Memory Care Receptionist / Maintenance *(dual-department)* | matt.brooks@cascadestucson.com | Y | N |
+
+## Housekeeping
+
+| Name | Title | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Lupe Sanchez *(aka Guadalupe)* | Housekeeping Director | lupe.sanchez@cascadestucson.com | Y | Y |
+
+## Transportation
+
+| Name | Title | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Richard Adams | Driver | richard.adams@cascadestucson.com | Y *(phone only)* | N |
+| Julian Crim | Driver | julian.crim@cascadestucson.com | Y *(phone only)* | N |
+| Christopher Holick | Driver | christopher.holick@cascadestucson.com | Y *(phone only)* | N |
+
+---
+
+## Caregivers / Shift staff
+
+All caregivers sign into the shared company-issued Android phones using their own account — each person needs their own M365 identity. Building-only sign-in for everyone in this group.
+
+### Tuesday–Saturday
+
+| Name | Role | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Thelma Abainza | Caregiver — Tower | thelma.abainza@cascadestucson.com | Y | N |
+| Niel Castro | MedTech / CCG — Tower | niel.castro@cascadestucson.com | Y | N |
+| Espe Esperance | MedTech — Tower | espe.esperance@cascadestucson.com | Y | N |
+| Barbara Johnson | Caregiver — Tower | barbara.johnson@cascadestucson.com | Y | N |
+| Kasey Flores | Caregiver — Memory Care | kasey.flores@cascadestucson.com | Y | N |
+| Richard Flores | Caregiver — Memory Care | richard.flores@cascadestucson.com | Y | N |
+| Marie Kastner | Caregiver — Memory Care | marie.kastner@cascadestucson.com | Y | N |
+| Bella Mendoza | Caregiver — Memory Care | bella.mendoza@cascadestucson.com | Y | N |
+| Rosa Morales | MedTech — Memory Care | rosa.morales@cascadestucson.com | Y | N |
+| Sandra Padilla | MedTech / CCG — Tower | sandra.padilla@cascadestucson.com | Y | N |
+| Whisper Reed | MedTech — Tower *(overnight)* | whisper.reed@cascadestucson.com | Y | N |
+| Patricia Sandoval-Beck | MedTech — Tower | patricia.sandoval-beck@cascadestucson.com | Y | N |
+| Charity Sika | Caregiver — Memory Care | charity.sika@cascadestucson.com | Y | N |
+| Ederick Yuzon **[?]** *(confirm spelling)* | Caregiver — Tower | ederick.yuzon@cascadestucson.com | Y | N |
+
+### Sunday–Thursday
+
+| Name | Role | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Juan Andrade | Caregiver — Memory Care | juan.andrade@cascadestucson.com | Y | N |
+| Jahmeka Clarke | MedTech — Memory Care | jahmeka.clarke@cascadestucson.com | Y | N |
+| Karina Aziakpo | MedTech / CCG — MC overnight | karina.aziakpo@cascadestucson.com | Y | N |
+| Jinnelle Dittbenner | Caregiver — Tower | jinnelle.dittbenner@cascadestucson.com | Y | N |
+| Agnes McFerren | Caregiver — Tower | agnes.mcferren@cascadestucson.com | Y | N |
+| Samuel Ramirez | Caregiver — Tower | samuel.ramirez@cascadestucson.com | Y | N |
+| Erica Sanchez | Caregiver — Memory Care | erica.sanchez@cascadestucson.com | Y | N |
+| Katrina Wyzykowski | MedTech — Memory Care | katrina.wyzykowski@cascadestucson.com | Y | N |
+| Corey Tate | Caregiver — Tower NOC | corey.tate@cascadestucson.com | Y | N |
+
+### Friday–Monday / weekend
+
+| Name | Role | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Ashli Atwood | MedTech / CCG — MC overnight | ashli.atwood@cascadestucson.com | Y | N |
+| Cole Johnson | MedTech — Tower | cole.johnson@cascadestucson.com | Y | N |
+| Roseline Cooper | Caregiver — MC overnight | roseline.cooper@cascadestucson.com | Y | N |
+| Monique Lopez | Caregiver — Tower *(Fri+Sat doubles)* | monique.lopez@cascadestucson.com | Y | N |
+| Gloria Williford | MedTech — MC *(Fri+Sat doubles)* | gloria.williford@cascadestucson.com | Y | N |
+
+### Thursday–Monday / other
+
+| Name | Role | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Sarah Carroll | Caregiver — Tower | sarah.carroll@cascadestucson.com | Y | N |
+| Luke Hogan | Caregiver — Tower | luke.hogan@cascadestucson.com | Y | N |
+| Gina Williams | Caregiver — Tower | gina.williams@cascadestucson.com | Y | N |
+| Jen Higdon | Caregiver — Tower *(M/W/F AM)* | jen.higdon@cascadestucson.com | Y | N |
+| Mary Kariuki | Caregiver — Tower *(Sat–Mon + Wed PM)* | mary.kariuki@cascadestucson.com | Y | N |
+| CeCe Lassey | Caregiver — Tower *(Sun/Mon doubles + Tue PM)* | cece.lassey@cascadestucson.com | Y | N |
+| Patricia (Paty) Camarena Doran | MedTech / CCG — Tower *(Sun/Mon only)* | patricia.doran@cascadestucson.com | Y | N |
+
+### PRN / part-time
+
+| Name | Role | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Ezekiel Huerta | Caregiver PRN — Tower | ezekiel.huerta@cascadestucson.com | Y | N |
+| Maia Baker | MedTech PRN — Memory Care | maia.baker@cascadestucson.com | Y | N |
+| Polett Pinazavala | MedTech — Memory Care *(Tue–Sat)* | polett.pinazavala@cascadestucson.com | Y | N |
+
+### Agency — shared-account logins **[?]** *(confirm short username)*
+
+These are shared logins used by whoever from Reliable Agency is covering a shift. Not tied to a specific person. Proposing short usernames rather than long `reliable.agency.caregiver1/2` — pending Meredith/John preference.
+
+| Name | Role | Email | Phone | Outside sign-in |
+|---|---|---|---|---|
+| Reliable Agency shared login #1 | Agency caregiver | reliable1@cascadestucson.com *(proposed)* | Y | N |
+| Reliable Agency shared login #2 | Agency caregiver | reliable2@cascadestucson.com *(proposed)* | Y | N |
+
+---
+
+## Summary counts
+
+| Category | Count |
+|---|---|
+| Office staff with outside sign-in (Admin, Sales, Clinical incl. Britney, MC, RS Director, LE, Culinary, Maintenance, Housekeeping) | 19 |
+| Office staff in-building only (Allison, Sharon, Ramon, Matt) | 4 |
+| Shared front-desk receptionists | 4 |
+| Courtesy Patrol | 3 |
+| Drivers (phone-only) | 3 |
+| Caregivers / shift staff (incl. Polett) | 38 |
+| Agency shared logins | 2 |
+| **Total identities to set up** | **73** |
+
+## Pending confirmations (marked [?] above)
+
+Asked in the 2026-04-22 email:
+
+1. **Britney Thompson** — phone Y/N and outside sign-in Y/N? Existing account — just need the two flags.
+2. **Alma R Montt** — title / role? (Admin, manager, something else in Life Enrichment?)
+3. **Ederick Yuzon** — first-name spelling? (Ederick / Edrick / other?)
+4. **Reliable Agency shared logins** — short username preference? Proposing `reliable1` and `reliable2` rather than the long `reliable.agency.caregiver1/2`.
+
+**Declared (stop me if wrong):**
+- Polett Pinazavala set up as MedTech — Memory Care (Tue–Sat), Desktop+phone, ALIS, no outside sign-in.
+
+## Update 2026-04-22 (post-email)
+
+- Polett's row above is the declared setup — if Meredith/John don't push back, this goes live with the rest of the caregiver wave.
+- Agency row emails are placeholders pending the short-username confirmation.
+
+## Policy summary
+
+- **Sign-in is locked to the Cascades building by default for every account above.**
+- **Off-site sign-in is only allowed for the accounts marked "Outside sign-in = Y"**, and those accounts still require MFA and a managed device to sign in from off-site.
+- Phones are provided for anyone marked "Phone = Y". Front-desk receptionists and drivers-without-a-phone are exceptions.
+- Tamra Matthews' access will be removed in June 2026 when she leaves.
+
+Please reply with corrections, or reply "all good" and I'll start building accounts.
+
+Thank you —
+
+Howard
diff --git a/clients/cascades-tucson/docs/cloud/p2-staff-candidates.md b/clients/cascades-tucson/docs/cloud/p2-staff-candidates.md
index 8a0644f..4fffabd 100644
--- a/clients/cascades-tucson/docs/cloud/p2-staff-candidates.md
+++ b/clients/cascades-tucson/docs/cloud/p2-staff-candidates.md
@@ -77,7 +77,7 @@ Allison + Sharon are borderline — ALIS handling alone doesn't mandate P2, but
**Note on Britney Thompson:** Previously predicted as a likely P2 candidate, absent from the 2026-04-22 CSV return. **Confirmed 2026-04-22 (Howard) — still an employee; needs Desktop + possibly Phone access.** Treated as Office-PHI (external-OK) clinical staff for license math until Meredith specifies a different posture. Add to purchase count.
-**Note on Polett Pinazavala:** On the original 2026-04-18 caregiver roster, absent from the 2026-04-22 CSV return. **Confirmed 2026-04-22 (Howard) — still an employee; needs Desktop + possibly Phone.** Treated as Caregiver for license math (included in the caregiver rollout count, not in the office P2 count).
+**Note on Polett Pinazavala:** On the original 2026-04-18 caregiver roster, absent from the 2026-04-22 CSV return. **Confirmed 2026-04-22 (Howard) — still employed.** Full setup declared in the 2026-04-22 email to Meredith/John: MedTech — Memory Care (Tue–Sat), D+P, ALIS=Y, Outside=N. Counts as one Business Premium license in the caregiver total (not office P2).
**Shared-PC receptionists** (D only, no Outside, no ALIS): Cathy Kingston, Shontiel Nunn, Kyla Quick Tiffany, Michelle Shestko — four people on shared front-desk PCs. No individual P2 needed; their story is shared-account vs individual-account, not P2.
@@ -114,7 +114,7 @@ No answer yet. This decision directly changes the license count and the CA polic
- [x] ~~Follow up with John Trozzi on the gathering — he owes us the list~~ (received 2026-04-22 via CSV)
- [ ] Push Meredith for the "restrict everyone or just some" decision — still unanswered as of 2026-04-22
-- [ ] Resolve open CSV questions (see `clients/cascades-tucson/docs/cloud/cascades-staff-followup-2026-04-22.md`): Kyla Quick Tiffany spelling, Ederick Yuzon spelling, Christine Nyanzunda caregiver-overlap, Alma R Montt title, Britney Thompson status
+- [ ] Resolve remaining email questions (see `clients/cascades-tucson/docs/cloud/cascades-staff-followup-2026-04-22.md`): Britney phone+outside flags, Alma R Montt title, Ederick Yuzon spelling, agency shared-login username preference
- [ ] Decide: standalone P2 add-on for the 19 OR move those users to Business Premium OR move whole tenant to Business Premium (default recommendation: Premium tenant-wide)
- [ ] Build CA policy `CSC - Office Staff PHI Access` separate from the caregiver mobile policy
- [ ] Remember to REMOVE Tamra's license + CA exclusion on her departure date (June 2026 — confirmed)
diff --git a/clients/cascades-tucson/docs/cloud/questionnaires/cascades-staff-editor-2026-04-22.html b/clients/cascades-tucson/docs/cloud/questionnaires/cascades-staff-editor-2026-04-22.html
new file mode 100644
index 0000000..009f8d9
--- /dev/null
+++ b/clients/cascades-tucson/docs/cloud/questionnaires/cascades-staff-editor-2026-04-22.html
@@ -0,0 +1,735 @@
+
+
+
Cascades — Staff & Department Editor (revised 2026-04-22)
+ loaded
+
+
+
+
+
+
+
+
+ What changed since last time: the list now matches what you sent back. A few items are still marked in red — please take a look and fill in the missing pieces (spelling, title, confirmations).
+
+
Drag the ⋮⋮ grip on any name to move them to another department.
+
Click any name or title to edit it inline. The notes box under each name is for anything you want to tell us.
+
+ Access type (pick one):
+ D = desktop / PC only,
+ P = phone only,
+ D+P = both a desk and a phone,
+ — = not set.
+
+
Outside = this person is allowed to sign in from outside the building (home, personal cell, travel). Default is OFF for everyone — leave it off to lock to Cascades only, tick it only for people who truly need off-site access.
+
ALIS = ticks if the person logs into ALIS.
+
Use the + Add row at the bottom of any department to add anyone we've missed.
+
When you're done, click Export JSON and email the downloaded file to Howard. (JSON is the only format that imports back in, so it's the only export option.)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/clients/cascades-tucson/docs/cloud/questionnaires/cascades-staff-open-questions-2026-04-22.docx b/clients/cascades-tucson/docs/cloud/questionnaires/cascades-staff-open-questions-2026-04-22.docx
new file mode 100644
index 0000000..ce2f73c
Binary files /dev/null and b/clients/cascades-tucson/docs/cloud/questionnaires/cascades-staff-open-questions-2026-04-22.docx differ
diff --git a/clients/cascades-tucson/docs/cloud/user-account-rollout-plan.md b/clients/cascades-tucson/docs/cloud/user-account-rollout-plan.md
index 2e11590..9702c2f 100644
--- a/clients/cascades-tucson/docs/cloud/user-account-rollout-plan.md
+++ b/clients/cascades-tucson/docs/cloud/user-account-rollout-plan.md
@@ -119,14 +119,14 @@ These must be resolved before creating or converting accounts. See also `cascade
| Discrepancy | Status | Action |
|---|---|---|
| **Britney Thompson** — in AD (enabled, Memory Care Nurse), NOT on returned CSV | **Resolved 2026-04-22 (Howard) — still employed. Desktop + maybe Phone.** | Keep existing AD account. Treat as Office-PHI / clinical (D+P, ALIS=Y). Confirm phone tier and Outside posture with Meredith. |
-| **Polett Pinazavala** — on 2026-04-18 caregiver roster, NOT on returned CSV | **Resolved 2026-04-22 (Howard) — still employed. Desktop + maybe Phone.** | Keep on caregiver roster. Include in Wave 3 caregiver account creation. Confirm phone tier with Meredith. |
+| **Polett Pinazavala** — on 2026-04-18 caregiver roster, NOT on returned CSV | **Resolved 2026-04-22 (Howard) — still employed. Setup declared in email: MedTech — Memory Care (Tue–Sat), D+P, ALIS=Y, Outside=N.** | Keep on caregiver roster. Include in Wave 3 caregiver account creation unless Meredith/John push back on the declared setup. |
| **Christine Nyanzunda** — one person, MC Admin + part-time Sun/Mon MedTech | **Resolved 2026-04-22 (Howard) — one account covers both roles.** | Single account in `OU=Care-MemoryCare`. Default building-only CA policy. When she's covering a MedTech shift she logs into the shared MC phone with her own account. If that sign-in gets blocked by the shared-phone CA, add her to a specific exception group rather than splitting into two accounts. |
| **Alma R Montt** — on CSV (Life Enrichment), NOT in AD, title blank | **Username assigned 2026-04-22 (Howard): `Alma.Montt`.** Title still pending Meredith. | Create AD account at `Alma.Montt` (UPN `alma.montt@cascadestucson.com`). Populate title once Meredith answers. |
| **Kyla Quick Tiffany** — on CSV and in AD "needs account" list | **Username assigned 2026-04-22 (Howard, per Kyla's preference): `Kyla.QuickTiffany`** — last name treated as a single word. | Create AD account at `Kyla.QuickTiffany` (UPN `kyla.quicktiffany@cascadestucson.com`). Persona: Shared-PC Reception. |
| **Ederick Yuzon** — spelling not confirmed | Still pending Meredith. | Block on creation; use `Ederick.Yuzon` tentatively if Meredith confirms. |
| **Matt Brooks** — AD dept = Maintenance, CSV note "works in both departments" | Confirmed (CSV-inline). | Keep in Maintenance OU; add to secondary MC group for access overlap. |
| **37 caregivers** — on CSV, none in AD | Unchanged. | Create all 37 AD accounts (+ M365) in Wave 3. |
-| **2 agency placeholders** — on CSV, not in AD | Unchanged. | Decide with Meredith: real accounts or ALIS-only? |
+| **2 agency placeholders** — on CSV, not in AD | **Decision 2026-04-22 (Howard, asked Meredith for username preference):** shared agency-login accounts, not per-person. Proposed usernames `reliable1@` and `reliable2@` (fallback to `reliable.agency.caregiver1/2@` if Meredith prefers long form). | Create 2 shared AD/M365 accounts once username preference comes back. Shared accounts = caveat on audit attribution — whoever is on shift uses the shared login, so individual accountability in audit logs is weaker for agency staff. Acceptable tradeoff given we don't have agency-staff names. |
| **Generic AD accounts** (`Culinary`, `RECEPTIONIST`, `saleshare`, `directoryshare`) | Unchanged. | Phase 5 cleanup after named-account coverage. |
**Username convention for new accounts:** TitleCase `First.Last` (e.g., `Alma.Montt`, `Kyla.QuickTiffany`). Existing lowercase exceptions in AD (`britney.thompson`, `karen.rossini`, `lauren.hasselman`) are the known legacy cases — leave as-is, don't rename. All net-new accounts follow TitleCase.
@@ -134,15 +134,14 @@ These must be resolved before creating or converting accounts. See also `cascade
## 7. Rollout sequence
### Wave 0 — Pre-flight (blocks waves 1+)
-- Get answers to the 5 follow-up questions (Kyla/Ederick/Christine/Alma/Britney) + the "restrict-everyone or selective" policy decision from Meredith
-- Close Polett Pinazavala discrepancy
-- Final license decision (Business Premium tenant-wide vs. mixed)
+- Get answers to the 4 remaining email questions: Britney flags, Alma title, Ederick spelling, agency short-username preference
+- Final license decision (Business Premium tenant-wide vs. mixed) — recommendation is Premium tenant-wide, needs Meredith sign-off
- Purchase license count locked in
### Wave 1 — New office accounts (low blast radius)
-- Create AD + M365 for Alma R Montt and Kyla Quick Tiffany (the only new office/reception accounts the CSV produces)
+- Create AD + M365 for Alma R Montt (`Alma.Montt`) and Kyla QuickTiffany (`Kyla.QuickTiffany`) — the only new office/reception accounts the CSV produces
- Validate group membership + CA policy assignment on these two before touching anyone else
-- Pilot the `CSC - FrontDesk Building-Only` policy with Kyla
+- Pilot the `CSC - Building Only (Default)` policy with Kyla
### Wave 2 — Existing office accounts, reassignment only
- Move existing users into new OU layout (no identity changes, just OU move + group membership)
@@ -155,7 +154,7 @@ These must be resolved before creating or converting accounts. See also `cascade
### Wave 4 — Cleanup
- Disable/remove `Culinary`, `RECEPTIONIST`, `saleshare`, `directoryshare` generics once their functions are covered by named accounts + shared mailboxes
-- Disable departed accounts (Britney pending answer, Tamra on departure June 2026)
+- Disable Tamra's account on her June 2026 departure (other known departures: none as of 2026-04-22)
- Rotate `krbtgt` password (noted stale in AD doc — overdue)
## 8. Account creation template (per new user)
@@ -182,20 +181,20 @@ Applies to Wave 1 + Wave 3 (and any future hire). Precise script will be built l
## 10. Open decisions blocking the rollout
1. **Business Premium tenant-wide vs. mixed SKUs** — Meredith, tied to the upgrade proposal. Building-only-by-default decision reinforces Premium tenant-wide (see §5).
-2. **Ederick Yuzon spelling** — Meredith/John, in the 2026-04-22 follow-up email.
-3. **Alma R Montt title** — Meredith/John, in the follow-up email.
-4. **Britney phone + Outside posture** — Meredith (employment confirmed by Howard; access tier still TBD).
-5. **Polett employment confirmation** — Meredith (Howard assumes still employed; formal Meredith confirmation requested in follow-up email).
-6. **Agency placeholder accounts — names + ALIS-only vs. real accounts?** — John added two agency rows to the CSV but left Name and Notes blank. Need the actual agency names + whether they need AD/M365 identities or just ALIS web logins.
-7. **Drivers: F3 or Business Standard?** — Meredith (cost vs. Office install need). Note: drivers need allow-list membership to sign in off-site, so whichever tier must include P1 for CA coverage (F3 does not; Business Premium or Business Standard + Entra P1 add-on required).
+2. **Britney Thompson phone Y/N + Outside Y/N** — Meredith/John, asked in the 2026-04-22 email.
+3. **Alma R Montt title** — Meredith/John, asked in the 2026-04-22 email (admin / manager / other in LE?).
+4. **Ederick Yuzon spelling** — Meredith/John, asked in the 2026-04-22 email.
+5. **Agency shared-login short username** — Meredith/John, asked in the 2026-04-22 email (proposed `reliable1` / `reliable2`).
+6. **Drivers: F3 or Business Standard?** — Meredith (cost vs. Office install need). Drivers need allow-list membership to sign in off-site, so whichever tier must include P1 for CA coverage (F3 does not; Business Premium or Business Standard + Entra P1 add-on required).
**Resolved 2026-04-22 (Howard):**
- Restrict-everyone default vs. selective → **building-only by default, allow-list for exceptions** (§5).
- Christine Nyanzunda → one account covers both roles.
-- Kyla Quick Tiffany username → `Kyla.QuickTiffany` (her preference — sign-in confirmed by Howard).
+- Kyla Quick Tiffany username → `Kyla.QuickTiffany` (her preference — confirmed by Howard).
- Alma R Montt username → `Alma.Montt`.
-- Britney Thompson → still employed; stays in AD.
-- Polett Pinazavala → still employed (awaiting Meredith formal confirmation via email).
+- Britney Thompson → still employed; stays in AD. Access-posture flags still open.
+- Polett Pinazavala → still employed. Declared setup (D+P, ALIS=Y, Outside=N, MedTech Memory Care Tue–Sat) announced in 2026-04-22 email; will proceed unless Meredith/John push back.
+- Agency placeholders → shared-login accounts (not per-person). Username short-form proposed but preference still open.
## 11. Related docs
diff --git a/clients/cascades-tucson/scripts/build-open-questions-docx.py b/clients/cascades-tucson/scripts/build-open-questions-docx.py
new file mode 100644
index 0000000..4e21bce
--- /dev/null
+++ b/clients/cascades-tucson/scripts/build-open-questions-docx.py
@@ -0,0 +1,267 @@
+"""Build a minimal Word document listing the six people with open questions.
+
+No external deps — a .docx is a zip of OOXML files, so we construct it directly
+with the stdlib. Output: cascades-staff-open-questions-2026-04-22.docx
+"""
+from __future__ import annotations
+import os
+import zipfile
+from xml.sax.saxutils import escape
+
+OUT = "clients/cascades-tucson/docs/cloud/questionnaires/cascades-staff-open-questions-2026-04-22.docx"
+
+TITLE = "Cascades — Open Items on Staff Access List"
+SUBTITLE = "2026-04-22 · prepared by Howard Enos, Computer Guru · matches the 2026-04-22 email"
+
+INTRO = (
+ "Thank you for sending back the staff list. Almost everything is squared away. "
+ "Below are the few items I still need from you. One of them (Polett) is NOT a "
+ "question — it is the setup I am planning to use; stop me if it's wrong. The rest "
+ "are questions. Short answers are fine. I will send a full list for you all to "
+ "look over separately."
+)
+
+QUESTIONS = [
+ {
+ "name": "Britney Thompson",
+ "dept": "Assisted Living Nursing / Clinical",
+ "context": (
+ "Britney has an active Active Directory account today as Memory Care Nurse. "
+ "She was not on the staff list you returned; Howard has confirmed she is still "
+ "an employee, so the account stays active. I just need the two flags below."
+ ),
+ "questions": [
+ "Phone — Y or N? (Does she need a Cascades-issued phone / business cell, in addition to a desktop?)",
+ "Outside sign-in — Y or N? (Default for everyone is N / building-only. Mark Y only if she legitimately works off-site.)",
+ ],
+ },
+ {
+ "name": "Alma R Montt",
+ "dept": "Life Enrichment",
+ "context": (
+ "Alma was on the returned list but the Title / Role column was blank. "
+ "I see she is in Life Enrichment — is she an admin, manager, or something else?"
+ ),
+ "questions": [
+ "What is Alma's title or role? (It will go on her account and email signature.)",
+ ],
+ },
+ {
+ "name": "Polett Pinazavala — NOT a question, just a heads-up",
+ "dept": "Caregivers (Memory Care, MedTech, Tue–Sat)",
+ "context": (
+ "Polett was on an earlier caregiver roster (MedTech, Memory Care, AM shift) but she was "
+ "not on the list you sent back. Howard has confirmed she is still an employee. Unless you "
+ "tell me otherwise, this is the setup she will get:"
+ ),
+ "questions": [
+ "MedTech — Memory Care (Tue–Sat), Desktop + phone, ALIS access, NO outside sign-in. "
+ "Stop me below if any of that is wrong — otherwise no action needed.",
+ ],
+ },
+ {
+ "name": "Ederick Yuzon",
+ "dept": "Caregivers (Tower, Tue–Sat)",
+ "context": (
+ "Just want to match the spelling on his payroll / ID so his account name is correct."
+ ),
+ "questions": [
+ "Is his first name spelled \"Ederick\", \"Edrick\", or something else?",
+ ],
+ },
+ {
+ "name": "Reliable Agency caregiver #1 (shared login)",
+ "dept": "Caregivers — Agency",
+ "context": (
+ "John added this agency row without a specific person's name, so I am treating it as a "
+ "shared login — whichever Reliable Agency caregiver is on shift signs in with this account. "
+ "That works, but I want to keep the username short."
+ ),
+ "questions": [
+ "What short username would you like for this shared account? "
+ "`reliable.agency.caregiver1` is long — I can use `reliable1` instead. OK, or prefer something else?",
+ ],
+ },
+ {
+ "name": "Reliable Agency caregiver #2 (shared login)",
+ "dept": "Caregivers — Agency",
+ "context": (
+ "Same situation as #1."
+ ),
+ "questions": [
+ "Short username for the second shared agency login? Proposed: `reliable2`.",
+ ],
+ },
+]
+
+CLOSING = (
+ "Once I have these answers back, I will set up every account in one pass and let you know "
+ "when they are ready for the users to sign in. Thank you!"
+)
+
+# -----------------------------------------------------------------------------
+# OOXML building
+# -----------------------------------------------------------------------------
+
+NSW = "http://schemas.openxmlformats.org/wordprocessingml/2006/main"
+
+def para(text: str, *, style: str | None = None, bold: bool = False, size: int | None = None) -> str:
+ """A single with one run. Font size is in half-points."""
+ pPr = ""
+ if style:
+ pPr = f''
+ rPr_parts = []
+ if bold:
+ rPr_parts.append("")
+ if size is not None:
+ rPr_parts.append(f'')
+ rPr = f"{''.join(rPr_parts)}" if rPr_parts else ""
+ return (
+ f'{pPr}'
+ f'{rPr}{escape(text)}'
+ f''
+ )
+
+
+def bullet(text: str) -> str:
+ return (
+ ''
+ ''
+ f'{escape(text)}'
+ )
+
+
+def blank_answer_line() -> str:
+ """A hand-written answer placeholder: 'Answer: ________________'."""
+ return (
+ ''
+ ''
+ 'Answer: '
+ ''
+ '____________________________________________________________'
+ ''
+ )
+
+
+def section_for(q: dict) -> str:
+ parts = []
+ parts.append(para(q["name"], style="Heading2"))
+ parts.append(para(q["dept"], bold=True, size=20))
+ parts.append(para(q["context"]))
+ for ques in q["questions"]:
+ parts.append(bullet(ques))
+ parts.append(blank_answer_line())
+ parts.append(para("")) # spacer
+ return "".join(parts)
+
+
+def build_document_xml() -> str:
+ body_parts = []
+ body_parts.append(para(TITLE, style="Title"))
+ body_parts.append(para(SUBTITLE, bold=False, size=20))
+ body_parts.append(para(""))
+ body_parts.append(para(INTRO))
+ body_parts.append(para(""))
+ for q in QUESTIONS:
+ body_parts.append(section_for(q))
+ body_parts.append(para(""))
+ body_parts.append(para(CLOSING))
+
+ body = "".join(body_parts)
+ return (
+ ''
+ f''
+ f'{body}'
+ ''
+ ''
+ ''
+ ''
+ ''
+ ''
+ )
+
+
+STYLES_XML = '''
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+'''
+
+NUMBERING_XML = '''
+
+
+
+
+
+
+
+
+
+
+
+
+
+'''
+
+CONTENT_TYPES_XML = '''
+
+
+
+
+
+
+
+'''
+
+ROOT_RELS_XML = '''
+
+
+
+'''
+
+DOC_RELS_XML = '''
+
+
+
+
+'''
+
+
+def build_docx(path: str) -> None:
+ os.makedirs(os.path.dirname(path), exist_ok=True)
+ with zipfile.ZipFile(path, "w", zipfile.ZIP_DEFLATED) as z:
+ z.writestr("[Content_Types].xml", CONTENT_TYPES_XML)
+ z.writestr("_rels/.rels", ROOT_RELS_XML)
+ z.writestr("word/_rels/document.xml.rels", DOC_RELS_XML)
+ z.writestr("word/document.xml", build_document_xml())
+ z.writestr("word/styles.xml", STYLES_XML)
+ z.writestr("word/numbering.xml", NUMBERING_XML)
+
+
+if __name__ == "__main__":
+ build_docx(OUT)
+ print(f"Wrote {OUT}")