Migrate/consolidate existing podcast guest intake into DataOps (not greenfield)

Aperta
#251 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
javascript
Ambito
backend, tooling

Direzione di ricerca

Start with the existing dataops podcast doc templates and the listed podcast SOPs, then trace the guest intake and CalendarHold flow in DataOps. Map each stated gap onto those existing steps, keeping the topic at invite time, the guest form optional, and research/run-sheet work after date confirmation. Done means the intake and remaining steps are consolidated or explicitly deferred, and the Valeriia end-to-end test case is completed.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

design enhancement migration P2 podcast portal

Context

Alexey correction (2026-10-21): Orin wrongly filed this as greenfield backlog. Podcast guest intake already exists in DataOps portal docs — migrate/consolidate that surface, do not invent a new form from scratch.

Valeriia feedback (Telegram): Grace-era flow was many separate emails (pick time → bio/links → topic/doc answers → post-episode share links). She wants one self-serve pack similar in spirit to the sponsor content form. She already saw something for podcasts in Ops — that is the existing guest materials / episode-brief portal docs.

Alexey refinements for the Valeriia test + process (same day):

  1. Run the new intake end-to-end as the test (thank-you for feedback + invite as guest + topic set up front + optional form).
  2. Topic is set in DataOps at invite/propose time (not left blank). Invites often already have a theme — make recording that intended topic in DataOps obvious.
  3. Guest form is optional — guest may reply in ~two sentences instead of filling every field.
  4. Do not run guest research until the date is confirmed; research starts after confirm.
  5. Day/slot still proposed as today; form goes with/after the invite as usual.

What already exists (do not rebuild)

Guest-facing portal docs (dataops podcast doc)

Shareable URL pattern: https://ops.dtcdev.click/sponsor-docs/<doc-id> (+ access code from dataops podcast doc show / email / create … --email).

Template key Link slot Role
podcast (default) Sponsorship document Guest-facing materials — bio, links, topic/prep Q&A
podcast-episode-brief Episode brief Planning brief (replaces Google Doc brief)
podcast-guest-research Guest research Staff-only research (after date confirm)
podcast-run-sheet Host run sheet Staff-only live sheet (after date confirm)

podcast (Materials from the Guest) fields today:

  • guestName, introduction (bio), currentFocus, topicsToCover, topicsToAvoid
  • linkedinUrl, twitterUrl, githubUrl, websiteUrl
  • hookAndPainPoint, keyInsightsAndMilestones, actionableTakeaway
  • sponsorNotes

Field types are text / textarea only — no photo/file upload type in portal docs yet.

Calendar / slotting (separate from the form)
  • dataops calendar slots|day|propose|confirm-hold|release-hold
  • Podcast = 60 min (not workshop 90); evening preferred; midday only if guest asks — see reference.events.calendar.select-event-calendar-slots, sop.media.podcast.select-and-propose-a-date-for-events
  • Guest does not self-pick a synced slot inside the portal doc today; ops still proposes day/slot by email + CalendarHold
Emails / SOPs still used separately (Grace-era chain)
  • First contact + propose date: template.media.podcast.podcast-process-first-contact-email-starting-the-process
  • Share brief / ask bio: template.media.podcast.podcast-adding-johanna-and-sending-the-podcast-link-to-the-speaker + sop.media.podcast.create-podcast-document
  • Add bio into brief: sop.media.podcast.add-a-guest-bio-to-the-podcast-document
  • Post-episode links ask: template.media.podcast.podcast-links-after-the-event-is-over
  • Speaker profile / photo: website _people via dataops speakers / sop.events.planning.create-speaker-profiles-via-airtable-form (not in guest materials form)
  • Workflow map: task-template.tasks.podcast (guest-intake → prep-document phases)

Goal (retargeted)

Migrate and consolidate the existing podcast portal-doc intake + calendar holds + remaining email steps into one guest UX wired to DataOps — not a greenfield form. Preserve: topic-at-invite, optional form, research-only-after-confirm.

Gaps only (build these; reuse the rest)

Feature Status Notes
Bio + links + prep/topic answers in guest-facing portal doc Have podcast template
Episode brief + staff research/run-sheet templates Have research/run-sheet must stay post-confirm
Shareable link + access code + submit/reopen Have
Intended topic recorded in DataOps at invite/propose time Partial / missing Episode/card often created later; title/topic left TBA. Make topic-at-invite a first-class field/step
Guest form treated as optional (short reply OK) Partial / missing SOPs/emails still push “fill the document”; no explicit optional path
Research gated until date confirmed Partial SOP order implies research with prep docs; process must forbid research before confirm
Calendar sync / guest self-serve slot pick in the form Missing ops proposes via CalendarHold + email
Photo upload in intake Missing speakers photo is separate; portal fields text/textarea only
Post-episode links in same intake (or linked later step) Partial separate email template
One-form UX collapsing date + materials + photo + post links Partial / missing materials form exists; date/photo/post-links still separate
Auto meeting link from intake Partial guest invite after confirm-hold; not auto from form submit
Collapse Grace-era multi-email chain Missing SOPs still call separate emails

Related SOPs / refs

  • sop.media.podcast.create-podcast-document
  • template.media.podcast.podcast-adding-johanna-and-sending-the-podcast-link-to-the-speaker
  • template.media.podcast.podcast-process-first-contact-email-starting-the-process
  • sop.media.podcast.select-and-propose-a-date-for-events
  • reference.events.calendar.select-event-calendar-slots
  • sop.events.calendar.creating-tentative-event-on-google-calendar
  • sop.media.podcast.prepare-ai-research-and-host-run-sheet (after confirm only)
  • template.media.podcast.podcast-links-after-the-event-is-over
  • task-template.tasks.podcast
  • Sponsor content form (UX pattern to mirror, not a blank slate)

Non-goals

  • Replacing human guest outreach entirely
  • Greenfield redesign that abandons dataops podcast doc templates
  • Using workshop 90-min slot rules for podcasts
  • Running guest research before date confirm
  • Requiring guests to fill the full form

Test case

Invite Valeriia ([email protected]) as podcast guest (not content-team Telegram handoff) using the new flow end-to-end:

  • Thank her for the intake feedback
  • Invite as guest with topic set up front in DataOps (e.g. “Content management with AI at DataTalks.Club”)
  • Propose day/slot as today (CalendarHold path)
  • Attach optional guest materials form (podcast template); allow a short email reply instead
  • Research/run-sheet only after she confirms the date

Do not close this issue as complete until gaps above are closed or explicitly deferred.

Source

Valeriia → Alexey Telegram, 2026-10-21. Orin filed greenfield; Alexey retargeted to migrate/consolidate + process refinements (audit 2026-10-21).

Lingua principale
JavaScript
Stelle
3
Fork
0
Merge medio
1h 4m
PR unite (30g)
1

Preparare l'ambiente

  • Include un Dockerfile o un file Docker Compose
  • Nessun modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di DataTalksClub/dataops

Tutte le issue di DataTalksClub/dataops

Issue simili

Altre issue su JavaScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.