githubEdit

Architecture Decision Records

This directory contains Architecture Decision Records (ADRs) for the spuff project.

What is an ADR?

An ADR is a document that captures an important architectural decision made along with its context and consequences. ADRs help:

  • Document the reasoning behind decisions

  • Communicate decisions to the team

  • Onboard new contributors by explaining "why"

  • Revisit decisions when context changes

ADR Index

ID
Title
Status
Date

Use cloud-init for VM bootstrap

Accepted

2025-01

Two-phase bootstrap (sync + async)

Accepted

2025-01

SQLite for local state management

Accepted

2025-01

SSH agent forwarding for git access

Accepted

2025-01

Provider trait for cloud abstraction

Accepted

2025-01

Project configuration (spuff.yaml)

Accepted

2025-01

Status Values

  • Proposed - Under discussion

  • Accepted - Decision made, implementing

  • Deprecated - Superseded by another ADR

  • Superseded - Replaced by a newer ADR

Creating a New ADR

  1. Copy the template:

  2. Fill in the template with:

    • Context: What is the situation?

    • Decision: What did we decide?

    • Consequences: What are the results?

  3. Submit a PR for review

  4. Update this README with the new ADR

Template

See template.md for the ADR template.

References

Last updated

Was this helpful?