# Context that already exists elsewhere

Most teams already have some context: a KPI sheet, a `docs/kpis.md`, dbt `docs` blocks, a `.cursor/rules` file, a section of `AGENTS.md` that defines CAC. Building `martech-context/` beside them without a plan creates the failure the kit exists to prevent: two current definitions, and an agent that picks whichever it retrieves first.

## Find it

Search the repository and the documents the user names. Use the safe scan commands in `references/repo-and-export-signals.md`.

- Folders: `context/`, `docs/`, `wiki/`, `handbook/`.
- Files: `docs/**/kpi*`, `docs/**/metric*`, `*glossary*`, `*definitions*`, `*tracking-plan*`, `*data-dictionary*`.
- Instruction files: `AGENTS.md`, `CLAUDE.md`, `.github/copilot-instructions.md`, `.cursor/rules/*.mdc`. Look for sections that define a metric, a lifecycle stage or a naming rule, not only pointers.
- dbt: `docs` blocks and model or metric `description:` fields that state business meaning.
- Outside the repo, ask: the KPI sheet, the tracking plan sheet, the UTM builder, agency handover notes.

## Record it

Each definition found goes into the inventory worksheet as `observed`, with its origin path or document name and the date read. Note whether it has an owner, a date and a status. A definition with none of the three is a candidate, not a source.

## Choose one route per definition

Never leave two active copies. For each definition, the owner picks one:

- Import: copy the definition into the right `martech-context/` file, then propose a one-line notice at the top of the origin: "Superseded by `martech-context/metrics.md`, `cac_new_paid_v1`, from <YYYY-MM-DD>." The origin owner approves that notice like any other change.
- Link: the origin stays the source (for example a dbt `docs` block the data team maintains). `martech-context/README.md` lists it under the file it belongs to, with its owner, and the `martech-context/` file holds only a pointer.
- Retire: the origin is wrong or abandoned. Propose its removal from the active retrieval path (delete, or move to an archive folder agents are told to skip). Record the retirement in `decisions.md`.

If two origins disagree, both go into the worksheet as competing candidates and the business owner chooses. Do not import the newer one by default.

## Map the common context/ layout

A frequent starting point is a `context/` folder with `README.md`, `metrics.md`, `data-dictionary.md`, `naming-rules.md`, `customer-fit.md`, `playbooks.md` and `brand-and-claims.md`. Map it like this:

- `context/README.md`: merge into `martech-context/README.md`; keep its file list and owners.
- `context/metrics.md`, `context/data-dictionary.md`, `context/naming-rules.md`: import into the files with the same names, one definition at a time, through the routes above.
- `context/customer-fit.md`, `context/playbooks.md`, `context/brand-and-claims.md`: these are the optional files; move them into `martech-context/` and add the standard header.
- Then retire `context/` or leave a single README that points to `martech-context/`.

The paths matter because other skills read `martech-context/` by name. Renaming `martech-context/` to `context/` breaks them.

## Existing martech-context files without the header

- Propose the header as a diff. Keep the body unchanged.
- Set `status: draft` until the owner approves the header and confirms the body is current.
- Files in a different structure (one big file, different section names): do not restructure in the same change. Add the header first, then propose the split as a separate change with its own approval.
