Skip to content

docs: separate ADR decisions from implementation specifications - #200

Merged
Reefact merged 33 commits into
mainfrom
agent/refactor-adr-specifications
Jul 19, 2026
Merged

docs: separate ADR decisions from implementation specifications#200
Reefact merged 33 commits into
mainfrom
agent/refactor-adr-specifications

Conversation

@Reefact

@Reefact Reefact commented Jul 19, 2026

Copy link
Copy Markdown
Owner

Summary

Separates ADR decisions from their implementation mechanics: 13 accepted ADRs are trimmed to context/decision/rationale/alternatives/consequences/risks, the extracted mechanics move into a new bilingual ADR implementation reference, and ADR-0024 records the maintainer-authorized exception that permits this one-time editorial migration.

Type of change

  • Bug fix
  • New feature
  • Breaking change
  • Refactoring
  • Analyzer / diagnostic change
  • Tests
  • Documentation
  • Build / CI / tooling

Changes

  • add ADR-0024 to authorize the one-time editorial migration of accepted ADRs without changing their architectural meaning;
  • add a bilingual ADR implementation reference for volatile technical mechanics;
  • refocus ADR-0001, 0002, 0004, 0008, 0010, 0011, 0012, 0013, 0015, 0017, 0019, 0021, and 0022 (English and French) on context, decision, rationale, alternatives, consequences, and risks;
  • move exact workflow, configuration, API-shape, algorithm, maintenance, and test mechanics into the implementation reference or existing workflow/user references;
  • explicitly link refinements and revisited alternatives, notably ADR-0002 ↔ ADR-0022, ADR-0012 ↔ ADR-0017, and earlier Request Binder entry-shape ADRs ↔ ADR-0021;
  • correct ADR-0008, ADR-0011, ADR-0013, ADR-0015, and ADR-0021 from Proposed to Accepted, and sync the index accordingly;
  • clarify that ADR-0004 defines a procedural advisory review obligation rather than claiming the manually dispatched workflow mechanically guarantees execution on every pull request;
  • reconcile ADR-0013 with the substantive rewrite merged concurrently by PR fix(dummies): gate distinct collections by the effective element domain #199 (effective-domain widening through pinned/opaque values, decimal/float gating) so neither PR's content is lost;
  • renumber the editorial-migration ADR from 0023 to 0024 after PR Optimize the binder's happy path and settle the v1 selector API #201 independently merged its own ADR-0023, and rewrite all 33 commit messages to Conventional Commits.

Testing

  • dotnet build FirstClassErrors.sln
  • dotnet test FirstClassErrors.sln
  • Analyzer tests pass (FirstClassErrors.Analyzers.UnitTests) — covered by the full-solution test run above

Documentation

  • Public API / error documentation updated
  • README / doc/ updated
  • French translation (doc/handwritten/for-users/README.fr.md) updated if user-facing behavior changed — not touched by this PR; the French ADR translations under doc/handwritten/for-maintainers/adr/ were kept in sync instead
  • No documentation change required

Architecture decisions

  • New decision recorded — ADR-0024, recording the maintainer-authorized, bounded exception that permits this one-time editorial migration without changing any decision, rationale, alternative, consequence, status, date, or attribution.

ADR-0024 is recorded directly as Accepted rather than the default agent-drafted Proposed, and ADR-0008/0011/0013/0015/0021 are corrected from Proposed to Accepted, because the maintainer explicitly reviewed and authorized both the migration and the status corrections beforehand (see ADR-0024's Context) — not a unilateral status flip by an agent.

Related issues

None.

@Reefact
Reefact force-pushed the agent/refactor-adr-specifications branch from ef787af to 3b93909 Compare July 19, 2026 22:27
Reefact added 29 commits July 19, 2026 22:34
Rebased onto main after PR #199 merged a substantive rewrite of this
ADR's decision content; folds that content into the editorial trim so
neither PR's work is lost.
Reefact and others added 4 commits July 19, 2026 22:34
PR #201 merged and claimed ADR-0023 (keep expression-tree selectors
for the v1 binder API) while this branch was still open with its own
ADR-0023 (the one-time editorial-refactoring exception). Renumbers the
latter to ADR-0024 and updates every cross-reference so no two records
share a number.
@Reefact
Reefact force-pushed the agent/refactor-adr-specifications branch from 3b93909 to 7d74b82 Compare July 19, 2026 22:37
@Reefact
Reefact marked this pull request as ready for review July 19, 2026 22:39
@Reefact
Reefact merged commit ab9545f into main Jul 19, 2026
15 checks passed
@Reefact
Reefact deleted the agent/refactor-adr-specifications branch July 19, 2026 22:43
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.

2 participants