Segment Feedback Automation Plan
Development plan for automating the sync of Primer segment feedback from practice.baseworks.com into the Obsidian knowledge base vault.
Current State
Section titled “Current State”Segment feedback is submitted by Primer participants via a Formidable Forms form (“Intro Segment Feedback”) on practice.baseworks.com. This data is currently imported manually:
- Export CSV from Formidable Forms admin
- Run a Python script to identify new entries since the last import cutoff date
- Manually create
.mdfiles in02-areas/method-admin/audience/segment-feedback/ - Manually update
index.md
Full instructions: CSV Import Instructions — this document is also the field spec for the automated system.
Current data: 83 feedback entries covering Winter 2026 cohort participants, segments S02–S10. The Spring 2026 cohort data is not yet in the vault.
Problem
Section titled “Problem”- Data goes stale between manual imports
- The session summary skill (see Session Summary Guidelines) will use segment feedback as an input source — this only works reliably if the data is current
- Manual process doesn’t scale as cohort size grows
Target State
Section titled “Target State”Automated sync running on the VPS, exactly parallel to the Questionnaire Sync:
- New feedback entries appear in the vault within a few hours of submission
index.mdupdated automatically- No manual CSV exports or Python scripts needed
Deliverables
Section titled “Deliverables”1. Identify the Formidable form ID
Section titled “1. Identify the Formidable form ID”On practice.baseworks.com WP admin → Formidable → Forms, find the form named “Intro Segment Feedback” and note its ID. This is needed for the WP-CLI plugin.
2. Build bw-segment-feedback-export-cli.php on practice.baseworks.com
Section titled “2. Build bw-segment-feedback-export-cli.php on practice.baseworks.com”A mu-plugin that exposes a WP-CLI command, directly parallel to bw-questionnaire-export-cli.php on baseworks.com.
Reference: sites/baseworks.com/mu-plugins/bw-questionnaire-export-cli.php in the changelog repo — same architecture, different form and field mapping.
WP-CLI command to implement:
wp bw-export segment-feedback # normal runwp bw-export segment-feedback --dry-runwp bw-export segment-feedback --forcewp bw-export segment-feedback --entry-user=<id>Field mapping (from _csv-import-instructions.md):
| CSV column | Frontmatter field / Section |
|---|---|
Name | respondent: + heading |
Segment | segment: + segment-number: (mapped via slug table below) |
Timestamp | date: (date part only, America/Toronto) |
What was the most interesting... | ## Most interesting |
What did you find unusual... | ## Unusual or difficult to understand |
Anything interesting you've noticed... | ## Movement habits / changes noticed |
What do you feel could have been better... | ## What could have been better |
Any additional Comments? | ## Additional comments |
Segment number → slug mapping:
| Segment name (CSV) | segment-number | slug |
|---|---|---|
| Forms | 02 | forms |
| Focus | 03 | focus |
| Intensity Modification | 04 | intensity-modification |
| Movement Transitions | 05 | movement-transitions |
| Ignition | 06 | ignition |
| Assimilation | 07 | assimilation |
| Cyclicity | 08 | cyclicity |
| Journaling | 09 | journaling |
| Outcomes | 10 | outcomes |
File naming: s{segment-number}-{slug}-{firstname}-{lastname}.md
Example: s02-forms-france-vachon.md
File format:
---type: segment-feedbacksegment: {Segment name}segment-number: {NN}respondent: {Full Name}course: primerdate: {YYYY-MM-DD}---
# Segment Feedback — {Segment}: {Full Name}
## Most interesting{content}
## Unusual or difficult to understand{content}
## Movement habits / changes noticed{content}
## What could have been better{content}
## Additional comments{content}Omit any section whose content is empty.
Index update: The plugin should update index.md in the segment feedback folder, maintaining the per-segment section structure (same pattern as current manual index).
Deduplication: Skip entries where a file already exists and content is unchanged (same --force flag pattern as questionnaire export).
3. Create segment-feedback-export.sh on the VPS
Section titled “3. Create segment-feedback-export.sh on the VPS”Shell script at /home/patrick/scripts/segment-feedback-export.sh, parallel to questionnaire-export.sh.
# Pattern (adapt from questionnaire-export.sh):# 1. SSH to practice.baseworks.com# 2. Run: wp bw-export segment-feedback --path=/var/www/practice.baseworks.com# 3. Rsync output to /srv/baseworks/knowledge-base/02-areas/method-admin/audience/segment-feedback/# 4. If changes: git add, commit, pushSchedule: Every 4 hours (same as questionnaire), or daily is sufficient given feedback submission frequency.
Log file: /home/patrick/scripts/segment-feedback-export.log
4. Test and verify
Section titled “4. Test and verify”# Dry run firstwp bw-export segment-feedback --dry-run
# Check output matches existing file format# Verify index.md updates correctly# Run cron script manually once to confirm end-to-endPrivacy notes
Section titled “Privacy notes”Feedback files contain participants’ first and last names (in filename, frontmatter, and heading). This is consistent with how event-participant files work. The vault is a private GitHub repo — access is limited to Patrick, Asia, and authorized Claude Code instances.
When Claude reads feedback files for session summary generation, it synthesizes anonymous patterns only — no names are surfaced in participant-facing documents. This is enforced in the session summary guidelines.
Session Summary Integration (Future)
Section titled “Session Summary Integration (Future)”Once the sync is live, the session summary skill will use segment feedback as an input:
- Before drafting, read all
sNN-*.mdfiles for the segments in the completed assignment - Optionally filter to the current study group’s participants by first name
- Synthesize recurring themes across: “Unusual or difficult to understand” and “Movement habits / changes noticed”
- Present patterns to Patrick before drafting — he can flag which are worth addressing in the summary
- In the summary: “Several participants noted…” or “A common observation from the assignment feedback…” — never attributed
Related
Section titled “Related”- Vault Sync Systems — overview of all sync pipelines
- CSV Import Instructions — current manual process and field spec
- Segment Feedback Index
- Session Summary Guidelines