Plan — Archive Program Communications
Separate archival workflow for administrative emails sent through FluentCRM — study group logistics, event onboarding, platform launch announcements, enrollment comms. These are not newsletters but may be worth preserving as historical operational records, reference material for future program cycles, and context for how participants were communicated with.
Status: planned. Not executed yet. Estimated 13 English campaigns + Japanese/Spanish equivalents when they exist.
Why This Is Separate
Section titled “Why This Is Separate”The /archive-newsletter skill and 02-areas/communications/newsletters/ folder are scoped to editorial broadcast content — newsletters sent to the main list with voice/topic consistency. Program communications are a different category:
- Audience is small and specific (8–50 recipients vs 150+ for newsletters)
- Content is logistical — session reminders, waiver links, location details, enrollment deadlines
- Value of archival is operational, not editorial — future cycles of the same program reference these
- Cross-linking targets are different — program comms belong to a specific event, cohort, or enrollment window, not to the broader content graph
Mixing them into the newsletter archive would dilute the newsletter timeline and make “what did we publish editorially” harder to answer.
Scope — English Program Communications
Section titled “Scope — English Program Communications”From the FluentCRM inventory at _fluentcrm-campaign-inventory:
Study Group (6)
Section titled “Study Group (6)”- 427 · 2026-04-08 · Before We Meet This Saturday — Session 2 Assignment · 8 recipients
- 358 · 2026-01-29 · A Few Resources to Explore Before Saturday · 22
- 357 · 2026-01-25 · Session 2 Assignment Reminder – Session 1 Recap – Tuesday Session Approaching · 22
- 356 · 2026-01-23 · Program Logistics: Location, Studios & What to Bring · 23
- 136 · 2025-01-14 · Montreal Study Group Details · 9
Event-Specific (Open Day) (3)
Section titled “Event-Specific (Open Day) (3)”- 240 · 2026-01-09 · Action Required: Complete Your Participation Waiver for Montreal Open Day · 13
- 121 · 2024-12-11 · Baseworks Open Day Recap & Winter Schedule · 47
- 119 · 2024-12-05 · Final Details & Attendance Information - Baseworks Open Day · 33
- Duplicate 118 (6 recipients) to skip — likely a re-send
Enrollment (3)
Section titled “Enrollment (3)”- 235 · 2026-01-08 · Alumni Rate Expires Saturday | Your Options for 2026 · 8
- 193 · 2025-12-23 · Montreal Study Group Returns – January 2026 | Special Alumni Rate · 8
- 123 · 2024-12-24 · 2025 Baseworks Study Groups Now Open for Early Enrollment · 42
Platform / Course Launch (2)
Section titled “Platform / Course Launch (2)”- 137 · 2025-01-19 · Baseworks Introductory Course: Now Live · 10
- 135 · 2025-01-11 · Update: Baseworks Montreal Online Course Launch · 10
Output Location
Section titled “Output Location”02-areas/communications/follow-up-sequences/ — sibling of newsletters/, scaffolded 2026-04-21. Structure and role rules are documented in _follow-up-sequences-index.
The index doc carries the full frontmatter standard, the source-of-truth rule (CRM is authoritative), the role split vs email-templates/ (no content dilution), and a future-flattening note in case the per-archive sub-folder pattern becomes unnecessary nesting.
Structure mirrors newsletters/: one folder per archived send at the top level + a sequence-designs/ folder for orchestration notes. No deep nesting by program-category or cohort — grouping is handled via frontmatter (program-category, cohort, event-cohort) and tags, navigable via cohort-folder hubs and simple SQL queries against vault-index.db.
Workflow (When Executed)
Section titled “Workflow (When Executed)”This reuses the /archive-newsletter machinery with adjusted output paths and frontmatter. Effectively the same phases:
1. Fetch
Section titled “1. Fetch”ssh u4_baseworkscrm@5.180.253.171 "cd /var/www/crm.baseworks.com && wp db query 'SELECT email_subject, email_pre_header, email_body, scheduled_at, utm_source, utm_medium, utm_campaign, utm_term, utm_content FROM 3ZGRM_fc_campaigns WHERE id=<ID>' 2>/dev/null"2. Parse & Extract
Section titled “2. Parse & Extract”Same text extraction as /archive-newsletter:
- Strip
<style>,<script>, head/title, table template markup - Collapse block tags to paragraph breaks
- Collect
<img src>values with alt text - Collect
<a href>with anchor text, classify by destination type
3. Migrate Images to B2
Section titled “3. Migrate Images to B2”Upload under a flat program-communications path (same reasoning as the flat vault structure — grouping via metadata, not path depth):
media.baseworks.com/program-communications/<slug>/Example: media.baseworks.com/program-communications/2026-01-23-program-logistics-study-group-spring/
4. Write the Archive Note
Section titled “4. Write the Archive Note”Frontmatter:
---title: "<Subject>"type: program-communicationprogram-category: study-group | open-day | enrollment | platform-launchcohort: "<Cohort/cycle, e.g., 2026-spring, 2026-01-montreal>"status: archivedcreated: <today>send-date: <YYYY-MM-DD>source: fluentcrm-archivesource-campaign-id: <FluentCRM ID>subject-line: "<Subject>"audience: "<Segment name if known; else recipient count>"related-program: "[<program note, e.g., 2026-spring-study-group-campaign>](/program-note-eg-2026-spring-study-group-campaign/)"related-events: - "[<event note if applicable>](/event-note-if-applicable/)"utm-campaign: <if set>image-migration: - original: <url> cdn: <url>tags: - program-communication - <category> - <cohort> - archived---Body follows the same section-preservation rule as newsletters — exact wording, all body + button links in a table, skip social/footer boilerplate.
5. Correlation
Section titled “5. Correlation”Query vault for:
- Program-specific notes (e.g.,
2026-spring-study-group-campaign,2026-01-montreal-open-day) - Event notes (
02-areas/website/events/) - Participant profiles if named
- Related session summaries (for study group emails)
Present proposed correlations for user approval before writing.
6. Bidirectional Linking
Section titled “6. Bidirectional Linking”Required, same as newsletter archive:
- Add
## Relatedentry in every correlated file - Update the program-communications index
- Update the FluentCRM inventory (move row from ⏳ to ✅)
7. Do NOT Update Newsletter Index
Section titled “7. Do NOT Update Newsletter Index”Program comms do not appear in _newsletter-index.md. They appear in _program-comms-index.md only.
Considerations Before Starting
Section titled “Considerations Before Starting”-
Is this worth the token/time investment? These are administrative emails. If the value is only “completeness,” it may not justify the effort — unless they get referenced when planning future program cycles. Decide case-by-case or at a category level (e.g., “yes to study group, no to enrollment pitches”).
-
Image migration is still real work — each comm may have 2–5 images that need B2 migration. Consider if a lighter “text-only archive” mode is acceptable for these vs full image preservation. Open day event banners may be worth keeping; generic CTA graphics probably not.
-
Study group session reminders may cross-reference session summaries. The
/session-summaryskill already creates these. Archiving the reminder emails can add useful backlinks showing “what participants were told going in” — a good complement to the summaries themselves. -
Build a dedicated
/archive-program-commskill, or extend/archive-newsletterwith a--type=programflag? The workflow is ~90% the same. A flag is cheaper to build and maintain. The main differences are output path, frontmattertype, and skipping the newsletter-index update.
Suggested Next Step (when this plan is executed)
Section titled “Suggested Next Step (when this plan is executed)”- Build the
/archive-program-commskill (or add--type=programflag to/archive-newsletter). - Start with the 2026 spring study group cohort — it’s most recent, has 5 program comms (IDs 356, 357, 358, 427, and 240 if counted as event-onboarding), and the context is fresh.
- Link bidirectionally to the existing campaign note
2026-03-winter-study-group-campaignand the session summary for Session 1. - Work backward chronologically once the 2026 cohort is done.
Related
Section titled “Related”- _fluentcrm-campaign-inventory — source inventory with all 59 campaigns
- _archive-newsletter-guidelines — reference workflow this plan adapts
- _newsletter-index