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 (2026-04-22) + + + +
+

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). + +
+ +
+ +
+ + +
+
+ + + + + + 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}")