Penmark · Friday Launch-Readiness Sync

Sync Log, W21.

A running ledger of every Friday sync — what we decided, who owes what by when, and the questions we still can't close. Auto-posted to #penmark-core after each meeting; owners with open items get a nudge two days before we reconvene.

4 decisions logged
7 action items · 5 owners
3 open questions
W21 "Launch Readiness"
Fri · May 22 · 47 min

Four weeks from GA and the room finally agreed on a date. We slipped a week to give support breathing room, killed bulk-export from the v1 scope, and left with seven owned items — three of which are already moving. The Wednesday nudge will go to Wes, Marcus, and Tom; everyone else is either done or waiting on someone who isn't. Read the open questions before Monday's design crit.

● Decision

GA date locked to Tuesday, June 23

Moved one week right of the original Jun 16 target. Support asked for two extra business days to finish the macro library, and marketing prefers a Tuesday over a Monday for press embargo timing. No further slips without an exec review.

ROOM CONSENSUS
calendar →
● Decision

Bulk-export is cut from v1

Deferred to the 2.1 follow-on. It was the last item blocking the migration-path sign-off and only 6 of 41 beta users mentioned it unprompted. Wes will stub the menu item with a Coming soon tooltip so we don't eat the support tickets.

DANI / WES
PEN-512 →
● Decision

Launch price holds at $14 / seat / month

We re-ran the sensitivity model with Ines's May cohort data and $14 still clears the payback threshold at every churn assumption we tested. Revisit after the first 60-day cohort matures — calendar hold already placed for late August.

DANI + FINANCE
model →
● Decision

Beta cohort keeps a 90-day grandfathered rate

Ruth confirmed no contract amendments are needed — the beta ToS already permits a promotional period. Applies to the 41 beta workspaces; ends Sep 21 regardless of seat count changes.

RUTH (LEGAL)
! Open

Finalize the rollback runbook for the migration job

We have a forward path but no tested reverse. Wes owes a one-page runbook with the exact commands, a dry-run against the staging snapshot, and a named on-call buddy for launch night. Due Thu May 28 — hard blocker for the go/no-go.

WES LIANG
due Thu →
! Open

Draft launch-day blog post + three customer quotes

Marcus has the outline but none of the quotes are confirmed. Needs at least one quote from a recognizable logo. Dani will warm-intro the Harlow & Finch PM if Marcus hasn't heard back by Tuesday. Due Fri May 29.

MARCUS BELL
draft →
▲ In Prog

Empty-state illustrations for the Margins panel

Two of five states are done (no-comments, no-permission). Priya is reworking the resolved-thread state after crit feedback — the confetti read as "deleted" to three testers. On track for Wednesday handoff to eng.

PRIYA RAMAN
2 / 5 done
▲ In Prog

Instrument the activation funnel end-to-end

Events are firing in staging and landing in the warehouse with correct workspace attribution. Ines is still validating the first_margin_created dedup logic — currently double-counting on undo/redo.

// firing in staging as of Thu — prod flag flips Mon
track("margins_panel_opened",   { doc_id, source });
track("first_margin_created",   { workspace_id });  // dedup WIP
track("margin_thread_resolved", { thread_len, age_hrs });
INES CARVALHO
PEN-498 →
◆ Blocked

Help-center rewrite for Margins

Tom has the article structure approved but can't capture final screenshots until Priya's empty states land. Blocked on design — not on Tom. Will auto-unblock when PEN-502 merges; no nudge needed but tracked here so the dependency is visible.

TOM HUERTA
⊘ on PEN-502
✕ Done

Pricing-page copy approved by legal & finance

Carried from W20. Ruth signed off Thursday morning with one change — "unlimited" became "no per-document limit." Finance had no notes. Page is staged behind the launch flag.

DANI OKAFOR
closed May 21
✕ Done

Load test at 4× projected day-one traffic

