Project Folder Convention v2

CLAUDE.md

Project identity plus locked rules and preferences. The first file any agent or team member reads when they land in a project folder. Curated by the Account Manager.

What it is

The header of the project. Defines who the project is, who's on it, what the team has decided about how it runs. Anything durable about the client lives here. Episodic state belongs in campaign.md Status Log or health.md Known Context, with promotion paths back here once the pattern is durable.

Owner

Account Manager. Updates when team changes, when a rule gets locked, when client preferences shift.

Structure

The Standing Rules section is what makes v2 different from v1. In v1, durable rules were scattered across campaign.md notes, README files, the AM's head. In v2 they live here, structured, so any agent or team member can find them in seconds.

Real Elmwood example

Frontmatter and identity:

---
slug: marcon-elmwood
parent: marcon
convention_version: 2026-05-12
---

# Marcon — Elmwood (Upper Residences Re-Launch)

Type: Pre-sale (Now Selling)
Developer: Marcon Developments
Location: Coquitlam, BC — 612 Elmwood St (Burquitlam)
Platforms: Meta + Google (Conversion + Search RSA + Demand Gen)
Phase: Now Selling (V1 launched 2026-05-05; V2 additive 2026-05-12)

Standing Rules excerpt (campaign rules subsection):

### Campaign rules
- Naming prefix `ELM_630_` for all campaigns. Marcon Sales Meta account is
  shared with Hue (`HUE_623_`) — never mix prefixes.
- Ad-name pattern `{Format}_{Phase}_{FreeForm}` at ad level — no project-level
  prefix in ad names. Anti-patterns documented in ../naming-conventions.md.
- Website Conversion only — NO Meta lead forms for this launch cycle
  (Claudia decision 2026-04-29).
