# Gedächtnis (Memory)

> The platform's versioned fact memory, permission-checked on every access.

## What it does {#was}

The platform's memory keeps facts as versioned rows over PostgreSQL 18: every row carries both time axes — since when a statement holds, and when we recorded it — plus its provenance and its retention date. A correction therefore changes nothing; it is a new row that names what it supersedes, and the old one stays and stays readable. Every row is sealed (XChaCha20-Poly1305, a freshly drawn nonce per row) under a per-subject key — destroying a key is the deletion itself, not a note about one. An owner has five acts over their memory: inspect, export, import, delete, and promote into the organisation — and each passes an authorization decision before it touches a row. The export follows the association's own profile over Portable Agent Memory, so a person can actually take their memory with them. What the core does not do: it hangs on no served surface — neither the gateway nor the chat nor the A2A door knows it, and an anonymous session has no subject to write under at all.


## Run it yourself {#betreiben}

**Not yet** — Internal by decision: an anonymous public surface must not read the association's memory; no delivered service hangs on the core. The code can be inspected, operation is not intended.


## Test {#testen}

```bash
cargo test --locked --manifest-path memory/store/Cargo.toml
```
- Runs without network: every answer comes from the repository, the result is the same every run.

## Call {#ansteuern}

This module has no interface to call: it is a tool, a library or a document. What one does with it is above.

## Contribute {#mitwirken}

Changes go through merge requests and the same gates as the association's own: formatting, Clippy without warnings, tests, seal and drift checks. Security reports, in confidence, to admin@openhelvetia.swiss.

The base tier costs nothing; what the operation lives on is under [About us, Financing](../../../about/financing/index.html).

## Module card {#steckbrief}

State, evidence, download and dependencies are on the infrastructure page: [Gedächtnis (Memory)](../../../directory/building-blocks/memory/index.html).

---

Source: generated from public/web/modules.json
