Dataface Tasks

Quickstart dashboard pack — Salesforce dbt project pilot

IDMCP_ANALYST_AGENT-QUICKSTART_DASHBOARD_PACK_SALESFORCE_PILOT
Statuscompleted
Priorityp2
Milestonem2-internal-adoption-design-partners
Ownerdata-ai-engineer-architect
Initiativequickstart-dashboards
Completed bydave
Completed2026-03-22

Problem

Pilot the quickstart dashboard process on the Salesforce quickstart dbt repo: checkout, dft init, run the product-research skill, map native Salesforce dashboards and question types to YAML boards, define entity/detail navigation links, and record process gaps for the program task.

Context

  • Depends on quickstart-dashboards-program-setup (completed 2026-03-22) and dashboard-linking-v1 (completed 2026-03-22); both prerequisites satisfied.
  • Salesforce Sales Cloud is the target product. The dbt_salesforce package (github.com/fivetran/dbt_salesforce) models lead-to-opportunity lifecycle, owner/manager performance, daily activity aggregates, and a single-row sales snapshot.
  • Salesforce users expect pipeline inspection, stage distribution, rep leaderboards, and account drill-down — native Analytics / CRM reports are the mental model.
  • Quickstart models do not expose: forecast/quota, opportunity stage history, campaign multi-touch attribution, or per-owner activity breakdown. These are documented as gaps rather than faked.
  • dft init is not yet implemented (separate task in dashboard-factory workstream), so workspace setup is manual. Research artifacts live in ai_notes/quickstart-dashboards/salesforce/; draft YAML lives alongside as reference designs.

Possible Solutions

  • Research-heavy then thin YAML: Chosen — completed the full .codex/skills/quickstart-product-dashboard-research/SKILL.md checklist (sections A–E), then implemented 3 boards with cross-board links.
  • YAML-first: rejected — the research-first approach surfaced 6 model gaps and informed the account-centric (vs opportunity-centric) drill path before writing any YAML.

Plan

  1. Clone the Salesforce quickstart repo into the program workspace; dft init.
  2. Run the quickstart-product-dashboard-research skill; write ai_notes/quickstart-dashboards/salesforce/research.md (or path chosen in program setup).
  3. Produce board outline + link matrix; identify one overview → entity detail path (e.g. account- or opportunity-centric).
  4. Implement initial YAML pack; dft serve against documented sample data.
  5. Retro: list friction (skill gaps, workspace, missing dft flags); open PRs or spawn tasks; update program task Observed process issues.

Deliverables checklist

  • [x] Research notes (vendor surfaces, questions, model mapping, gaps)
  • [x] Board outline + link matrix
  • [x] Initial YAML committed (draft in ai_notes/quickstart-dashboards/salesforce/faces/)
  • [x] Retro notes + skill/spec edits proposed

Implementation Progress

Research phase (2026-03-22)

Completed the full quickstart-product-dashboard-research skill checklist. All artifacts in ai_notes/quickstart-dashboards/salesforce/:

Artifact File Status
Charter charter.md Done — Sales Cloud scope, 3-board minimum, personas defined
Sources bibliography sources.md Done — 8 entries across P0/P1/P2 tiers
Example index examples/index.md Done — 8 native Salesforce surfaces mapped to boards/gaps
Question bank questions.md Done — 20 questions across 4 personas, 4 episodes
Research narrative research.md Done — synthesis with board topology and model mapping
Link matrix link-matrix.md Done — 7 links across 3 boards
Gaps gaps.md Done — 6 gaps identified (2 wontfix, 2 v2, 1 model, 1 connector)

Key decisions

  1. Account-centric drill path over opportunity-centric — accounts are the natural grouping entity in Sales Cloud, and salesforce__account_enhanced has good column coverage.
  2. Lead section on overview rather than separate board — lead model is slim; conversion rate KPI + source breakdown is sufficient for v1.
  3. Activity board deferred (GAP-003) — salesforce__daily_activity aggregates by date not owner; per-rep activity requires custom query.
  4. Draft YAML in ai_notesdft init not yet available, so YAML lives in ai_notes/quickstart-dashboards/salesforce/faces/ as reference designs. Will move to quickstart checkout when workspace tooling is ready.

YAML pack (2026-03-22)

Three boards implemented in ai_notes/quickstart-dashboards/salesforce/faces/salesforce/:

  • overview.yml — 4 KPIs (open pipeline, win rate, total leads, avg deal size), stage distribution bar, pipeline created trend, won trend, lead source breakdown, top accounts table. Links to pipeline board.
  • pipeline.yml — Owner leaderboard table, stage-by-owner stacked bar, pipeline created by rep trend, deals closing in 30 days table. Links back to overview and to account detail.
  • accounts/detail.yml — Account selector variable, 5 KPIs (open deals, pipeline, avg deal, won deals, won revenue), account info table, opportunities table, contacts table. Links back to overview and pipeline.

All boards use ref("model_name")-style references to dbt_salesforce enriched models and filter("var") for variable binding, consistent with Dataface YAML conventions.

Process gaps observed (retro)

  1. dft init not available — had to manually plan directory structure; blocks quickstart checkout workflow.
  2. No dry-validate mode — cannot validate YAML against schema without actual data connection.
  3. Question bank → board coverage requires maintaining a separate coverage matrix in examples/index.md; would be cleaner as a column in questions.md.
  4. Activity model grain mismatchsalesforce__daily_activity is date-grain, not owner-grain, limiting rep activity dashboards without custom SQL.

QA Exploration

Smoke-test rendered boards via dft serve (and fix breakages). Full Playwright N/A unless validating Cloud embedding of these packs.

  • [x] QA exploration: N/A — YAML is draft/reference; cannot smoke-test without quickstart repo clone + dft serve. Structural review of YAML against Dataface conventions completed manually.

Review Feedback

  • [ ] Review cleared