Pacer engineering roadmap (v16)

Ask Avon per-page context wired today. Datastar @-action surface added to sitekit. Minrate Impact duplicate-card bug fixed. MC UI polish continues (book weighting donut, finding cards, close button primitives). Jun 21-27 report: yield-score silence fixed, Select Stays + Timbers onboarded, MCP OAuth live. MailerSend domain + Dear Valentine seeding still in flight. GH data refreshed: 2026-07-02

Latest weekly report -- #eng-weekly channel
Jun 15-21, 2026
"Shipped major rebuild of Mission Control operator surface, stopped an AI cost overrun before it grew, unstuck week-old customer data sync, tightened reporting accuracy."
47
commits
54
issues closed
26
in review
21
queued
Open eng tickets CU live
--
loading...
Wk 6/15-21 closed JIG
54
47 commits to main
14d commits GH daily
107
13 active days · 2 zero (wknds)
Open PRs on core GH daily
7
+1 new (#573 captions) · 3 stale docs/scanner (34d) · age 1-34d
Jason commits -- last 14 days (GH daily refresh) 107 commits over 15d (6/18-7/2) · 23 on 6/30 · 7 today (7/2)
Recently shipped GitHub merge history + Jason's 6/21-27 + 6/15-21 reports
Jul 2, 2026 -- new today (GitHub)
✓ Ask Avon per-page context: AvonContext providers + shared /avon open route
✓ Datastar @-action surface added to sitekit dsx (fetch verbs, peek, setAll, toggleAll)
✓ Minrate Impact: fix duplicate cards (collapse queued recs to one per unit+action)
✓ MC Greenshoots all-clear empty state + DRY cleanup pass
✓ MC Book Weighting donut: hover fills wedge arc to pie, accent marker
✓ Standard close button + scoped dismissible; typed el attribute constants
✓ Typed ui seed-signal helpers + MC finding-card and button polish
Jul 1, 2026 -- MC polish + 3 PRs opened (GitHub)
✓ MC: localhost impersonation picker, control sizing parity, RM Coach gating
✓ Unify MC finding cards onto shared shell + per-RM disposition overlay
✓ Fix Minrate Impact $0 recovery + Today-rail drag resize
✓ MC export-menu button (CSV/Excel/Google Sheet) + Today rail resize
✓ Align MC sidebar nav icons with design-system mockup
✓ Replace Daily Briefs jump-strip with standard portfolio picker
✓ Unify MC segmented-control selectors into shared component
✓ Replace sqlc.arg/narg with @name valid-SQL params across model queries
✓ Extract shared HealthScore component + canonical portfolio byline across MC
⚠ PR #573 opened: captions: persist listing description into published manifest
⚠ PR #572 opened: scanner: fix Wheelhouse pagination + ID-space match
⚠ PR #569 opened: captions: deserialize manifest.nickname in loader
Week of Jun 21-27 -- reliability + client ops (Jason's week review)
⚠ Yield-score compute fixed (silent 7-wk failure since May -- pricing recs + Today queue were frozen)
⚠ Portfolio Intel per-client overrides restored (silently dead post Cloud Run move)
✓ RM Coach "scoring unavailable" fixed
✓ Same-store metrics can now exclude LTRs (iTrip mixed cohorts)
✓ Select Stays (Casago) onboarded
✓ Timbers roundtrip hardened (units stop duplicating)
✓ Contracted MRR $0 root-caused (stale Bill.com sync)
✓ Bay Oaks 3rd Floor min-stay fixed (7n to 5n iTrip)
✓ Gemini API key locked down (hard cutoff avoided)
Week of Jun 22-30 (GitHub)
✓ Captions: LCP 7.5s to 1-2s (#560)
✓ Captions: push-guesty subcommand (#562)
✓ Captions: "Newly Captioned" stat (#565)
✓ Partner-invite CLI one-off (#566)
✓ Partner portal: polish + sidebar (#568)
✓ Live Activity SSE feed (Today rail)
✓ Greenshoots full pass (filters/signals, by-portfolio cards, per-client config, one-click post)
✓ MCP OAuth auth server + dynamic client reg
✓ MCP connector role filtering + safe PMS onboarding
✓ Benichay Brothers PMS integration + Key Data roundtrip
✓ Active-units endpoint per portfolio (MCP)
✓ Same-store metrics active-status fix
✓ Portfolio-intel scoring v1.1
✓ prod yield-score job rename + fix
✓ MC Daily Briefs + Brief History pages
Mission Control V1 -- pages wired to live data (6/15-21)
✓ Today dashboard (live data)
✓ Minrate Impact (dual-path tool)
✓ Blocked Night Recovery (workflow)
✓ RM Coach (gauges, drilldowns)
✓ Billing Detail
✓ Unlock My Dates
✓ Client Health
✓ Greenshoots
✓ Client KPI Tracker
✓ Reservation Lookup
✓ Nav restructure to 6 sections
✓ Avon brand + owner landing
✓ Sitekit foundation (tokens, primitives)
✓ Partner-portal glass reskin (#557)
✓ Captions feature detection (#545)
Cost & reliability
✓ Vertex AI cost cap + kill-switch
✓ Photo downscale before vision calls
✓ KeyData sync fix (6 portfolios)
✓ Cloud Run sync lock leak fix
✓ Portfolio-intel off legacy VM to Cloud Run
✓ MC Brief History + Daily Briefs persist
Data integrity
✓ Warehouse occ/RevPAR same-store fix
✓ Same-store TTM Adj RevPAR endpoint
✓ MRR repointed to active invoice lines
✓ 0-bedroom unit crash fix
✓ Coastal Shore offboard revert fix
✓ Intel briefs dedup + dedicated identity
Pacer MCP & contract warehouse
✓ pacer-mcp native server (stdio)
✓ pacer-mcp: PriceLabs config read
✓ Core API: PL notes/tags/overrides
✓ core.client_contracts table built
✓ 65 contracts seeded (8-model taxonomy)
✓ analytics.current_billing_terms view
Decision 13 PRs aging 34d (docs shelf + Hostaway floor source). Merge or close -- blocking CI clarity and making PR count noisy.
Decision 2MC V1 production deploy cadence -- when does it leave experimental?
Decision 3CSV export delivery (amc-h4p) + white-label tokens (0f0-t4i) need product sign-off.
Decision 4MailerSend sender domain (#MS42207) + Host-Me Guesty integration row -- both blocking partner onboarding. Dear Valentine seeding also in flight.
In flight8
Clear before opening new fronts
Open PR stack -- 7 open (GH daily, Jul 2)
#573 captions: persist listing description into published manifest -- 1d (new)
#572 scanner: fix Wheelhouse pagination + ID-space match -- 1d
#569 captions: deserialize manifest.nickname in loader -- 2d
#568 Partner portal: polish table + sidebar hover -- 5d
#555 Hostaway as 4th floor source (awaiting creds) -- 32d
#552 docs: Escapia integration ref -- 34d
#551 docs: integrations shelf + Hospitable & PriceLabs refs -- 34d
MC V1 spec-parity
pixel-perfect on 9 sitekit pages · k05-w99, 7xk-0ie
MC V1 production deploy cadence
currently experimental surface · not on prod cadence
Booking Intelligence Suite
epic fvt-qxe · new reporting
Remote pacer-mcp + OAuth
OAuth server + dynamic client reg shipped 6/24 · HTTP expose next
analytics.billing_actuals + reconciliation view
ticket 868jwt7zy · Phase A done, Phase B needs rate resolvers
Next14
Ship in priority order
Pacer MCP -- distribution + depth
Ship MCPB bundle for Claude Desktop install
high · one-click install path
Ship Zed extension wrapping pacer-mcp
'Add to Cursor' deeplink + directory submission
Add pacer-mcp to Claude Code managed catalog
enterprise rollout
Wrap pacer kd ss-audit as MCP tool
PriceLabs notes/tags/overrides narrow tools
Billing / contract intelligence
Tiered + rev-share rate resolvers
dollarizes the 21 non-flat contracts
BQ mirror of analytics_current_billing_terms
add to export list, auto-mirrors
Seed remaining ~10 contracts
data work, mostly Jon/RM
Addendum-invariant CHECK constraint
hardening · prevents partial-delta drops
Stabilization -- as needed
Comfy Womfy Feather to Hostaway
UpdatedAt cursor sync (non-KeyData PMSes)
KeyData 90d YoY scoring fix
Automated CI gates
unblocks scanner-stack pattern recurring
After flagship15
Ships when MC V1 fully prod
Auto Decks -- data foundation only
Confirm dim tables
unit-night, unit, portfolio
KPI definitions w/ SF + Justin
Snapshot schemas
KPI snapshot SQL
Market comparison SQL
Underperforming units SQL
Constraint classification SQL
Validate snapshots with RMs
Done = validated snapshots. Reusable across Forecasting + Knowledge Engine.
Forecasting Phase 1
Data access + infra
Feature design + market mapping
Backtest
Rollout to 5+ portfolios
Pulsar -- targeted only
Floor prices v2 w/ Ventur
Comp/compset management page
Live preview for rate %
Deferred -- not this window
Auto Decks Phases 2-8
Polymarket signals
Projections Phase 2 NOI
Interaction Framework full
Automated Onboarding build
HTMX 4 analysis
Net-new Pulsar features
Pulsar AI
Mission Control V2
pacer-portal repo work
Knowledge Engine (may revisit)
Flagship / MC V1 AI / composer Pacer MCP Billing / contracts Stabilization Data foundation