docs(adr): compress to 1 record in the domain-modeling format - #52
Merged
Merged
Conversation
0001 kept and rewritten as a single paragraph, 301 words to 151. No records dropped or merged; the numbering and slug are unchanged, so no citation moved. Corrected a stale claim: the skip-non-Provider rule lives in modern_di.Group.get_named_providers, not in _collect_fixtures.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rewrites
docs/adr/from 1 record (301 words) to 1 (151 words), a single paragraph, in the shapeADR-FORMAT.mdasks for. The record survives the admission test, so nothing is dropped, merged orrenumbered. Same treatment as modern-python/compose2pod#102.
Evaluation
Tested against the admission test: hard to reverse, surprising without context, the result of a real
trade-off.
exposeinstalls into modules only; noFixtureSetinstall seamsetattrloop will propose extracting it, which is exactly the surprise an ADR exists to pre-empt, and the two-adapters rule is the real trade-off.The rewrite drops the
**Decision:**line, the**Revisit trigger:**block and the"the test suite collapsed accordingly" narrative. The revisit trigger folds into the closing clause,
because the arrival of a second install target is the actual boundary of the decision, not an
afterthought.
Citations
None moved. The only citation in the repo is the
ADR-0001example indocs/agents/domain.md, andboth its number and its parenthetical title are still accurate. The repo-wide sweep for
adr/NNNN…/ADR-NNNNfinds no old or dropped number.Stale claims corrected
_collect_fixtureswith "discovery, the skip-non-Provider rule,cross-group collision detection". Only the collision check is its own: discovery and the
skip-non-Provider filter live in
modern_di.Group.get_named_providers(). The rewrite says what_collect_fixturesactually does, which also includes theTypeErroron an empty call that theold record never mentioned.
exposeandmodern_di_fixture, matchingmodern_di_pytest/__init__.__all__.Everything else verified against
modern_di_pytest/factory.py:_collect_fixturesis private andpure, the install targets are the
inspect.stack()caller module andmodule=, bothtypes.ModuleType, and the install step is asetattrloop over the returned mapping.Gates
pytest -q tests/test_adr_citations.py: 7 passed.pytest -q(whole suite, 25 tests): passed. No directory needs external services.eof-fixer . --check: clean.lychee --offlineover the touched ADR plusCONTEXT.mdandAGENTS.md: 2 OK, 0 errors.ruff format --check/ruff check --no-fix: skipped, no Python touched.