← Files AkinatorARCHIVED FILE

templates/onboarding-mapping.md

3.74 KB · Oct 3, 2026 · 06:33 UTC

↓ Download file

# Akinator onboarding mapping - <repo name>

> Template. Copy to `docs/akinator-mapping.md` (or wherever the repo keeps its
> meta-documentation) during brownfield onboarding. This document is the
> contract that makes **adopt-never-impose** verifiable: it records what the
> repo already had, what Akinator's taxonomy calls it, and what was deliberately
> not changed. Delete this line and every angle-bracket placeholder.

- **Onboarded:** <YYYY-MM-DD>
- **Mode:** brownfield (existing knowledge system detected)

## What already existed

<Detected before anything was created. Be specific about conventions - naming,
numbering, index style, frontmatter fields - because those are what must be
adopted.>

| What | Where | Convention observed |
|---|---|---|
| Routers | <paths> | <e.g. "CLAUDE.md at root only, no per-module"> |
| Rules | <path> | <e.g. "`docs/standards/*.md`, unnumbered, no enforcement section"> |
| Skills / runbooks | <path> | <e.g. "`ops/playbooks/*.md`, no frontmatter"> |
| Context maps | <path> | <e.g. "none - facts live in the architecture doc"> |
| Memory | <path> | <e.g. "none"> |
| Docs | <path> | <e.g. "`docs/`, grouped by team, not by kind"> |
| Generated layer | <path> | <e.g. "`.ai/manifests/*.json`, generated by `scripts/gen.py`"> |
| Enforcement scripts | <path> | <e.g. "`scripts/lint-architecture.py`, run in CI"> |
| Index convention | <path> | <e.g. "each directory has a README.md with a bulleted list"> |

## The mapping

<Akinator's station and taxonomy on the left, this repo's existing home on the
right. Where the repo has no home for a kind of knowledge, say what will be
created and why the location was chosen to fit existing conventions.>

| Akinator taxonomy | This repo's home | Adopted or created |
|---|---|---|
| Hard constraints | <`docs/standards/`> | adopted - keeping unnumbered names, adding an Enforcement section to each |
| Repeatable procedures | <`ops/playbooks/`> | adopted - adding frontmatter so they are discoverable |
| Structural facts | <`context/`> | created - no existing home; placed at root to match `docs/` and `ops/` |
| Business logic | <`docs/business/`> | <...> |
| Product logic | <`docs/product/`> | <...> |
| Operational procedure | <`ops/playbooks/`> | <...> |
| Decisions | <`docs/adr/`> | <...> |
| Durable facts | <`memory/`> | <...> |
| Generated facts | <`.ai/`> | <...> |
| Agent entry points | <routers> | <...> |

## Deliberately not changed

<The most important section. What Akinator did **not** impose, and why. Anything
listed here is a convention the repo owns; future Akinator work must respect it
rather than "fixing" it.>

- <e.g. "Rules stay unnumbered. The repo references them by filename in code
  comments; renumbering would break those references.">
- <e.g. "Docs stay grouped by owning team. The team boundaries are how people
  navigate; regrouping by kind would be a taxonomy win and a usability loss.">

## Gaps found

<From the coverage audit. Ranked by severity, each becoming a batch.>

| Severity | Gap | Batch |
|---|---|---|
| critical | <e.g. "`docs/architecture.md` describes the deleted queue service"> | <1> |
| high | <e.g. "pricing tiers exist only in the Stripe dashboard"> | <2> |
| medium | <e.g. "12 playbooks unreachable from any index"> | <3> |
| low | <...> | <...> |

## Newcomer test

<The five most common change types in this repo, and whether a fresh agent given
only the knowledge layer can act on each. Re-run after the gap batches land.>

| Change type | Before | After |
|---|---|---|
| <e.g. "add an API endpoint"> | <fail - no routing convention documented> | <pass> |
| <...> | | |

## Standing behavior

From this date, every change in this repo runs the Akinator loop. Stations 6-11
are part of each batch, using the homes in the mapping table above - not
Akinator's defaults.

SHA-256: 05267966349c2af4745976f61e8e5d0a0190bd5a868afc452d2e3acc58a3059a