Skip to content

ADR 006: Code-Outward Documentation#79

Merged
monkeypants merged 1 commit into
masterfrom
adr-006-code-outward-documentation
Jan 19, 2026
Merged

ADR 006: Code-Outward Documentation#79
monkeypants merged 1 commit into
masterfrom
adr-006-code-outward-documentation

Conversation

@monkeypants

Copy link
Copy Markdown
Contributor

Summary

Cherry-picks ADR 006 from the super-branch (PR #56).

Documents the "docstrings ARE the documentation" principle:

  • Framework provides semantic scaffolding, solutions provide content
  • Viewpoints are projections through framework BCs (core, hcd, c4)
  • Bespoke templates per entity type leveraging doctrine compliance
  • Directives wrap use cases, templates handle presentation
  • Code exists → autodoc; code doesn't exist → design doc

Related

Closes #70
Cherry-picked from PR #56

Test plan

  • ADR content matches super-branch
  • Index updated

@absoludity absoludity left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like this. Reading it make me wonder if this documentation issue is a long-standing issue you've been keen solve once and for all for a while?

API docs. This creates drift, duplication, and maintenance burden.

The doctrine system (ADR 002) establishes that tests ARE the specification. The same
principle applies to documentation: **docstrings ARE the documentation**.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it all based on python docstrings only? If not, maybe:

Suggested change
principle applies to documentation: **docstrings ARE the documentation**.
principle applies to documentation: **the code documentation IS the documentation**.

though that doesn't quite capture it. Maybe docstrings is fine - by which we just mean generally high-level (module/function) code documentation, I guess?

@monkeypants

Copy link
Copy Markdown
Contributor Author

maybe - It is a bit of a manifesto, isn't it. I may have been arguing with / lecturing the LLM about slop minimisation...

Cherry-picked from super-branch (PR #56).

Documents the "docstrings ARE the documentation" principle:
- Framework provides semantic scaffolding, solutions provide content
- Viewpoints are projections through framework BCs
- Bespoke templates per entity type
- Code exists → autodoc; code doesn't exist → design doc

Closes #70
@monkeypants monkeypants force-pushed the adr-006-code-outward-documentation branch from cd2f253 to 23017ab Compare January 19, 2026 11:19
@monkeypants monkeypants merged commit a157b89 into master Jan 19, 2026
4 checks passed
@monkeypants monkeypants deleted the adr-006-code-outward-documentation branch January 19, 2026 11:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement ADR 006 in master (Code-Outward Documentation)

2 participants