- English only.
- CTA button = Learn More across V1 + V2 Meta + V2 Google DG.
- Variant suffix: Meta uses `-V2` (uppercase, hyphen prefix). Google DG
  uses `_v2` (lowercase, underscore prefix, mirrors V1's `_v1`).

Known Issues excerpt:

### Known issues
- elmwood.marcon.ca behind Vercel Security Checkpoint (audited Apr 27) —
  likely blocks Googlebot, may explain Elmwood search invisibility.
- Two unknown Meta pixels firing on elmwood.marcon.ca/register
  (730854324621874 and 2037469969980248) — purpose unknown.
- Designstor watermark on some 1:1 architectural renders — verify license.
- Lead-to-sales attribution is manual — Marcon provides Lasso CRM sales data
  bi-weekly. Self-reported source field in Lasso is unreliable.

The pattern: durable, decided, agent-readable. Anyone landing on this project knows immediately that they can't use lead forms, that they need to filter by ELM_630_, and that two mystery pixels are an open question.

How this file gets updated

The only sanctioned write-path is the /update-context skill (in the clients plugin). It routes natural-language updates to the right file, applies a rubric, and appends every change to a ## Change Log at the bottom. The file is its own audit trail.

Default owner: AM (Account Manager).

Invocation

/update-context marcon --project elmwood
# then describe the change in plain English, e.g.:
# "Move CTA button to Learn More across V1 + V2"

What routes to CLAUDE.md

Rubric — what the skill does with your update

Actor / fragment typeBehavior
AM writesSilent — applies the edit + appends Change Log entry
PM / Digital writesConfirm — shows a diff preview, asks before writing; logged as cross-role
Other / unknown roleAlways warns; still writes if approved
Speculation / sentimentClarify — offers to skip or to add as a Watch: note

Change Log entry format

Every accepted write appends one entry to the ## Change Log section at the bottom of the file (newest on top):

- 2026-05-17 14:32 PT — Alex (AM) — Claudia departed; Jason now primary — fields: Team table, Client Contacts table
- 2026-05-17 11:08 PT — Helena (Digital, cross-role write) — Q3 Meta ad set roster updated — fields: Ad set roster

Cross-role writes include the override in the summary line. Entries are append-only — the skill never deletes log lines, even when correcting a prior write.

View the full real CLAUDE.md from Marcon — Elmwood
Source: Marcon/Elmwood/CLAUDE.md · Snapshot date: 2026-05-13 · Live file may have evolved since.
---
slug: marcon-elmwood
parent: marcon
convention_version: 2026-05-12
---

# Marcon — Elmwood (Upper Residences Re-Launch)

**Type:** Pre-sale (Now Selling)
**Developer:** Marcon Developments
**Location:** Coquitlam, BC — 612 Elmwood St (Burquitlam). Sales Gallery: 567 Clarke Rd Suite 103.
**Platforms:** Meta + Google (Conversion + Search RSA + Demand Gen) — live since May 5, 2026
**Phase:** Now Selling (V1 launched 2026-05-05; V2 additive 2026-05-12)

## Team

| Role | Name |
|------|------|
| Account Manager + Interim Media Specialist | Alex Wan |
| Project Coordinator | Elena Mejia |
| Media Supervisor | Simon Benham |
| Media Specialist | Misael Echeverria |

## Client Contacts

| Name | Email | Role |
|------|-------|------|
| **Cici Ip** | cip@marcon.ca | **Primary Marketing contact (took over from Claudia 2026-05-11)** |
| **Jason Wong** | jwong@marcon.ca | Head of Marketing and Brand (oversees all; co-owner on Elmwood post-handoff) |
| Claudia Linaksita | clinaksita@marcon.ca | Marketing Specialist — original media plan signee + V1/V2 creative direction. Handed off to Cici + Jason. |

Full stakeholder directory + decision-making authority: `../contacts.md`

## Account IDs

Elmwood runs under the existing Marcon Sales accounts (shared with Hue):

| Platform | Account ID | Account Name | Pixel ID |
|----------|-----------|--------------|----------|
| Meta | 31334812 | Marcon - Sales | `1299089964458388` |
| Google | 9376895237 | Marcon Corporate/Sales | — |

Meta account is shared with Hue. Filter Elmwood campaigns by `ELM_630_` prefix.

## Standing Rules & Preferences

### Campaign rules
- **Naming prefix `ELM_630_`** for all campaigns. Marcon Sales Meta account is shared with Hue (`HUE_623_`) — never mix prefixes.
- **Ad-name pattern `{Format}_{Phase}_{FreeForm}`** at ad level — no project-level prefix in ad names. Anti-patterns documented in `../naming-conventions.md`.
- **Website Conversion only — NO Meta lead forms** for this launch cycle (Claudia decision 2026-04-29). Reassess post-launch if Conversion alone undershoots volume.
- **English only.**
- **CTA button = `Learn More`** across V1 + V2 Meta + V2 Google DG. V1 Google DG retains `Sign Up` (not retroactively changed; only V2 DG ad set adopts Learn More). Brand-voice CTA anchor in copy text is `Register` — `Learn More` is the button selection only.
- **Variant suffix:** Meta uses `-V2` (uppercase, hyphen prefix). Google DG uses `_v2` (lowercase, underscore prefix, mirrors V1's `_v1`).

### Brand & creative rules
- **Voice anchor:** `Reference/brand-voice.md` (v2.3, locked 2026-05-05) — authoritative for tagline, vocabulary, capitalization rules, phrasing rules. Do not duplicate voice spec here.
- **Marcon provides all creatives** — no Periphery design hours in this scope.
- **Positioning:** High end but approachable. Burquitlam. End-user focused (90% target).

### Targeting / compliance
- **HSAC** (Housing Special Ad Category, Canada) applies to all Meta ads — no demographic / granular geo targeting, no gender targeting.
- **Geographic floor:** 15-mile radius from Coquitlam (HSAC minimum — cannot go tighter).
- **Age:** 18-65 (HSAC floor).
- **Attribution window:** 7d-click + 1d-view (Meta default for Conversion campaigns; replicated from Hue audit).

### Known issues
- **elmwood.marcon.ca behind Vercel Security Checkpoint** (audited Apr 27) — likely blocks Googlebot, may explain Elmwood search invisibility. Verify resolution during Marcon Corporate SEO project Search Console setup.
- **Two unknown Meta pixels firing** on elmwood.marcon.ca/register: `730854324621874` and `2037469969980248` (alongside Sales pixel `1299089964458388`). Purpose unknown — flagged for Marcon to identify.
- **Designstor watermark on some 1:1 architectural renders** — verify license / request clean exports before using in any net-new Inbox batches.
- **Lead-to-sales attribution is manual** — Marcon provides Lasso CRM sales data bi-weekly to weekly. Self-reported source field in Lasso is unreliable.

### Approval chain
- All creative direction + media plan sign-off: **Claudia Linaksita**
- Brand / final marketing approval: **Jason Wong** (Head of Marketing and Brand)
- Full table → `../contacts.md` § Decision-Making

## Key Links

- Statement of Services: `Reference/Elmwood 2026 - Statement of Services.gsheet`
- Campaign Brief (intake): `Reference/Elmwood - Campaign Brief.docx`
- Campaign Setup doc: `Reference/Elmwood Campaign Setup.md`
- Brand Voice (authoritative): `Reference/brand-voice.md`
- Live Ad Copy Sheet: `Deliverables/Elmwood 2026 Digital Ad Copy.gsheet`
- Live Client Preview (V1): https://marcon-elmwood-ad-preview-may-2026.vercel.app
- Budget Estimator: https://interactive-demo-vert.vercel.app/marcon/elmwood/budget-estimator/ *(pw: `elmwood2026`)*
- Intake Form: `Reference/Elmwood Intake Form - Google Forms.pdf`
- Website: https://elmwood.marcon.ca/
- Landing Page: https://elmwood.marcon.ca/register
- Figma (design source): https://www.figma.com/design/fwq2vQbzqvJ68epi39Y948/2026-Elmwood-Campaign
- ClickUp List: Marcon - Elmwood (`901113661418`)
- ClickUp launch task: https://app.clickup.com/t/868jf5fr2

## Current Cycle

**2026-05-now-selling-launch** — V1 launched 2026-05-05, V2 additive 2026-05-12. See `production.md` for creative brief, `digital.md` for build spec, `copy-meta.md` + `copy-google.md` for live copy, `campaign.md` Status Log for operational history + open flags.

## Brand Voice

High end but approachable. Burquitlam. End-user focused. Voice anchor "defined by light and elevation" — full spec (vocabulary, phrasing rules, capitalization, CTA hierarchy, pillars, changelog) lives in `Reference/brand-voice.md` v2.3.