Skip to content

Implement ADR 006 in master (Code-Outward Documentation) #70

@monkeypants

Description

@monkeypants

Context

Julee documentation exists in parallel forms: hand-written RST and autodoc-generated API docs. This creates drift, duplication, and maintenance burden.

The doctrine system establishes that tests ARE the specification. The same principle applies: docstrings ARE the documentation.

The Decision

  1. Framework = Information Architecture, Content = Solution - julee provides semantic scaffolding; solutions provide content

  2. Viewpoints Are Projections - Framework BCs (core, hcd, c4) become documentation viewpoints projecting solution content

  3. Bespoke Templates Per Entity Type - Autodoc with entity-specific templates selected by doctrine-guaranteed structure

  4. Directives Wrap Use Cases - list-stories wraps ListStoriesUseCase

  5. Code Exists → Autodoc; Code Doesn't Exist → Design Doc - Hand-written RST only for unimplemented features

Why an ADR?

This decision:

  • Eliminates documentation drift (generated from code)
  • Creates navigable dependency graph through docs
  • Leverages doctrine compliance for reliable introspection
  • Affects all solution documentation structure

Implementation Reference

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions