Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Architecture Decision Records

Append-only log of significant decisions. New ADRs are added with the next number. Past ADRs are not edited; if a decision is reversed, write a new ADR that supersedes it.

Index

# Title Status
0001 Language: Rust Accepted
0002 Async runtime: tokio Accepted
0003 Latency histogram: hdrhistogram Accepted
0004 Strategy: head-on competition with reaatech/mcp-load-test Accepted
0005 Serve mode: expose load tester as MCP server over stdio Accepted
0006 Zero-copy protocol types on the request hot path Accepted
0007 Transport security posture: redirects, frame caps, path validation Accepted
0008 Release profile: panic = "abort" Accepted
0009 Regression threshold defaults: 10% p99 / 0.5pp error rate Accepted
0010 Opt-in strict MCP schema validation Accepted
0011 Supply-chain policy: CDLA-Permissive-2.0 + triaged advisory ignores Accepted
0012 SSRF host-allowlist + always-on private-IP-literal block Accepted
0013 SpawnOptions API for stdio stderr capture Accepted
0014 Error hints, --explain, and doctor (AI-friendliness §21) Accepted
0015 Defer crates.io; git-install + GitHub Release binaries (amends 0004) Accepted

When to write a new ADR

  • Choosing between alternative dependencies/frameworks
  • Establishing a project-wide convention
  • Reversing a previous decision
  • Anything you'd otherwise re-litigate in PR review

Template

# NNNN. Short title

Date: YYYY-MM-DD
Status: Proposed | Accepted | Superseded by [NNNN](NNNN-...)

## Context

What's the situation? What's the question we're answering?

## Decision

The choice we made.

## Alternatives considered

What else we looked at and why we didn't pick them.

## Consequences

What this commits us to. What it makes easy / hard. Open questions.