---
name: project_trebesch_pst_consolidation
description: AT Trebesch PST contact consolidation — staged, waiting for Howard's 6pm-MST (2026-06-01) go signal to run extract+merge
metadata:
  type: project
---

Task: consolidate ALL address-book contacts from AT Trebesch's 24 PST files (~155 GB on DESKTOP-QNP3ON5) into one Outlook-importable CSV at `C:\Users\Owner\Desktop\Contacts\`. Ties to Syncro ticket 31953.

**Why:** customer lost contacts; wants the address books (the **Contacts folders**) condensed — NOT the Auto-Complete cache and NOT the "Suggested Contacts" auto-harvest folder.

**Status (2026-06-01 ~4:45pm MST):** fully staged, NOT yet run. Howard said hold until **6:00 PM MST** (01:00 UTC Jun 2) and he will trigger it manually (chose attended, not auto-scheduled), because the live Outlook churn would disrupt the user during the day.

**Validated:** Outlook COM works in `context=user_session` (probe COM_OK). Live profile shows Contacts=794 (earthlink) / 374 (Outlook1) / 366 (Outlook), `Suggested Contacts` correctly hits [WOULD SKIP], `archive1.pst` (10GB) has no contacts (giants likely contact-empty).

**Scripts (local, ready to dispatch via /rmm):**
- `C:\claudetools\.claude\tmp\treb-extract.ps1` — Phase 1, user_session COM. Auto-discovers+dedupes PSTs (by name+size), smallest-first, resumable (skips done JSON), mounts each unique PST, walks ONLY contact-type folders, excludes Suggested Contacts/Recipient Cache/etc by name, writes per-PST JSON to `Contacts\_work\`. Captures Notes (=Body).
- `C:\claudetools\.claude\tmp\treb-merge.ps1` — Phase 2, runs as SYSTEM. Groups by email-or-name, recency-wins gap-fill super-record, but Notes are CONCATENATED across copies (never dropped), up to 3 emails, adds Source PSTs / Source folders / Copies merged audit columns, Outlook native CSV headers.

**Plan:** safe set first (exclude 48/16/10 GB mail archives), extract -> merge -> deliver CSV, then spot-check one giant for contacts. Agent: ba173f0c-19e8-488d-834c-1b6f6dfd5699. See [[reference_trebesch_qnp3on5]].
