L3 Worker that creates 2 backend documentation files. CONDITIONAL - only invoked when project has backend or database.
Purpose & Scope
-
Creates api_spec.md (if hasBackend)
-
Creates database_schema.md (if hasDatabase)
-
Receives Context Store from ln-110-project-docs-coordinator
-
OpenAPI 3.0 compliant API specification
-
ER diagrams in Mermaid for database schema
-
Never gathers context itself; uses coordinator input
Invocation (who/when)
- ln-110-project-docs-coordinator: CONDITIONALLY invoked when:
hasBackend=true (express, fastify, nestjs, fastapi detected)
-
hasDatabase=true(pg, mongoose, prisma, sequelize detected) -
Never called directly by users
Inputs
From coordinator:
contextStore: Context Store with backend-specific data
API_TYPE (REST, GraphQL, gRPC)
-
API_ENDPOINTS (from route scan)
-
AUTH_SCHEME (JWT, OAuth2, API keys)
-
DATABASE_TYPE (PostgreSQL, MongoDB, MySQL)
-
SCHEMA_OVERVIEW (from migrations/models)
-
ER_DIAGRAM (generated from schema)
-
targetDir: Project root directory -
flags: { hasBackend, hasDatabase }
Documents Created (2, conditional)
| docs/project/api_spec.md | hasBackend | Q39-Q40 | Medium
| docs/project/database_schema.md | hasDatabase | Q41-Q42 | High
Workflow
Phase 1: Check Conditions
-
Parse flags from coordinator
-
If
!hasBackend && !hasDatabase: return early with empty result -
Determine which documents to create
Phase 2: Create Documents
For each applicable document:
-
Check if file exists (idempotent)
-
If exists: skip with log
-
If not exists:
Copy template
-
Replace placeholders with Context Store values
-
Generate ER diagram for database_schema.md
-
Mark
[TBD: X]for missing data
Phase 3: Self-Validate
-
Check SCOPE tag
-
Validate format:
api_spec.md: endpoint table, request/response examples
-
database_schema.md: ER diagram, table definitions
-
Check Maintenance section
Phase 4: Return Status
{
"created": ["docs/project/api_spec.md"],
"skipped": ["docs/project/database_schema.md"],
"tbd_count": 2,
"validation": "OK"
}
Critical Notes
-
Conditional: Skip entirely if no backend/database detected
-
OpenAPI compliant: api_spec.md follows OpenAPI 3.0 structure
-
ER diagrams: Generated in Mermaid erDiagram format
-
Idempotent: Never overwrite existing files
NO_CODE_EXAMPLES Rule (MANDATORY)
API spec documents contracts, NOT implementations:
-
ALLOWED in api_spec.md: JSON request/response schemas (this IS the API contract), endpoint tables
-
FORBIDDEN: Controller implementations, validation classes, service code, middleware examples
-
TEMPLATE RULE: api_spec_template.md includes
<!-- NO_CODE_EXAMPLES: ... -->tag - FOLLOW IT
Stack Adaptation Rule (MANDATORY)
-
Links must reference stack-appropriate docs (Microsoft for .NET, MDN for JS)
-
API examples must match project stack (Express for Node.js, FastAPI for Python)
Format Priority (MANDATORY)
Tables (endpoints, schemas) > Mermaid (ER diagrams) > Lists > Text
Definition of Done
-
Conditions checked (hasBackend, hasDatabase)
-
Applicable documents created
-
ER diagram generated (if database_schema.md created)
-
Self-validation passed
-
Status returned to coordinator
Reference Files
-
Templates:
references/templates/api_spec_template.md,database_schema_template.md -
Questions:
references/questions_backend.md(Q39-Q42)
Version: 1.2.0 (Added Stack Adaptation and Format Priority rules) Last Updated: 2025-01-12