Carried from W19. Ran Tuesday night against a prod-shaped dataset: p95 held at 218 ms, zero 5xx, autoscaler added two nodes and shed them cleanly. Wes archived the Grafana snapshot in the launch folder.

WES LIANG
closed May 19
– Question

Do we gate Margins behind a workspace flag or a per-user flag?

Workspace-level is simpler to bill and support; per-user lets champions trial it without an admin. Dani leans workspace. Needs an owner — someone should write the half-page tradeoff before W22.

– Question

Who owns the EU data-residency FAQ — legal or support?

Two beta customers asked and we improvised an answer in Slack. Ruth and Tom both think the other team owns it. Parking here until one of them claims it; escalates to Dani if still unclaimed at W22.

RUTH ↔ TOM
– Question

Changelog email — all users, or workspace admins only?

Marketing wants reach; support worries about reply volume on launch week. Low stakes but needs a call before Marcus finalizes the send list. Decide async in thread by Wed May 27.

MARCUS / TOM
thread →
W20 "Pricing Lock"
Fri · May 15 · 38 min

Short one — most of the hour went to walking leadership through the pricing model. Two carry-overs into W21.

● Decision

$14/seat recommended to leadership

Presented three tiers ($12 / $14 / $18). Leadership picked the middle on the condition we revisit with real cohort data inside ninety days. Ratified in W21 — see above.

DANI + INES
✕ Done

Competitive pricing teardown

Ines benchmarked eleven adjacent tools on per-seat list price, annual discount, and free-tier ceiling. Doc linked from the pricing model; the tl;dr is we're mid-pack and nobody charges per-document anymore.

INES CARVALHO
closed May 14
– Question

What's the annual-plan discount?

Finance floated 15% and 20%. Punted to async — Dani to circulate a one-pager. Resolved in W21 thread: 16%, two months free on annual.

RESOLVED → W21
W19 standup-only
Fri · May 08 · 22 min

Half the room was at the offsite. No new decisions; two status updates worth logging so the carry-over chain stays intact.

▲ In Prog

Beta feedback synthesis

Dani had tagged 38 of 41 interview transcripts. Top three asks: faster thread resolution, @-mention autocomplete, and — distantly — bulk export. Fed directly into the W21 scope cut.

DANI OKAFOR
✕ Done

Comment-threading race condition closed

Two users resolving the same thread within ~200 ms could orphan replies. Fixed with an optimistic-lock retry; Wes added a regression test that hammers it 500×.

WES LIANG
PEN-477
W18 "Beta Debrief"
Fri · May 01 · 55 min

Beta closed at 41 workspaces and an NPS we're not embarrassed by. The big call this week: Margins is the launch headline, not Templates. Everything downstream — marketing narrative, onboarding flow, even which empty states Priya draws first — re-orients around that. Three items carried forward; one blocked on IT.

● Decision

Margins is the GA headline feature

Templates tested fine but Margins is the thing beta users talked about — 29 of 41 mentioned it unprompted. Templates ships too, just not above the fold. Marketing narrative pivots accordingly.

ROOM CONSENSUS
readout →
! Open

Redesign the first-run onboarding around Margins

Priya to rework the three-step tour so step two creates a margin comment instead of a template. Carried into W19 → W20; superseded by the empty-state work in W21.

PRIYA RAMAN
→ carried
◆ Blocked

SSO certificate renewal

Expires Jun 12 — eleven days before GA. Wes filed the IT ticket Apr 29; still in their queue. Unblocked May 11 — cert rotated, pinned in 1Password.

WES / IT
resolved W20
✕ Done

41 beta interviews completed

Dani and Tom split the calls 24/17. Transcripts in the research drive; coded synthesis followed in W19.

DANI + TOM
closed Apr 30
– Question

Do we sunset legacy inline comments at GA?

Keeping both confuses the UI; killing legacy strands old docs. Resolved W20: keep legacy read-only for six months, banner points to Margins.

RESOLVED → W20