Eden transcript → Linear → Slack feedback loop
Owner: Delivery (Eden)
Status: Active (v1)
SLA target: End-to-end in ⇐ 15 minutes for one meeting; daily pulse is ~2 minutes
Purpose
Run a repeatable loop after client meetings so transcript action items become clean Linear tickets, get a quick review pass, and roll into a same-day Slack update.
Daily ops: When you are only pushing Eden tickets (no new transcript), use skill eden-pulse in pulse mode — same Slack template, no transcript step. Say “eden pulse” in chat to invoke it.
Scope
- One client meeting at a time (full loop), or calendar-day pulse only (pulse mode)
- Transcript-backed ticket creation/update (full loop only)
- Fast review gate before finalizing ticket set (full loop only)
- Daily touched-ticket Slack summary (UTC day window; mechanics live in
eden-pulseskill — not the generic multi-client pulse skill)
Out of scope:
- Campaign strategy decisions
- Non-Eden channels unless explicitly requested
- Full weekly/quarterly reporting
Inputs
- Transcript path (or direct transcript text) — full loop only
- Linear team:
Eden - Default channel for internal pulse:
#client-eden(C0862TXPWBG) - Alternate:
#client-eden-ai(C0AM6QH23JP) - Optional external channel:
#external-client-eden-ai(C0AMSEMDNN5)
Runbooks
A. Daily pulse only (pulse mode)
- Resolve today’s calendar date (user correction overrides stale IDE metadata).
- Query Linear per
eden-pulsepulsemode (created + updated buckets for day D UTC). - Post canonical message to
#client-eden(Slack MCP or paste-ready).
B. Full loop after a meeting (run mode)
- Minute 0-2: Intake
- Confirm transcript source and date.
- Confirm run mode: create/update tickets + Slack draft.
- Minute 2-7: Transcript → ticket draft
- Extract action items, decisions, blockers, open questions.
- Map to create vs update vs comment.
- Dedupe against existing Eden issues.
- Minute 7-10: Review gate
- Run a quick document-review pass on proposed ticket set:
- scope fit
- owner/date ambiguity
- missing acceptance criteria
- risky assumptions
- Resolve or flag issues before write.
- Run a quick document-review pass on proposed ticket set:
- Minute 10-12: Write + link
- Create/update Linear issues.
- Append
## Tickets Createdsection back to transcript note.
- Minute 12-15: Daily pulse
- Build touched-ticket digest for same day (same rules as A).
- Draft or post to
#client-eden.
Required quality gates
- No fabricated owners/dates/requirements
- Every created ticket uses the canonical template sections (full loop)
- One canonical source of truth for updates: Linear URLs
- Slack message references ticket IDs + links only (no hidden ledger)
Output artifacts per run
- Created/updated ticket list (full loop)
- Transcript note updated with
## Tickets Created(full loop) - Paste-ready Slack message (or posted message if channel write is available and approved)
Canonical Eden internal daily message
Full rules live in .cursor/skills/eden-pulse/SKILL.md. Shape:
Heads up team — I created and normalized the new Eden follow-up tickets from today's transcript pass. Please do a quick scope / owner / AC review and drop edits in-thread.
Pulse date: YYYY-MM-DD (UTC)
Review tags: @Robert @jasmin.multani @Zoran @Greg Stoutenburg @Awaish Kumar
Tickets to review
• EDEN-#### — Concise review label
https://linear.app/brainforge/issue/EDEN-####
Context updates also landed on:
EDEN-####, EDEN-####
If no objections, I'll lock these as final for this cycle.Guidelines:
- Blank lines between intro, pulse date, tags, ticket list, context, closeout.
- Each ticket: bullet +
KEY — label, then indented bare URL on the next line; comma+space lists for context (bulleted chunks if many IDs). - Shorten verbose Linear titles into review labels when needed.
- Include context-update IDs only when updates (not new creates) happened that day.
- Date authority: user-stated “today” beats inconsistent session metadata.
Escalation
- If Linear MCP is unavailable: stop writes (full loop), return draft-only artifacts; for pulse, say so and do not invent IDs.
- If Slack write path is unavailable: produce paste-ready message and mark
manual post required. - If review gate finds severe ambiguity: pause and request user confirmation before writing (full loop).