---
kind: record
status: active
---

# DOCS-IA-001 — Documentation Information Architecture

- **Task:** DOCS-IA-001
- **Internal reference:** `TASKS:DOCS-IA-001`
- **Objective:** Codify the canonical `docs/` structure and authoring rules in `docs/README.md` before moving or rewriting existing documentation.
- **Scope:** README contract only; no document migration in this slice.
- **Approved design:** `docs/plans/2026-08-10-docs-information-architecture-design.md`
- **Implementation plan:** `docs/plans/2026-08-10-docs-structure-readme.md`

## Plan

1. Replace the starter `docs/README.md` with the approved target tree and placement policy.
2. Document source-of-truth, audience-book, artifact, migration, and Obsidian link rules.
3. Run focused formatting, whitespace, structure, link, and scope checks.
4. Commit only `docs/README.md`; preserve unrelated staged and untracked changes.

## Progress

- [x] Context inventory completed.
- [x] Design approved by user.
- [x] Design committed as `205cc0d`.
- [x] Implementation plan written.
- [x] Scratchpad created.
- [x] README updated.
- [x] Focused verification completed.
- [x] Scoped documentation commit created (`docs: codify documentation structure`).

## Tests and verification

| Check | Result |
| --- | --- |
| Markdown formatting | PASS — `pnpm exec prettier --check docs/README.md docs/plans/2026-08-10-docs-structure-readme.md docs/scratchpads/DOCS-IA-001.md` |
| Whitespace validation | PASS — `git diff --no-index --check` for all new Markdown files |
| Required structure anchors | PASS — root controls, books, artifact directories, Obsidian, and retired `mosaic-stack` boundary found |
| README-only scope check | PASS — the scoped documentation commit contains only this task's README, plan, and scratchpad; unrelated changes remain outside the commit |

## Risks and blockers

- Existing documentation remains under `docs/_old_structure/`; this slice does not migrate it.
- Existing source/tests reference legacy paths such as `docs/fleet/` and `docs/federation/`; those references require a later migration slice.
- `docs/TASKS.md` has a single-writer orchestrator policy and is intentionally not modified here.
- `docs/GETTING_STARTED.md` is an unrelated pre-staged deletion and must remain outside this task commit.
- `docs/.obsidian/` is pre-existing untracked vault metadata and must not be modified or committed here.

## Final evidence

- `docs/README.md` now defines the complete target tree, placement matrix, source-of-truth policy, authoring workflow, migration policy, and Obsidian/Git link conventions.
- `pnpm exec prettier --check docs/README.md docs/plans/2026-08-10-docs-structure-readme.md docs/scratchpads/DOCS-IA-001.md` passed.
- `git diff HEAD^ HEAD --check` and the staged-index whitespace check passed.
- Focused structure and retired-boundary checks passed.
- All three relative Markdown links in the README resolve.
- The scoped documentation commit contains only the README, plan, and scratchpad.
- The pre-existing staged deletion of `docs/GETTING_STARTED.md`, modified `.mosaic/orchestrator/*` files, and untracked `docs/.obsidian/` metadata remain outside the documentation commit.
- Content migration, sitemap refresh, and legacy source/test path updates remain explicitly deferred to later slices.
