Skip to content

docs(adr): compress to 2 records in the domain-modeling format - #26

Merged
lesnik512 merged 1 commit into
mainfrom
docs/compress-adrs
Sep 19, 2026
Merged

lesnik512 merged 1 commit into
mainfrom
docs/compress-adrs

Conversation

@lesnik512

Copy link
Copy Markdown
Member

Rewrites docs/adr/ from 2 records (505 words) to 2 (316 words), one paragraph each, in the shape
ADR-FORMAT.md asks for. Both records survive the admission test, so nothing is dropped or merged
and the numbering is unchanged. The **Decision:** lead-in and the **Revisit trigger:** block go
away; each trigger is folded into its paragraph, because in both cases it is the real boundary of
the decision rather than a bookkeeping note.

Evaluation

Each record was tested against the admission test: hard to reverse, surprising without context, the
result of a real trade-off.

Old Outcome New Reason
0001 caller owns the root container's lifecycle kept 0001 A public ownership contract that is expensive to move later, and it deviates from what every ASGI sibling does, so a reader will ask why.
0002 inject does not rewrite the view's signature kept 0002 modern-di-celery and modern-di-aiogram do the rewrite, so this is exactly the deliberate deviation someone would port over as a fix.

Citations

None moved. The only citation in the repo is the ADR-0001 example in docs/agents/domain.md, plus
the two filenames in that file's directory tree; both numbers and both slugs are unchanged, so they
still resolve. The repo-wide sweep for adr/NNNN and ADR-NNNN finds no old or dropped number.

Stale claims

None. Every concrete claim was checked against the current tree and all still hold: setup_di does
not open, validate, or close the container it is handed; fetch_di_container and
flask_request_provider exist under those names in modern_di_flask/main.py; Container.validate
exists in the pinned modern-di (3.4.0, range >=3.1,<4); the supported Flask range is still
flask>=3,<4; and the wrapper still carries functools.wraps with *args, **kwargs and no
__signature__. The invariant test named by the old 0002,
test_inject_preserves_the_view_name_flask_derives_endpoints_from, is still in tests/test_inject.py;
the new paragraph keeps the __name__ rationale but drops the pointer to the test, which the test
name already carries.

Gates

  • pytest -q tests/test_adr_citations.py: 7 passed.
  • pytest -q (full suite): 22 passed. No directories needed external services, so none were skipped.
  • eof-fixer . --check: clean.
  • lychee --offline --no-progress over both ADRs, CONTEXT.md and AGENTS.md: 2 OK, 0 errors.
  • ruff format --check / ruff check --no-fix: skipped, no Python file is touched by this change.

No drops and no merges: both records pass the admission test. Each is
now a single paragraph, with the revisit triggers folded into the
paragraph as the boundary of the decision. Numbering and slugs are
unchanged, so no citation moves.
@lesnik512
lesnik512 merged commit 5a075cf into main Sep 19, 2026
8 checks passed
@lesnik512
lesnik512 deleted the docs/compress-adrs branch September 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.

1 participant