Skip to content

Segment Feedback Automation Plan

Created 2026-04-05
Updated 2026-04-05
Status planned
Tags websiteinfrastructureautomationvault-syncsegment-feedbackdevelopment

Development plan for automating the sync of Primer segment feedback from practice.baseworks.com into the Obsidian knowledge base vault.


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:

  1. Export CSV from Formidable Forms admin
  2. Run a Python script to identify new entries since the last import cutoff date
  3. Manually create .md files in 02-areas/method-admin/audience/segment-feedback/
  4. 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.


  • 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

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.md updated automatically
  • No manual CSV exports or Python scripts needed

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:

Terminal window
wp bw-export segment-feedback # normal run
wp bw-export segment-feedback --dry-run
wp bw-export segment-feedback --force
wp bw-export segment-feedback --entry-user=<id>

Field mapping (from _csv-import-instructions.md):

CSV columnFrontmatter field / Section
Namerespondent: + heading
Segmentsegment: + segment-number: (mapped via slug table below)
Timestampdate: (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-numberslug
Forms02forms
Focus03focus
Intensity Modification04intensity-modification
Movement Transitions05movement-transitions
Ignition06ignition
Assimilation07assimilation
Cyclicity08cyclicity
Journaling09journaling
Outcomes10outcomes

File naming: s{segment-number}-{slug}-{firstname}-{lastname}.md Example: s02-forms-france-vachon.md

File format:

---
type: segment-feedback
segment: {Segment name}
segment-number: {NN}
respondent: {Full Name}
course: primer
date: {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.

Terminal window
# 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, push

Schedule: Every 4 hours (same as questionnaire), or daily is sufficient given feedback submission frequency.

Log file: /home/patrick/scripts/segment-feedback-export.log

Terminal window
# Dry run first
wp 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-end

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.


Once the sync is live, the session summary skill will use segment feedback as an input:

  • Before drafting, read all sNN-*.md files 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