Yellow Theme

Next start · November 2026

Notes / 24

2026-10-08

The Notes tab is a mirror

Structured prospect fields were filled. The CRM Notes tab still looked empty. Humans were looking at a different surface than the write path.

Thesis: Custom fields are the automation write path. The Notes tab only shows Note records. If operators read Notes, upsert a titled Note that mirrors the fields — without abandoning the fields as source of truth.

What we shipped first

Fit summary and blocker landed on the person as structured fields. Pipeline review opened the Notes tab and saw nothing. The fields UI was a second click away. We had written for machines and forgotten the human mirror.

The working shape

Keep structured fields authoritative for automation. On save, upsert a Note titled for humans (for example “Prospect notes”) whose body restates the fields. Do not make free-text Notes the only write path.

// Structured prospect fields stay the write path; humans read a titled Note.
const prospectFields = {
  fitSummary: "Series B · AWS · wants Guardrails before Q4 audit.",
  blocker: "Security questionnaire stuck on evidence export.",
};

async function upsertHumanNote(personId, fields) {
  // POST https://crm.example.com/notes
  return {
    id: "n_1",
    personId,
    title: "Prospect notes",
    body: [
      `Fit: ${fields.fitSummary}`,
      `Blocker: ${fields.blocker}`,
    ].join("\n"),
  };
}

await upsertHumanNote("p_1", prospectFields);
// Notes tab shows "Prospect notes"; fields remain authoritative for automation.

Checklist

Related: the list omits the nested record. How we deliver: methodology · readiness.

Engineering commentary only — not audit, legal, or certification advice.