| name | ln-111-root-docs-creator |
| description | Creates 4 root documentation files (CLAUDE.md, docs/README.md, documentation_standards.md, principles.md). L3 Worker invoked by ln-110-project-docs-coordinator. |
Root Documentation Creator
L3 Worker that creates 4 root documentation files using templates and Context Store from coordinator.
Purpose & Scope
- Creates 4 root documentation files (entry points for AI agents)
- Receives Context Store from ln-110-project-docs-coordinator
- Replaces placeholders with project-specific data
- Self-validates structure and content (22 questions)
- Never gathers context itself; uses coordinator input
Invocation (who/when)
- ln-110-project-docs-coordinator: ALWAYS invoked as first worker
- Never called directly by users
Inputs
From coordinator:
contextStore: Key-value pairs with all placeholders- PROJECT_NAME, PROJECT_DESCRIPTION
- TECH_STACK_SUMMARY
- DEV_COMMANDS (from package.json scripts)
- DATE (current date)
- LEGACY_CONTENT (optional, from ln-100 Phase 0 migration):
legacy_principles: { principles[], anti_patterns[], conventions[] }
targetDir: Project root directory
LEGACY_CONTENT is used as base content when creating principles.md. Priority: Legacy > Template defaults.
Documents Created (4)
| File | Target Sections | Questions |
|---|---|---|
| CLAUDE.md | Critical Rules, Documentation Navigation, Development Commands, Maintenance | Q1-Q6 |
| docs/README.md | Overview, Standards, Writing Guidelines, Quick Navigation, Maintenance | Q7-Q13 |
| docs/documentation_standards.md | Quick Reference (60+ requirements), 12 main sections, Maintenance | Q14-Q16 |
| docs/principles.md | Core Principles (8), Decision Framework, Anti-Patterns, Verification, Maintenance | Q17-Q22 |
Workflow
Phase 1: Receive Context
- Parse Context Store from coordinator
- Validate required keys present (PROJECT_NAME, PROJECT_DESCRIPTION)
- Set defaults for missing optional keys
Phase 2: Create Documents
For each document (CLAUDE.md, docs/README.md, documentation_standards.md, principles.md):
- Check if file exists (idempotent)
- If exists: skip with log
- If not exists:
- Copy template from
references/templates/ - Check LEGACY_CONTENT for this document type:
- For
principles.md: IfLEGACY_CONTENT.legacy_principlesexists:- Use
legacy_principles.principles[]as base for "## Core Principles" section - Use
legacy_principles.anti_patterns[]for "## Anti-Patterns" section - Use
legacy_principles.conventions[]for code style rules - Augment with template structure (add missing sections)
- Mark:
<!-- Migrated from legacy documentation -->at top of relevant sections
- Use
- For other documents: Use template as-is (no legacy content applicable)
- For
- Replace
{{PLACEHOLDER}}with Context Store values - Mark
[TBD: X]for missing data (never leave empty placeholders) - Write file
- Copy template from
Phase 3: Self-Validate
For each created document:
- Check SCOPE tag in first 10 lines
- Check required sections (from questions_root.md)
- Check Maintenance section (Update Triggers, Verification, Last Updated)
- Check POSIX endings (single newline at end)
- Auto-fix issues where possible
Phase 4: Return Status
Return to coordinator:
{
"created": ["CLAUDE.md", "docs/README.md", ...],
"skipped": [],
"tbd_count": 3,
"validation": "OK"
}
Critical Notes
- Idempotent: Never overwrite existing files; skip and log
- No context gathering: All data comes from coordinator's Context Store
- TBD markers: Use
[TBD: placeholder_name]for missing data, never{{PLACEHOLDER}} - Language: All root docs in English (universal standards)
- SCOPE tags: Required in first 10 lines of each file
Definition of Done
- Context Store received and validated
- 4 root documents created (or skipped if exist)
- All placeholders replaced (or marked TBD)
- Self-validation passed (SCOPE, sections, Maintenance, POSIX)
- Status returned to coordinator
Reference Files
- Templates:
references/templates/claude_md_template.md,docs_root_readme_template.md,documentation_standards_template.md,principles_template.md - Questions:
references/questions_root.md(Q1-Q22)
Version: 2.0.0 (MAJOR: Added LEGACY_CONTENT handling for principles.md. Uses legacy_principles from migration as base content. Priority: Legacy > Template defaults.) Last Updated: 2025-12-19