Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions docs/adr/01-cryptographic-libraries.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Cryptographic libraries

## Decision

This project tries to avoid implementing cryptographic primitives, favouring the reuse of existing, well-tested libraries.

## Rationale

Cryptography is hard to get right and making a mistake when implementing a cryptographic primitive will have serious implications for the security of protocols that build upon those primitives.
9 changes: 9 additions & 0 deletions docs/adr/02-test-coverage.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Test coverage

## Decision

This project will aim for >70% test coverage overall

## Rationale

A high degree of test coverage leads to more robust code and given our use of AI assisted programming helps to reduce the effect of hallucination.
12 changes: 12 additions & 0 deletions docs/adr/03-any.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# any instead of interface{}

## Decision

We use the newer 'any' instead of 'interface{}' to represent a value that can have any type.

## Rationale

- Functionality: Both any and interface{} can hold values of any type.
- Interchangeability: They can be used interchangeably in code.
- Readability: any is generally considered more readable, especially for newcomers to Go.
- Compiler treatment: The compiler treats them identically.
9 changes: 9 additions & 0 deletions docs/adr/04-ttlcache.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Caching

## Decision

We use the ttlcache library to provide caching across the project

## Rationale

A single implementation of a central concept serves to simplify the code and make caching behaviour more consistent
5 changes: 5 additions & 0 deletions docs/adr/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# ADR

This directory contains the architectural decision records for the vc project

About ADRs: https://github.com/joelparkerhenderson/architecture-decision-record?tab=readme-ov-file#what-is-an-architecture-decision-record
Loading