sync: auto-sync from GURU-5070 at 2026-07-01 20:07:01

Author: Mike Swanson
Machine: GURU-5070
Timestamp: 2026-07-01 20:07:01
This commit is contained in:
2026-07-01 20:07:42 -07:00
parent 2937b00ebf
commit b07613c127
3 changed files with 165 additions and 1 deletions

View File

@@ -0,0 +1,56 @@
# BirthBio — Gmail migration folder cleanup (bburgess + mster)
**Date:** 2026-07-01 (UTC)
**Tenant:** birthbiologic.com (19a568e8-9e88-413b-9341-cbc224b39145)
**Performed by:** Mike Swanson via remediation-tool (Exchange Operator app, Graph
`Mail.ReadWrite`, new `exchange-op-graph` token tier)
**Authorization:** Mike, in-chat YES 2026-07-01
## Problem
The Google Workspace -> M365 mail import left Gmail label paths flattened into
literal folder names: 30 top-level folders named `INBOX/<label path>` (slashes
inside the display name, some also carrying real child subtrees) plus
`[Gmail]/...` and `[Imap]/...` system-folder artifacts.
Swept all 21 licensed mailboxes. Affected: **bburgess** (30 INBOX-flat + 5
Gmail/Imap artifacts), **mster** (1 empty `[Imap]/Drafts`). NOT touched:
ksteen's `AATB/EBAA`, `Fax/Scan`, `PTO/Payroll Info`, `Shipping/Couriers` and
ameneely's `Amnion/Chorion Video` — slashes are part of the real label names.
## Actions (39 total, 0 failed)
bburgess:
- Created parents: `Consultants & Vendors`, `Consultants & Vendors > Medline`,
`Consultants & Vendors > SBDC at JCCC`.
- Moved + renamed all 30 `INBOX/...` folders into the real hierarchy
(folder-level Graph move — mail items and child subtrees rode along; ~700
items total). Single-segment names became clean top-level folders (`Archived
Labs`, `SBDC`, `Consultants` with its 44-child subtree, etc.); multi-segment
names nested under `Consultants & Vendors` (9 folders incl. `Kintone` 334
items, `Medline > Help Line/MedPack`, `SBDC at JCCC > Classes`).
- `[Gmail]/Fire Inspectin` (4 items) renamed to top-level `Fire Inspectin`
(rename instead of move+delete — same folder, zero item handling).
- Deleted after live empty-verification: `[Gmail]/Arvest Banking`,
`[Gmail]/Kintone`, `[Gmail]/Trash/Insurance.Birth Biologic`, `[Imap]/Drafts`.
(`[Gmail]/Trash/Insurance`, seen empty in the initial sweep, was already gone
at execution time.)
mster:
- Deleted empty `[Imap]/Drafts`.
## Verification
Post-run enumeration of both mailboxes: zero top-level folders matching
`INBOX/`, `[Gmail]/`, or `[Imap]/`. `Consultants & Vendors` children confirmed:
Attic Storage, Dan Sight, Eurofins, Healthtrust, Kintone, Medline, SBDC at
JCCC, SHRM, ShredIt. No name collisions with the 16 pre-existing clean folders.
## Notes
- Method: Graph v1.0 `mailFolders` POST (create), POST `{id}/move` (re-parent,
subtree + items intact), PATCH (rename), DELETE (empty only). No per-item
mail moves except none needed; nothing deleted that contained mail.
- Outlook/OWA may take a sync cycle to reflect the new tree on Brandy's client.
- `exchange-op-graph` tier added to remediation-tool get-token.sh (Exchange
Operator app, Graph audience) — reusable for future mailbox-folder work.