Skip to content

Add .domain, .arc42, and .backlog knowledge folder structure - #4

Merged
JSdotNet merged 12 commits into
mainfrom
j-schepers-innobv-domain-knowledge-folders
Aug 3, 2026
Merged

JSdotNet merged 12 commits into
mainfrom
j-schepers-innobv-domain-knowledge-folders

Conversation

@JSdotNet

@JSdotNet JSdotNet commented Aug 3, 2026

Copy link
Copy Markdown
Owner

Summary

Introduces three durable knowledge folders and their governing instructions to support future visualization tooling:

  • .domain/ — per-bounded-context domain knowledge (domain.md, features.md, model.md, dependencies.md), organized by bounded context.
  • .arc42/ — arc42-structured architecture documentation.
  • .backlog/ — work items grouped by concern (domain/feature/architecture), item + sub-item chapters instead of epic/feature/story/bug subfolders.

All guidance lives in .github/instructions/ (not inside the knowledge folders themselves):

  • domain-knowledge.instructions.md
  • arc42-knowledge.instructions.md
  • backlog-knowledge.instructions.md
  • chapter-metadata.instructions.md — shared per-chapter metadata contract (fenced meta YAML block) so a future visualization tool can parse status, cross-folder related tags, and GitHub issue links. Chapters are addressed by <path>#<heading-slug> rather than a separately stored id.
    • status values are folder-specific (draft/proposed/active/deprecated for domain & arc42; draft/ready/in-progress/done/blocked for backlog).
    • depends-on is scoped to features.md and backlog chapters only.
    • implements (backlog-only) relates a backlog item to the domain/arc42 chapter it realizes.

Empty folders are tracked via .gitkeep files.

Testing

Documentation-only change; no build/tests applicable.

JSdotNet and others added 12 commits August 3, 2026 21:38
- .domain: per-bounded-context template (domain.md, features.md, model.md, dependencies.md)
- .arc42: arc42 documentation guidance and chapter layout
- .backlog: epics/features/stories/bugs artifact guidance

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Fold templates directly into the instructions files instead of keeping
separate template files, and drop the now-empty knowledge folders (git
doesn't track empty dirs; they'll be created on demand).

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Replace the epics/features/stories/bugs subfolder split with a flat
.backlog/<item-slug>.md file per top-level item, using chapters for
sub-items, matching the domain.md nesting pattern.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Allow .backlog/<concern-type>-<concern-slug>.md, one file per domain,
feature, or architecture concern, instead of a single flat backlog file.
Filename concern-slug matches the corresponding .domain bounded context
folder or .arc42 chapter/topic where applicable.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Introduce .github/instructions/chapter-metadata.instructions.md defining
a common fenced 'meta' YAML block (id, status, depends-on, related,
issue) that every chapter in these three folders must carry, so a future
visualization tool can parse status, dependencies, and cross-folder
cross-references. Wire the block into the domain.md/features.md,
arc42 chapter, and backlog item/sub-item templates.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
A chapter is now addressed by <path>#<heading-slug> (its natural
Markdown anchor) instead of a separately stored id, removing a field
that could drift from the actual file path/heading text.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
.domain and .arc42 use draft/proposed/active/deprecated (content
lifecycle), .backlog uses draft/ready/in-progress/done/blocked (task
progress), instead of one shared vocabulary.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Remove depends-on from .arc42 chapters and from domain.md's
Aggregate/Domain Service/Shared Value Objects/Shared Enums blocks —
those describe standing structure, not sequenced work, so their
relationships belong in model.md/dependencies.md or the related field.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
…nstructions

chapter-metadata.instructions.md now points to each folder's own
instructions file for its status value set, keeping the shared
metadata contract folder-agnostic.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
chapter-metadata.instructions.md now only defines the universal status/
related/issue fields; depends-on (features.md, backlog) and the new
implements field (backlog only) are documented in their owning folder's
instructions file. implements lets a backlog item point at the
.domain feature/aggregate/service or .arc42 chapter it realizes, as a
distinct relation from the generic related tag.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@JSdotNet JSdotNet added the documentation Improvements or additions to documentation label Aug 3, 2026
@JSdotNet
JSdotNet merged commit 628e531 into main Aug 3, 2026
2 checks passed
@JSdotNet
JSdotNet deleted the j-schepers-innobv-domain-knowledge-folders branch August 18, 2026 22:20
JSdotNet added a commit that referenced this pull request Sep 28, 2026
The corpus test pins the number of archify index entries. Specs #4, #5
and #6 of 06-runtime-view.md are new, so fourteen indexes now hold 42.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant