ADR-065: Engagement Field and Professional Sites
Adds one engagement field (personal, contract, employer) to case studies and sites. Case studies show it as a label; the sites gallery groups entries into Professional and Personal, and carries employer content work such as reports and glossaries alongside websites.
Last updated
Status
Accepted (2026-10-20, recommended in session and approved by the owner)
Context
The bio leads with fifteen years in marketing and demand generation, but every entry on the site is personal or Clownware work. Chris has employer and contract work to show: content properties built at Coalesce, Saviynt and Knowde, marketing websites for Hustle and Scandit, and the prototype behind the Marketing Truths platform (the grounded RAG case study, a contract engagement).
Issue #145 proposed a separate published collection and a section on /work/.
On review, the sites collection already carries the fields that proposal
needed (client, url, role, year, screenshot, case-study link), and the owner
asked whether contract work should be separated from side projects and whether
the sites gallery should split into professional and personal.
Two different questions are tangled here. Lanes (ADR-063) answer what kind of work it is. Who the work was for is a second axis, and it applies to both collections.
Decision Drivers
- Show the professional record: employer and client work must have a home
- One vocabulary: the same field and values in both collections
- No empty views: a group or label with nothing published must not render
- Keep ADR-063: lanes stay the only filter on
/work/
Considered Options
Option 1: A new published collection and section (issue #145)
Pros: content work gets its own shape.
Cons: a third card type and listing for fields sites already has.
Option 2: Separate contract case studies into their own section on /work/
Pros: professional work is visibly apart.
Cons: today the section would hold one coming-soon card. A second grouping
on /work/ competes with the lane pills.
Option 3: One engagement field on both collections (chosen)
engagement: "personal" | "contract" | "employer", default "personal".
Pros: one axis, recorded once per entry; the sites gallery can group by it and case-study cards can label it without a new route or card type. Cons: content work (a report, a glossary) sits in a gallery named Sites.
Decision
Option 3.
Implementation Details
src/content.config.tsexportsengagementsand addsengagementto theprojectsandsitesschemas, defaulting to"personal".sitesalso gains an optionalkind("site" | "report" | "glossary" | "publication", default"site").SiteCardshows the kind label for anything other than a site.src/utils/sites.tsgroupSites()splits entries intoprofessional(contract and employer) andpersonal, each sorted bysortOrderthen newest year./sites/renders Professional first, each group under its ownh2, and skips a group with no published entries.WorkCardtakesengagementand labels contract and employer work in the metadata row (“Contract”, “Employer”). Personal work carries no label./work/gets no new section. Revisit when three or more professional case studies are published.- Professional entries ship as drafts until the owner confirms the role wording and permission for each (issue #145).
Consequences
Positive
- Professional work has a home without a new route or card type
- One field answers “who was this for” across the site
Negative
- “Sites” is a loose name for reports and glossaries
- Every professional entry needs a role and permission check before it shows
Neutral
- Existing entries default to
personal; only professional entries set the field
Validation
src/utils/__tests__/sites.test.tscoversgroupSites()src/components/molecules/__tests__/WorkCard.test.tsandSiteCard.test.tscover the engagement and kind labelse2e/sites.spec.tscovers the Personal group and the skipped empty group;e2e/work.spec.tscovers the Contract label on the RAG card- The decision is wrong if professional entries outnumber personal ones and the gallery reads as a client list, or if visitors miss the professional group