Tech
How to Run an Architecture Decision Record Process — Documenting Decisions That Matter
How to Run an Architecture Decision Record Process — Documenting Decisions That Matter
Stop losing critical project context. Learn how to implement an Architecture Decision Record (ADR) process to document key technical choices, improve team alignment, and streamline your architectural evolution.
Stop losing critical project context. Learn how to implement an Architecture Decision Record (ADR) process to document key technical choices, improve team alignment, and streamline your architectural evolution.
08 min read

In the high-stakes, fast-moving landscape of modern software engineering, the biggest bottleneck is rarely a lack of coding talent or compute power. It is, almost invariably, a lack of shared context. When a team arrives at a complex crossroad—deciding between a monolithic architecture and microservices, selecting a new database vendor, or standardizing on an authentication protocol—the decision itself is only half the battle. The true challenge lies in the "long tail" of that decision: understanding why it was made, what alternatives were considered, and what the long-term trade-offs actually are. Without this, institutional memory evaporates, teams re-litigate settled debates, and technical debt accumulates in the shadows of "mystery code."
The Architecture Decision Record (ADR) has emerged as the industry-standard antidote to this chronic erosion of context. An ADR is not just a document; it is a fundamental shift in engineering culture. It moves architecture from the realm of the "lone genius" or the "ivory tower" into the realm of observable, communal, and iterative craftsmanship.
The Anatomy of an Architecture Decision
Before implementing the process, we must understand what constitutes an ADR. An ADR is a short, text-based document that captures a significant architectural decision—one that impacts the system's structure, performance, maintainability, or cost. It is not intended to document every minor implementation detail. If you find yourself writing an ADR for a refactor that only affects a single function, you are likely over-engineering the documentation process.
A robust ADR should follow a consistent template, ensuring that every record is searchable, readable, and structured for longevity. While variations exist, the Michael Nygard-inspired structure remains the gold standard:
Title: A clear, imperative headline (e.g., "ADR-001: Use PostgreSQL as the Primary Datastore").
Status: The current state of the decision (e.g., Proposed, Accepted, Deprecated, Superseded).
Context: The forces at play. What is the problem? What are the constraints? Why does this decision matter right now?
Decision: The path chosen, stated clearly and concisely.
Consequences: The good, the bad, and the ugly. Every architecture decision is a set of trade-offs. If your ADR claims "no downsides," your ADR is incorrect.
Establishing the ADR Lifecycle
To run an ADR process effectively, you cannot treat it as an administrative chore. It must be woven into the fabric of your development lifecycle. Here is how to institutionalize the practice for long-term success.
Phase 1: The Trigger Mechanism
The process begins when an engineer or architect identifies a "significant" decision. A rule of thumb for significance is the "Two-Year Rule": If a developer joining two years from now will look at this part of the system and say, "Why on earth is it built this way?", that is a decision that requires an ADR.
Phase 2: The Drafting and Review Period
ADRs should be treated like pull requests (PRs). They should live in the same repository as the code. This proximity is critical; it keeps the "why" and the "how" in the same mental space. During the drafting phase, the author should solicit feedback from stakeholders. This is not just about getting approval; it is about building consensus. If a senior engineer objects, they should be encouraged to contribute to the "Alternatives Considered" section of the ADR, turning a potential conflict into a productive exploration of trade-offs.
Phase 3: The Formal "Acceptance"
Once the feedback cycle concludes, the status is changed to "Accepted." This acts as a formal record of the team's commitment. It does not mean the decision is permanent—technology evolves—but it does mean that any future reversal must be treated as a conscious, documented choice.
Table 1: ADR Status Lifecycle and Implications
Status | Definition | Team Action Required |
Proposed | The decision is under active discussion and review. | Stakeholders provide feedback; evaluate alternatives. |
Accepted | The decision is finalized and implementation begins. | Engineering team executes; update system documentation. |
Superseded | The decision is no longer valid due to a new ADR. | Retire old components; refactor based on the new ADR. |
Deprecated | The decision is no longer relevant; functionality removed. | Clean up codebases; remove references to the decision. |
Cultivating an ADR-First Engineering Culture
The technical implementation of ADRs (Markdown files in a /docs/adr folder) is the easy part. The difficult part is fostering the cultural discipline required to maintain it.
1. The "No Document, No Decision" Policy
To gain traction, leadership must signal that unrecorded architectural shifts are effectively "hidden" or "unauthorized." If a team makes a major change without an ADR, it should be flagged during peer reviews. This sounds draconian, but in practice, it prevents the creeping chaos of "hidden architecture"—where key system components are changed based on gut feelings or unvetted tribal knowledge.
2. Living Documentation
ADRs are not meant to be static artifacts. They are "living" documents. If an ADR is superseded, the original document must be updated with a link to the new ADR. This creates a chain of custody for architectural evolution. When a new engineer joins the team, they can trace the lineage of the system, seeing how the architecture has evolved from Version 1.0 to the current state.
3. Integrating with the PR Process
The most effective way to ensure ADRs are read is to mandate their inclusion in the Definition of Done (DoD). If a PR introduces a major architectural change, the PR description should contain a link to the corresponding ADR. This serves two purposes: it forces the author to justify their change, and it forces the reviewer to understand the context of the change before approving the code.
The Strategic Value of Trade-off Analysis
The most critical section of any ADR is the "Consequences" section. This is where you document the inevitable pain points. A decision is rarely "good" or "bad"; it is merely optimized for certain pressures (speed of delivery, scalability, developer ergonomics) at the expense of others.
When you force a team to articulate these trade-offs, you stop them from dreaming of the "perfect" solution and ground them in reality. A well-written ADR might say: "We chose to use an Event-Driven Architecture. The consequence is that we gain massive scalability and decoupling, but we lose the simplicity of synchronous request/response and introduce significant operational complexity in debugging asynchronous event chains."
Table 2: Comparative Analysis of Architectural Decision Approaches
Approach | Documentation Method | Knowledge Retention | Speed of Decision |
Tribal Knowledge | None (oral tradition) | Poor; lost when engineers leave. | Extremely Fast |
Wiki/Confluence | Centralized, decoupled from code | Medium; often becomes outdated. | Fast |
ADR (Git-based) | Distributed, in-repo | High; version-controlled with code. | Moderate (requires review) |
Design Docs | Heavy, long-form specs | Very High (for specific projects) | Slow (high friction) |
Overcoming the Common Pitfalls of ADR Implementation
Even with the best intentions, ADR processes often fail. Recognizing these patterns is the first step in avoiding them.
The "Write-Only" ADR Syndrome
This happens when teams write ADRs just to check a box, but never refer back to them. To combat this, make ADRs the source of truth for onboarding. Create a "Reading List" for new hires that consists of the top 10 most critical ADRs that define the current state of the system. If they aren't worth reading, they aren't worth writing.
The Analysis-Paralysis Loop
Some teams become so obsessed with documentation that they document every decision. This creates "documentation bloat." Only document decisions that are difficult to reverse. If the decision is easily reversible (e.g., changing a CSS class, modifying a internal utility function), skip the ADR. Save the process for decisions that are costly to change—what we call "architectural gravity."
The "Shadow" Decision Maker
If the ADR process becomes a tool for middle management to micromanage developers, it will fail. ADRs must remain an engineer-led activity. The role of the lead architect should be to facilitate, not dictate. If a junior developer proposes an ADR that differs from the lead's preference, use that as a pedagogical moment to compare trade-offs, not a chance to exercise authority.
Advanced ADR Strategies: Scaling for Large Organizations
As organizations grow, the sheer volume of ADRs can become overwhelming. When you have hundreds of microservices, each with their own ADR repository, how do you maintain system-wide coherence?
The "ADR Hierarchy"
For large organizations, consider an ADR hierarchy. Use "Global ADRs" for cross-cutting concerns (e.g., "Standardizing on a CI/CD pipeline," "Adopting a cloud-provider strategy") and "Local ADRs" for service-specific concerns. Global ADRs should be reviewed by an architecture guild or steering committee, while Local ADRs are managed by the service-level teams.
Linking to the Codebase
Modern tools allow you to link directly from an ADR to the specific lines of code that implement the decision. This is highly effective. By embedding a link to the ADR in the code header and a link to the code in the ADR, you create a bidirectional "digital thread." This makes the code readable to those who need to understand the intent and makes the documentation verifiable by those who want to see how the decision was manifest.
The Psychological Benefit: Reducing Cognitive Load
There is a profound psychological benefit to a well-run ADR process that is often overlooked: it reduces anxiety. When an engineer knows exactly why a system is built a certain way—and they know that this decision was made by a team, not by a single mistake—they feel empowered to work within that architecture. It transforms the system from a "black box" that they fear "breaking" into a set of documented constraints that they can navigate with confidence.
When we document our decisions, we are essentially telling our future selves, "We were thinking about you. We knew that this would be hard. Here is what we knew, and here is why we chose the path we did." This empathy—expressed through documentation—is the foundation of long-term sustainable software engineering.
Measuring the Success of the ADR Process
How do you know if your ADR process is actually working? You shouldn't measure success by the number of ADRs written. A high number could just mean you have a lot of bureaucratic overhead. Instead, look at these qualitative metrics:
Reduced "Why" Questions: In team meetings, how often do you hear, "Why are we doing it this way?" If this question is becoming less frequent, your ADRs are doing their job.
Faster Onboarding: Track the time it takes for a new hire to become productive. If they can get up to speed by reading the architecture history, your process is a success.
Improved Decision Quality: Are the same mistakes being repeated? If you find yourself having the same argument every six months, your ADRs are not being referenced effectively, or they are not capturing the nuance of the trade-offs.
The Future of Architectural Decision Records
As we move toward more automated systems, the ADR process will likely evolve. We are seeing the rise of AI-assisted ADR generation, where LLMs summarize discussion threads from Slack or Jira into the standard ADR format. This reduces the friction of writing and encourages more teams to adopt the practice.
However, the core principle will always remain human-centric. The ADR is not about the text; it is about the agreement. It is about the act of standing together in a room (virtual or physical) and saying, "We recognize the complexity, we acknowledge the trade-offs, and this is the path we have chosen together."
Building a Legacy of Conscious Design
The ultimate goal of running an architecture decision process is to move from accidental architecture to conscious architecture. Most legacy systems are not designed; they "happen" over time as a series of disconnected, unrecorded, and often regretted choices. By implementing a rigorous, team-owned ADR process, you are actively choosing to break that cycle.
You are ensuring that your architecture is not a reflection of the team's stress, fatigue, or lack of time, but rather a reflection of the team's best, most considered judgment. It is a commitment to professional excellence. Every decision recorded is a lesson learned. Every consequence documented is a risk mitigated.
By adopting the ADR process, you are effectively paying down the most dangerous type of technical debt: the debt of ignorance. You are building an environment where knowledge is shared, decisions are transparent, and the team moves forward with the collective wisdom of every architect who came before them. This is how you build systems that last. This is how you build systems that matter.
In the high-stakes, fast-moving landscape of modern software engineering, the biggest bottleneck is rarely a lack of coding talent or compute power. It is, almost invariably, a lack of shared context. When a team arrives at a complex crossroad—deciding between a monolithic architecture and microservices, selecting a new database vendor, or standardizing on an authentication protocol—the decision itself is only half the battle. The true challenge lies in the "long tail" of that decision: understanding why it was made, what alternatives were considered, and what the long-term trade-offs actually are. Without this, institutional memory evaporates, teams re-litigate settled debates, and technical debt accumulates in the shadows of "mystery code."
The Architecture Decision Record (ADR) has emerged as the industry-standard antidote to this chronic erosion of context. An ADR is not just a document; it is a fundamental shift in engineering culture. It moves architecture from the realm of the "lone genius" or the "ivory tower" into the realm of observable, communal, and iterative craftsmanship.
The Anatomy of an Architecture Decision
Before implementing the process, we must understand what constitutes an ADR. An ADR is a short, text-based document that captures a significant architectural decision—one that impacts the system's structure, performance, maintainability, or cost. It is not intended to document every minor implementation detail. If you find yourself writing an ADR for a refactor that only affects a single function, you are likely over-engineering the documentation process.
A robust ADR should follow a consistent template, ensuring that every record is searchable, readable, and structured for longevity. While variations exist, the Michael Nygard-inspired structure remains the gold standard:
Title: A clear, imperative headline (e.g., "ADR-001: Use PostgreSQL as the Primary Datastore").
Status: The current state of the decision (e.g., Proposed, Accepted, Deprecated, Superseded).
Context: The forces at play. What is the problem? What are the constraints? Why does this decision matter right now?
Decision: The path chosen, stated clearly and concisely.
Consequences: The good, the bad, and the ugly. Every architecture decision is a set of trade-offs. If your ADR claims "no downsides," your ADR is incorrect.
Establishing the ADR Lifecycle
To run an ADR process effectively, you cannot treat it as an administrative chore. It must be woven into the fabric of your development lifecycle. Here is how to institutionalize the practice for long-term success.
Phase 1: The Trigger Mechanism
The process begins when an engineer or architect identifies a "significant" decision. A rule of thumb for significance is the "Two-Year Rule": If a developer joining two years from now will look at this part of the system and say, "Why on earth is it built this way?", that is a decision that requires an ADR.
Phase 2: The Drafting and Review Period
ADRs should be treated like pull requests (PRs). They should live in the same repository as the code. This proximity is critical; it keeps the "why" and the "how" in the same mental space. During the drafting phase, the author should solicit feedback from stakeholders. This is not just about getting approval; it is about building consensus. If a senior engineer objects, they should be encouraged to contribute to the "Alternatives Considered" section of the ADR, turning a potential conflict into a productive exploration of trade-offs.
Phase 3: The Formal "Acceptance"
Once the feedback cycle concludes, the status is changed to "Accepted." This acts as a formal record of the team's commitment. It does not mean the decision is permanent—technology evolves—but it does mean that any future reversal must be treated as a conscious, documented choice.
Table 1: ADR Status Lifecycle and Implications
Status | Definition | Team Action Required |
Proposed | The decision is under active discussion and review. | Stakeholders provide feedback; evaluate alternatives. |
Accepted | The decision is finalized and implementation begins. | Engineering team executes; update system documentation. |
Superseded | The decision is no longer valid due to a new ADR. | Retire old components; refactor based on the new ADR. |
Deprecated | The decision is no longer relevant; functionality removed. | Clean up codebases; remove references to the decision. |
Cultivating an ADR-First Engineering Culture
The technical implementation of ADRs (Markdown files in a /docs/adr folder) is the easy part. The difficult part is fostering the cultural discipline required to maintain it.
1. The "No Document, No Decision" Policy
To gain traction, leadership must signal that unrecorded architectural shifts are effectively "hidden" or "unauthorized." If a team makes a major change without an ADR, it should be flagged during peer reviews. This sounds draconian, but in practice, it prevents the creeping chaos of "hidden architecture"—where key system components are changed based on gut feelings or unvetted tribal knowledge.
2. Living Documentation
ADRs are not meant to be static artifacts. They are "living" documents. If an ADR is superseded, the original document must be updated with a link to the new ADR. This creates a chain of custody for architectural evolution. When a new engineer joins the team, they can trace the lineage of the system, seeing how the architecture has evolved from Version 1.0 to the current state.
3. Integrating with the PR Process
The most effective way to ensure ADRs are read is to mandate their inclusion in the Definition of Done (DoD). If a PR introduces a major architectural change, the PR description should contain a link to the corresponding ADR. This serves two purposes: it forces the author to justify their change, and it forces the reviewer to understand the context of the change before approving the code.
The Strategic Value of Trade-off Analysis
The most critical section of any ADR is the "Consequences" section. This is where you document the inevitable pain points. A decision is rarely "good" or "bad"; it is merely optimized for certain pressures (speed of delivery, scalability, developer ergonomics) at the expense of others.
When you force a team to articulate these trade-offs, you stop them from dreaming of the "perfect" solution and ground them in reality. A well-written ADR might say: "We chose to use an Event-Driven Architecture. The consequence is that we gain massive scalability and decoupling, but we lose the simplicity of synchronous request/response and introduce significant operational complexity in debugging asynchronous event chains."
Table 2: Comparative Analysis of Architectural Decision Approaches
Approach | Documentation Method | Knowledge Retention | Speed of Decision |
Tribal Knowledge | None (oral tradition) | Poor; lost when engineers leave. | Extremely Fast |
Wiki/Confluence | Centralized, decoupled from code | Medium; often becomes outdated. | Fast |
ADR (Git-based) | Distributed, in-repo | High; version-controlled with code. | Moderate (requires review) |
Design Docs | Heavy, long-form specs | Very High (for specific projects) | Slow (high friction) |
Overcoming the Common Pitfalls of ADR Implementation
Even with the best intentions, ADR processes often fail. Recognizing these patterns is the first step in avoiding them.
The "Write-Only" ADR Syndrome
This happens when teams write ADRs just to check a box, but never refer back to them. To combat this, make ADRs the source of truth for onboarding. Create a "Reading List" for new hires that consists of the top 10 most critical ADRs that define the current state of the system. If they aren't worth reading, they aren't worth writing.
The Analysis-Paralysis Loop
Some teams become so obsessed with documentation that they document every decision. This creates "documentation bloat." Only document decisions that are difficult to reverse. If the decision is easily reversible (e.g., changing a CSS class, modifying a internal utility function), skip the ADR. Save the process for decisions that are costly to change—what we call "architectural gravity."
The "Shadow" Decision Maker
If the ADR process becomes a tool for middle management to micromanage developers, it will fail. ADRs must remain an engineer-led activity. The role of the lead architect should be to facilitate, not dictate. If a junior developer proposes an ADR that differs from the lead's preference, use that as a pedagogical moment to compare trade-offs, not a chance to exercise authority.
Advanced ADR Strategies: Scaling for Large Organizations
As organizations grow, the sheer volume of ADRs can become overwhelming. When you have hundreds of microservices, each with their own ADR repository, how do you maintain system-wide coherence?
The "ADR Hierarchy"
For large organizations, consider an ADR hierarchy. Use "Global ADRs" for cross-cutting concerns (e.g., "Standardizing on a CI/CD pipeline," "Adopting a cloud-provider strategy") and "Local ADRs" for service-specific concerns. Global ADRs should be reviewed by an architecture guild or steering committee, while Local ADRs are managed by the service-level teams.
Linking to the Codebase
Modern tools allow you to link directly from an ADR to the specific lines of code that implement the decision. This is highly effective. By embedding a link to the ADR in the code header and a link to the code in the ADR, you create a bidirectional "digital thread." This makes the code readable to those who need to understand the intent and makes the documentation verifiable by those who want to see how the decision was manifest.
The Psychological Benefit: Reducing Cognitive Load
There is a profound psychological benefit to a well-run ADR process that is often overlooked: it reduces anxiety. When an engineer knows exactly why a system is built a certain way—and they know that this decision was made by a team, not by a single mistake—they feel empowered to work within that architecture. It transforms the system from a "black box" that they fear "breaking" into a set of documented constraints that they can navigate with confidence.
When we document our decisions, we are essentially telling our future selves, "We were thinking about you. We knew that this would be hard. Here is what we knew, and here is why we chose the path we did." This empathy—expressed through documentation—is the foundation of long-term sustainable software engineering.
Measuring the Success of the ADR Process
How do you know if your ADR process is actually working? You shouldn't measure success by the number of ADRs written. A high number could just mean you have a lot of bureaucratic overhead. Instead, look at these qualitative metrics:
Reduced "Why" Questions: In team meetings, how often do you hear, "Why are we doing it this way?" If this question is becoming less frequent, your ADRs are doing their job.
Faster Onboarding: Track the time it takes for a new hire to become productive. If they can get up to speed by reading the architecture history, your process is a success.
Improved Decision Quality: Are the same mistakes being repeated? If you find yourself having the same argument every six months, your ADRs are not being referenced effectively, or they are not capturing the nuance of the trade-offs.
The Future of Architectural Decision Records
As we move toward more automated systems, the ADR process will likely evolve. We are seeing the rise of AI-assisted ADR generation, where LLMs summarize discussion threads from Slack or Jira into the standard ADR format. This reduces the friction of writing and encourages more teams to adopt the practice.
However, the core principle will always remain human-centric. The ADR is not about the text; it is about the agreement. It is about the act of standing together in a room (virtual or physical) and saying, "We recognize the complexity, we acknowledge the trade-offs, and this is the path we have chosen together."
Building a Legacy of Conscious Design
The ultimate goal of running an architecture decision process is to move from accidental architecture to conscious architecture. Most legacy systems are not designed; they "happen" over time as a series of disconnected, unrecorded, and often regretted choices. By implementing a rigorous, team-owned ADR process, you are actively choosing to break that cycle.
You are ensuring that your architecture is not a reflection of the team's stress, fatigue, or lack of time, but rather a reflection of the team's best, most considered judgment. It is a commitment to professional excellence. Every decision recorded is a lesson learned. Every consequence documented is a risk mitigated.
By adopting the ADR process, you are effectively paying down the most dangerous type of technical debt: the debt of ignorance. You are building an environment where knowledge is shared, decisions are transparent, and the team moves forward with the collective wisdom of every architect who came before them. This is how you build systems that last. This is how you build systems that matter.
FAQs
How do I decide if a decision is "significant" enough for an ADR?
Ask yourself: "If a new developer joins the team in six months, will they understand why we chose this specific path without this document?" If the decision affects system topology, core libraries, or data persistence strategy, it is likely significant. If it’s a minor implementation detail that can be safely refactored in an hour, skip it.
Should ADRs be written before or after the code is implemented?
Ideally, ADRs should be written before the code is written, acting as a design document. This allows the team to critique the approach before significant time is invested. However, if a critical decision was made under pressure, writing it "after the fact" is still better than having no record at all.
What if the team disagrees on the decision?
ADRs are an excellent tool for productive conflict. By forcing stakeholders to articulate their reasons and list the trade-offs, you move the conversation from "I like this" to "These are the consequences." If consensus isn't reached, the ADR process highlights the need for a formal architecture review meeting.
How do I handle old decisions that are no longer relevant?
Never delete an ADR. Instead, create a new one that explicitly states it "Supersedes" the old one. Link the new ADR to the old one. This preserves the historical context, which is often as important as the current state, as it explains the evolution of your system.
How much time should we spend writing these?
An ADR should take no more than 30–60 minutes to write. If it takes longer, you are likely trying to document too much detail. Focus on the forces (constraints) and the consequences (trade-offs). It is meant to be a summary, not a deep-dive technical specification.
Do we need specialized software to track ADRs?
Absolutely not. The best ADRs are stored as plain text or Markdown files directly in your git repository. This keeps the documentation as close to the code as possible and allows it to be reviewed via standard Pull Request workflows. Using complex project management tools often creates a "documentation silo" that nobody visits.
How do I encourage my team to actually read and use them?
Integration is key. Include a link to the relevant ADR in your PR descriptions. When a new person joins the team, make reviewing the "decision log" part of their onboarding checklist. When the team sees that ADRs actually save them from repeating past mistakes, they will naturally become an advocate for the process.
insights
Explore more on AI, Design and Growth

