Add DRF (Decision Reasoning Format) to Other ADR templates - #117
Open
carlosinfantes wants to merge 1 commit into
Open
Add DRF (Decision Reasoning Format) to Other ADR templates#117carlosinfantes wants to merge 1 commit into
carlosinfantes wants to merge 1 commit into
Conversation
Adds the Decision Reasoning Format (DRF) to the Other ADR templates section: a schema-first, machine-readable counterpart to the prose templates already covered, with its companion context format. Signed-off-by: Carlos Infantes <set.is.set@gmail.com>
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.
Adds one paragraph to the Other ADR templates section of the ADR Templates post covering the Decision Reasoning Format (DRF).
Why it fits this page. The templates currently covered - MADR, Nygard, Y-Statement, ISO/IEC/IEEE 42010 - are prose-first: they prescribe headings, and the reasoning lives in free text under them. DRF takes the other approach: a decision is a YAML document validated against a JSON Schema, with the reasoning decomposed into named fields (constraints, objectives, assumptions, tensions, synthesis). It is meant to complement those templates, not replace them, and the paragraph is worded that way.
The practical difference is that the trade-off analysis becomes queryable, and CI can reject a record that is internally inconsistent - for example one whose status is
approvedbut which carries no synthesis. A companion Context Reasoning Format (CRF) models organizational context (policies, systems, facts) as a graph decisions can be validated against.Disclosure: I am the author of the format. Happy to trim, reword, or drop it if you would rather keep the section to templates with a broader install base.
Project status: Apache-2.0, draft v0.3.0, both schemas published with a tagged release. CI validates every example against the schemas, runs 24 rejection fixtures asserting malformed documents are refused, and checks the YAML embedded in the specs.
Original material, and no conflict with the repo license.