[KongchangAI]
Concept架构决策记录 / Architecture Decision Records

ADR

An established software engineering pattern for recording significant technical decisions, proposed by Michael Nygard in 2011. Each record documents the decision context, considered alternatives, rationale for the chosen option, and expected consequences. The pattern was subsequently promoted as a best practice by ThoughtWorks and others.

Core Facts

Timeline (last 90 days)

Oct 26

ADRs became popular because they solve two chronic problems of traditional architecture documentation: documentation drifting out of sync with code, and decision context being lost over time.

Unverified50%
Oct 26

A typical ADR file usually does not exceed one page, is numbered incrementally, and is stored in the `doc/adr` directory.

Unverified50%
Oct 21

The decision timeline is a lightweight practice for recording architectural decisions, which can be seen as an interactive variant of architecture decision records (ADRs), embedding key trade-offs chronologically into visualization documentation and linking them with PRs and code diffs.

Unverified50%
Oct 20

SQL Server 2025's Optimized Locking avoids lock escalation through a versioned transaction locking mechanism, and depends on Accelerated Database Recovery (ADR) and Read Committed Snapshot Isolation (RCSI).

Unverified50%
Oct 19

Moving the baseline (raising or lowering the average recall@5 threshold) requires an explicit ADR decision, rather than being changed just to make CI green.

Unverified50%
Oct 15

In human teams, code review, architecture decision records (ADRs) and a shared mental model within the team together suppress architecture drift.

Unverified50%
Oct 14

The positive outcome of ADR 1 (adopting a central model allowlist) is that compliance and permissions have a single source of truth, and the negative outcome is that model deprecation or additions require coordination, and request latency increases slightly due to the lookup.

Unverified50%
Oct 13

The way to resolve dual-source data discrepancies is to divide ownership by domain: Joule handles in-transaction help, the custom stack handles cross-system analysis and proprietary policy RAG, and this division is written into an architecture decision record (ADR).

Unverified50%
Oct 13

The way to mitigate the risk of tribal knowledge is to externalize it into architecture decision records (ADRs), README comments, or agent instruction files.

Unverified50%
Oct 13

Engineering measures to break vendor lock-in include: writing infrastructure as Terraform or Pulumi code and putting it into your own repository, requiring all design discussions to be documented as ADRs, and placing CI/CD pipeline configuration under accounts you control.

Unverified50%

8 more timeline events

All Facts (20)

Verified

Architecture Decision Records (ADR) is a practice proposed by Michael Nygard in 2011.

75%
Verified

Architecture Decision Records (ADR) is a lightweight documentation practice proposed by Michael Nygard in 2011.

70%
Verified

An Architecture Decision Record (ADR) is a lightweight document format used in software engineering to systematically record important technical decisions, typically containing the decision context, alternative options, the final choice, and the rationale behind the trade-offs.

65%
Unverified

ADR (Architecture Decision Records) is a software engineering practice of maintaining decision logs that record the reasons for technical choices, alternative options considered, and the rationale for rejecting them.

60%
Unverified

The goal of the information layer is to give agents a comprehensive understanding of the project, including project-level rule files (such as Cursor's .cursorrules and Windsurf's .windsurfrules), architecture decision records, API contract documents, and dependency graphs.

60%
Unverified

ADR (Architecture Decision Record) is a lightweight documentation practice proposed by Michael Nygard, used to record each important architectural decision in a project along with its context, rationale, and consequences.

60%
Unverified

The practice of maintaining progress note files is highly similar to the Architecture Decision Record (ADR) practice in software engineering, which was systematized by Michael Nygard in 2011

60%
Unverified

ADRs became popular because they solve two chronic problems of traditional architecture documentation: documentation drifting out of sync with code, and decision context being lost over time.

50%
Unverified

A typical ADR file usually does not exceed one page, is numbered incrementally, and is stored in the `doc/adr` directory.

50%
Unverified

The decision timeline is a lightweight practice for recording architectural decisions, which can be seen as an interactive variant of architecture decision records (ADRs), embedding key trade-offs chronologically into visualization documentation and linking them with PRs and code diffs.

50%
Unverified

SQL Server 2025's Optimized Locking avoids lock escalation through a versioned transaction locking mechanism, and depends on Accelerated Database Recovery (ADR) and Read Committed Snapshot Isolation (RCSI).

50%
Unverified

Moving the baseline (raising or lowering the average recall@5 threshold) requires an explicit ADR decision, rather than being changed just to make CI green.

50%
Unverified

In human teams, code review, architecture decision records (ADRs) and a shared mental model within the team together suppress architecture drift.

50%
Unverified

The positive outcome of ADR 1 (adopting a central model allowlist) is that compliance and permissions have a single source of truth, and the negative outcome is that model deprecation or additions require coordination, and request latency increases slightly due to the lookup.

50%
Unverified

The way to resolve dual-source data discrepancies is to divide ownership by domain: Joule handles in-transaction help, the custom stack handles cross-system analysis and proprietary policy RAG, and this division is written into an architecture decision record (ADR).

50%
Unverified

The way to mitigate the risk of tribal knowledge is to externalize it into architecture decision records (ADRs), README comments, or agent instruction files.

50%
Unverified

Engineering measures to break vendor lock-in include: writing infrastructure as Terraform or Pulumi code and putting it into your own repository, requiring all design discussions to be documented as ADRs, and placing CI/CD pipeline configuration under accounts you control.

50%
Unverified

AI models have no project memory and start each new session in an amnesiac state, so key technical decisions need to be documented in ADR files for the AI to read.

50%
Unverified

After initialization, an AGENTS.md instruction file, a context directory, and technical documents such as ADRs are generated in the project root directory.

50%
Unverified

Structural design of the information layer includes project-level rule files (such as Cursor's .cursorrules and Windsurf's .windsurfrules), Architecture Decision Records (ADR), API contract files (such as OpenAPI Spec), and dependency graphs.

50%

Source Articles