SEO
Google AI & Local SEO: Rank in Both (2026 Guide)
Learn how to optimize content for Google AI search and local SEO simultaneously to rank in AI Overviews, maps, and organic search results.

SEO
Semantic Content Clusters for SEO & AEO (Templates)
Learn how to build semantic content clusters for SEO and AEO. Includes practical templates, internal linking structures, and examples for ranking in AI search.

SEO
How Google AI Search Works: RankBrain to Gemini (2026)
Discover how Google’s AI search evolved from RankBrain to Gemini and what it means for SEO, AI search results, and ranking strategies in 2026.

SEO
Google AI & Local SEO: Rank in Both (2026 Guide)
Learn how to optimize content for Google AI search and local SEO simultaneously to rank in AI Overviews, maps, and organic search results.

SEO
Semantic Content Clusters for SEO & AEO (Templates)
Learn how to build semantic content clusters for SEO and AEO. Includes practical templates, internal linking structures, and examples for ranking in AI search.
get in touch
Ready to Grow From Day One?
Strategy, execution, and digital experiences designed to move together. Fill out the form below and our team will contact you shortly.
get in touch
Ready to Grow From Day One?
Strategy, execution, and digital experiences designed to move together. Fill out the form below and our team will contact you shortly.
get in touch
Ready to Grow From Day One?
Strategy, execution, and digital experiences designed to move together. Fill out the form below and our team will contact you shortly.
Services
We'd love to hear from you.
Tell us what you're building and where you need support.
© 2026 projectsupply AI, Data and Digital Engineering
Company. Pune, India. All rights reserved.
Part of Tangle
Services
We'd love to hear from you.
Tell us what you're building and where you need support.
© 2026 projectsupply AI, Data and Digital Engineering
Company. Pune, India. All rights reserved.
Part of Tangle
Services
We'd love to hear from you.
Tell us what you're building and where you need support.
© 2026 projectsupply AI, Data and Digital Engineering
Company. Pune, India. All rights reserved.
Part of Tangle
